# make the Distributed Checksum Clearinghouse prototype home directory files # Copyright (c) 2008 by Rhyolite Software, LLC # # This agreement is not applicable to any entity which sells anti-spam # solutions to others or provides an anti-spam solution as part of a # security solution sold to other entities, or to a private network # which employs the DCC or uses data provided by operation of the DCC # but does not provide corresponding data to other users. # # Permission to use, copy, modify, and distribute this software without # changes for any purpose with or without fee is hereby granted, provided # that the above copyright notice and this permission notice appear in all # copies and any distributed versions or copies are either unchanged # or not called anything similar to "DCC" or "Distributed Checksum # Clearinghouse". # # Parties not eligible to receive a license under this agreement can # obtain a commercial license to use DCC by contacting Rhyolite Software # at sales@rhyolite.com. # # A commercial license would be for Distributed Checksum and Reputation # Clearinghouse software. That software includes additional features. This # free license for Distributed ChecksumClearinghouse Software does not in any # way grant permision to use Distributed Checksum and Reputation Clearinghouse # software # # THE SOFTWARE IS PROVIDED "AS IS" AND RHYOLITE SOFTWARE, LLC DISCLAIMS ALL # WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL RHYOLITE SOFTWARE, LLC # BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES # OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, # ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS # SOFTWARE. # Rhyolite Software DCC 1.3.99-1.57 $Revision$ # Generated automatically from Makefile.in by configure. DEPTH =.. .include .include "$(DEPTH)/Makefile.inc2" HINST =$(INSTALL) -c $(SET_DCCOWN) HD =$(DCC_HOMEDIR) MAP =$(HD)/map MAPTXT =$(HD)/map.txt IDS =$(HD)/ids CDCC =$(DEPTH)/cdcc/cdcc # this should not be the ./configure name UPFILE =.updatedcc_pfile SIMPLE =flod grey_flod whitelist grey_whitelist whiteclnt whitecommon ALL =$(SIMPLE) ids map map.txt dcc_conf all: @: # /dev/random is overkill for the security needed here, but use it if it exists RND=(ps; dd if=/dev/random count=1 2>&1) | cksum | tr ' ' xy install: if test ! -d $(HD); then\ $(HINST) -m 755 -d $(HD); fi if test ! -d $(HD)/log; then\ $(HINST) -m 710 -d $(HD)/log; fi if test -z '' -a -s $(HD)/dcc_conf; then\ sh make-dcc_conf -h $(HD) -s '';\ else\ $(HINST) -m 644 dcc_conf $(HD)/dcc_conf;\ fi for nm in $(SIMPLE); do\ if test -n '' -o ! -f $(HD)/$$nm; then\ $(HINST) -m 644 $$nm $(HD)/$${nm}; fi; done if test -s $(UPFILE); then\ $(HINST) -m 600 $(UPFILE) $(HD)/$(UPFILE);\ set +e; chown dcc $(HD)/$(UPFILE); fi if test -n '' || test ! -f $(HD)/ids -a ! -f $(HD)/map\ -a ! -f $(HD)/map.txt; then\ umask 077; PASSWD=`$(RND)`;\ sed -e "s/secret1/$$PASSWD/" -e "s/secret2/`$(RND)`/" ids >$(IDS);\ rm -f $(MAP) || true; sed -e "s/secret1/$$PASSWD/" map.txt |\ $(CDCC) -qh$(HD) "new map $(MAP); load -";\ sh fix-map -c $(CDCC) -m $(MAP) -h $(HD);\ echo '# map.txt is merely the output of `cdcc info`' >$(MAPTXT);\ $(CDCC) -qh$(HD) "file $(MAP); info" >>$(MAPTXT);\ set +e; chown dcc $(MAPTXT) $(MAP) $(IDS);\ else\ sh fix-map -c $(CDCC) -m $(MAP) -h $(HD);\ fi if test -n ''; then\ for nm in $(ALL); do\ if test ! -f $(HD)/$$nm; then\ cp -p $(HD)/$${nm} $(HD)/$${nm}; fi; done; fi deinstall: for NM in dcc_conf flod grey_flod whiteclnt whitecommon\ whitelist grey_whitelist; do\ if test ! -f $(HD)/$$NM; then continue; fi;\ if test `diff $$NM $(HD)/$$NM\ | sed -e '/^---$$/d' -e '/^[^<>]/d'\ -e '/^[<>][ ]*#/d' -e '/^[<>][ ]*$$/d'\ | wc -l` -eq 0; then rm $(HD)/$$NM; fi; done; -rm -f $(HD)/dcc_conf-new -if test -d $(HD); then\ find $(HD) -name '*.dcc[xw]' | /usr/bin/xargs rm -f ;\ rmdir $(HD)/log;\ fi