diff options
author | pav <pav@FreeBSD.org> | 2008-03-23 19:08:04 +0800 |
---|---|---|
committer | pav <pav@FreeBSD.org> | 2008-03-23 19:08:04 +0800 |
commit | a019873646f1ce62f504138ea5172bb1d5ee2258 (patch) | |
tree | 3aec5c0287deb74722ecd555bea603075fffc926 /mail | |
parent | b950417bd934035980462fd09702ef43a01ba606 (diff) | |
download | freebsd-ports-gnome-a019873646f1ce62f504138ea5172bb1d5ee2258.tar.gz freebsd-ports-gnome-a019873646f1ce62f504138ea5172bb1d5ee2258.tar.zst freebsd-ports-gnome-a019873646f1ce62f504138ea5172bb1d5ee2258.zip |
- Update to 1.3.86
- Overhaul the port a great deal
- Take maintainership
PR: ports/121840
Submitted by: Craig Green <cgreen@sentex.net>
Diffstat (limited to 'mail')
-rw-r--r-- | mail/dcc-dccd/Makefile | 163 | ||||
-rw-r--r-- | mail/dcc-dccd/distinfo | 6 | ||||
-rw-r--r-- | mail/dcc-dccd/files/dcc-start.sh.in | 57 | ||||
-rw-r--r-- | mail/dcc-dccd/files/dccd.sh.in | 72 | ||||
-rw-r--r-- | mail/dcc-dccd/files/dccgrey.sh.in | 72 | ||||
-rw-r--r-- | mail/dcc-dccd/files/dccifd.sh.in | 63 | ||||
-rw-r--r-- | mail/dcc-dccd/files/dccm.sh.in | 63 | ||||
-rw-r--r-- | mail/dcc-dccd/files/patch-configure | 25 | ||||
-rw-r--r-- | mail/dcc-dccd/files/patch-homedir::Makefile.in | 33 | ||||
-rw-r--r-- | mail/dcc-dccd/files/pkg-message.in | 47 | ||||
-rw-r--r-- | mail/dcc-dccd/pkg-descr | 11 | ||||
-rw-r--r-- | mail/dcc-dccd/pkg-plist | 83 |
12 files changed, 501 insertions, 194 deletions
diff --git a/mail/dcc-dccd/Makefile b/mail/dcc-dccd/Makefile index b6a108522cdb..96501e5f7711 100644 --- a/mail/dcc-dccd/Makefile +++ b/mail/dcc-dccd/Makefile @@ -6,15 +6,17 @@ # PORTNAME= dcc-dccd -PORTVERSION= 1.3.50 -PORTREVISION= 1 +PORTVERSION= 1.3.86 CATEGORIES= mail -MASTER_SITES= http://www.rhyolite.com/anti-spam/dcc/source/ \ - http://www.wa.apana.org.au/~dean/sources/ +MASTER_SITES= http://www.dcc-servers.net/dcc/source/old/ \ + http://www.rhyolite.com/anti-spam/dcc/source/old/ \ + ftp://ftp.dcc-servers.net/src/dcc/old/ \ + ftp://ftp.rhyolite.com/src/dcc/old/ +DISTNAME= dcc-1.3.86 EXTRACT_SUFX= .tar.Z -MAINTAINER= ports@FreeBSD.org -COMMENT= Distributed Checksum Clearinghouse procmail, sendmail support +MAINTAINER= cgreen@sentex.net +COMMENT= Distributed Checksum Clearinghouse bulk email detector HAS_CONFIGURE= yes MANCOMPRESSED= yes @@ -24,45 +26,86 @@ MAN8= cdcc.8 dbclean.8 dblist.8 dcc.8 dccd.8 dccifd.8 dccm.8 \ PKGINSTALL= ${WRKDIR}/pkg-install PKGDEINSTALL= ${WRKDIR}/pkg-deinstall -USE_RC_SUBR= dcc-start.sh +USE_RC_SUBR= # -# User for dcc files and SUID binaries +# ALT_HOME - DCC keeps its config files in its home direcotry but writes +# status and database files there as well. This latter point +# means that the FreeBSD default home directory for DCC, +# /usr/local/dcc, cannot be mounted read-only. +# +# DCC's default home dir is /var/dcc breaks FreeBSD hierarchy +# conventions, but allows for a read-only /usr. +# +# Setting ALT_HOME on will set DCC's home to /var/dcc, but +# keep its binaries in /usr/local/dcc/libexec. Since this +# also means DCC's config files will be in /var/dcc, for +# convenience a soft link from /usr/local/etc/dcc to /var/dcc +# may be created. +# +# Note also that dccifd's default socket location is DCC's +# home, so if /var/dcc is used for the home, then programs +# like SpamAssassin may need to be explicitly told where +# to find dccifd's socket. +# +OPTIONS= DCCIFD "DCC interface daemon (for SpamAssassin etc)" on \ + DCCM "DCC milter (for Sendmail only)" off \ + DCCD "DCC server" off \ + DCCGREY "DCC greylisting server" off \ + IPV6 "IPv6 support" on \ + ALT_HOME "DCC home in /var/dcc" off \ + PORTS_SENDMAIL "Use base Sendmail if off, ports if on" off + +## User for DCC files and SUID binaries # DCCUSER?= dcc DCCUID?= 112 DCCGROUP?= dcc DCCGID?= 112 +## Use the configure script to explicitly set the locations of all files, +## in case the standard locations have been locally overridden # -# Use configure script to set locations of all files. Use of -# sed scripting breaks things. -# - -CONFIGURE_ARGS= --homedir=${PREFIX}/dcc --bindir=${PREFIX}/bin --mandir=${MANPREFIX}/man --with-rundir=/var/run/dcc +CONFIGURE_ARGS= --with-uid=${DCCUSER} --bindir=${PREFIX}/bin --mandir=${MANPREFIX}/man --with-configsuffix=.sample .include <bsd.port.pre.mk> -.if !defined(WITH_SENDMAIL_BASE) && !defined(WITH_SENDMAIL_PORT) && !exists(${LOCALBASE}/lib/libmilter.a) -WITH_SENDMAIL_BASE=yes -.endif +SUB_FILES= pkg-message +SUB_LIST+= WRKSRC=${WRKSRC} -.if defined(WITH_SENDMAIL_BASE) -.if exists(/usr/lib/libmilter.a) -MILTERBASE= /usr -WITH_SENDMAIL= yes +## /var/dcc home support +# +.if defined(WITH_ALT_HOME) +CONFIGURE_ARGS+= --homedir=/var/dcc --libexecdir=${PREFIX}/dcc/libexec --with-cgibin=${PREFIX}/dcc/cgi-bin +SUB_LIST+= DCCHOME=/var/dcc +PLIST_SUB+= WITH_ALT_HOME="" .else -.if !defined(WITHOUT_SENDMAIL) -IGNORE= base system sendmail not found or too old, rebuild with WITH_SENDMAIL_PORT=yes or WITHOUT_SENDMAIL=yes +CONFIGURE_ARGS+= --homedir=${PREFIX}/dcc +SUB_LIST+= DCCHOME=${PREFIX}/dcc +PLIST_SUB+= WITH_ALT_HOME="@comment " +.endif + +## dccm milter support +# +.if defined(WITH_DCCM) + +.if !exists(/usr/lib/libmilter.a) && !exists(${LOCALBASE}/lib/libmilter.a) +IGNORE= neither base system nor Ports version of Sendmail installed, cannot build milter +.endif +.if defined(WITHOUT_PORTS_SENDMAIL) && !exists(/usr/lib/libmilter.a) +IGNORE= base system Sendmail not found or too old, rebuild with WITH_PORTS_SENDMAIL=yes or WITHOUT_DCCM=yes .endif +.if defined(WITH_PORTS_SENDMAIL) && !exists(${LOCALBASE}/lib/libmilter.a) +IGNORE= ports Sendmail not found, rebuild with WITHOUT_PORTS_SENDMAIL=yes or WITHOUT_DCCM=yes .endif + +.if defined(WITHOUT_PORTS_SENDMAIL) +MILTERBASE= /usr .else BUILD_DEPENDS+= ${LOCALBASE}/lib/libmilter.a:${PORTSDIR}/mail/sendmail MILTERBASE?= ${LOCALBASE} -WITH_SENDMAIL= yes .endif -.if !defined(WITHOUT_SENDMAIL) && defined(WITH_SENDMAIL) MILTERINC= ${MILTERBASE}/include MILTERLIB= ${MILTERBASE}/lib @@ -71,35 +114,71 @@ LDFLAGS+= -L${MILTERLIB} CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" CONFIGURE_ARGS+= --with-sendmail=${MILTERBASE} -PLIST_SUB+= WITH_SENDMAIL="" + +PLIST_SUB+= WITH_DCCM="" + +USE_RC_SUBR+= dccm.sh + .else CONFIGURE_ARGS+= --disable-dccm -PLIST_SUB+= WITH_SENDMAIL="@comment " +PLIST_SUB+= WITH_DCCM="@comment " .endif +## dccifd client interface daemon support +# .if defined(WITHOUT_DCCIFD) CONFIGURE_ARGS+= --disable-dccifd PLIST_SUB+= WITH_DCCIFD="@comment " .else PLIST_SUB+= WITH_DCCIFD="" +USE_RC_SUBR+= dccifd.sh .endif -CONFIGURE_ARGS+= --with-uid=${DCCUSER} +## dccd server support +# +.if defined(WITHOUT_DCCD) && defined(WITHOUT_DCCGREY) +CONFIGURE_ARGS+= --disable-server +PLIST_SUB+= WITH_DCCD="@comment " +.else +PLIST_SUB+= WITH_DCCD="" +.endif + +## IPV6 support +# +.if defined(WITHOUT_IPV6) +CONFIGURE_ARGS+= --disable-IPv6 +.endif +## Packing list and rcNG script fixups +# +.if defined(WITHOUT_DCCIFD) && defined(WITHOUT_DCCM) +PLIST_SUB+= WITH_IFD_MILT="@comment " +.else +PLIST_SUB+= WITH_IFD_MILT="" +.endif + +.if defined(WITH_DCCD) +USE_RC_SUBR+= dccd.sh +.endif + +.if defined(WITH_DCCGREY) +USE_RC_SUBR+= dccgrey.sh +PLIST_SUB+= WITH_DCCGREY="" +.else +PLIST_SUB+= WITH_DCCGREY="@comment " +.endif + +## Substitutions in pkg-install and pkg-deinstall +# SED_SCRIPT= -e 's|%%PREFIX%%|${PREFIX}|g' \ -e 's|%%DCCUSER%%|${DCCUSER}|g' -e 's|%%DCCUID%%|${DCCUID}|g' \ - -e 's|%%DCCGROUP%%|${DCCGROUP}|g' -e 's|%%DCCGID%%|${DCCGID}|g' + -e 's|%%DCCGROUP%%|${DCCGROUP}|g' -e 's|%%DCCGID%%|${DCCGID}|g' \ + -e 's|%%DCCHOME%%|${DCCHOME}|g' pre-everything:: @${ECHO_MSG} ' ' - @${ECHO_MSG} 'You can choose the sendmail to be used by specifying:' + @${ECHO_MSG} 'A description of ALT_HOME may be found in the port's Makefile.' @${ECHO_MSG} ' ' - @${ECHO_MSG} 'WITH_SENDMAIL_BASE=yes' - @${ECHO_MSG} 'or' - @${ECHO_MSG} 'WITH_SENDMAIL_PORT=yes' - @${ECHO_MSG} 'or' - @${ECHO_MSG} 'WITHOUT_SENDMAIL=yes' - @${ECHO_MSG} '' post-build: @${SED} ${SED_SCRIPT} ${PKGDIR}/pkg-install >${PKGINSTALL} @@ -109,4 +188,18 @@ pre-install: @${SETENV} PKG_PREFIX=${PREFIX} \ ${SH} ${PKGINSTALL} ${PREFIX} PRE-INSTALL +post-install: + +## Make certain DCC's config files are owned by DCC's user +# +.if defined(WITH_ALT_HOME) + @${CHOWN} ${DCCUSER} /var/dcc/* +.else + @${CHOWN} ${DCCUSER} ${PREFIX}/dcc/* +.endif + +## Print DCC installation notes and RESTRICTIONS file info +# + @${CAT} ${PKGMESSAGE} + .include <bsd.port.post.mk> diff --git a/mail/dcc-dccd/distinfo b/mail/dcc-dccd/distinfo index 11741c2c8875..e87278e548eb 100644 --- a/mail/dcc-dccd/distinfo +++ b/mail/dcc-dccd/distinfo @@ -1,3 +1,3 @@ -MD5 (dcc-dccd-1.3.50.tar.Z) = 4306df4a05d04f926995ddc0c1d480e1 -SHA256 (dcc-dccd-1.3.50.tar.Z) = 942c9be56f3ff765b524e6c49d85dd84aa4a22c1514afe096d34e246cbf6cc21 -SIZE (dcc-dccd-1.3.50.tar.Z) = 1448485 +MD5 (dcc-1.3.86.tar.Z) = 2d6c0ff3b1a7e56e95862a8a74c2d95c +SHA256 (dcc-1.3.86.tar.Z) = 019b1efd2ac373a982ef2913aaf3629137efcf6623c0664ceccdb14bda5f3441 +SIZE (dcc-1.3.86.tar.Z) = 1514689 diff --git a/mail/dcc-dccd/files/dcc-start.sh.in b/mail/dcc-dccd/files/dcc-start.sh.in deleted file mode 100644 index e97aaa40aa7f..000000000000 --- a/mail/dcc-dccd/files/dcc-start.sh.in +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh -# -# PROVIDE: dccifd -# REQUIRE: LOGIN -# BEFORE: mail -# KEYWORD: shutdown - -# -# Add the following lines to /etc/rc.conf to enable dccifd: -# -#dccifd_enable="YES" -# -# See dccifd(8) for flags -# - -. %%RC_SUBR%% - -name=dccifd -rcvar=`set_rcvar` - -load_rc_config $name - -# Set defaults -: ${dccifd_enable:="NO"} -: ${dccifd_flags=""} -: ${dccifd_home="%%PREFIX%%/dcc"} -: ${dccifd_conf="$dccifd_home/dcc_conf"} - - -pidfile=${dccifd_pidfile:-"/var/run/dcc/dccifd.pid"} -command="${dccifd_home}/libexec/start-dccifd" -procname="${dccifd_home}/libexec/dccifd" -required_dirs="$dccifd_home" -required_files="${dccifd_conf}" - -stop_postcmd="stop_postcmd" -start_precmd="start_precmd" - - -stop_postcmd() -{ - rm -f $pidfile -} - -start_precmd() -{ -X=`grep DCCIFD_ENABLE ${dccifd_conf}` -eval $X -if [ "$DCCIFD_ENABLE" != "on" ] -then - echo "Warning ${X} needs to be on in ${dccifd_conf}" - return 1 -fi -} - -run_rc_command "$1" - diff --git a/mail/dcc-dccd/files/dccd.sh.in b/mail/dcc-dccd/files/dccd.sh.in new file mode 100644 index 000000000000..edb06235129b --- /dev/null +++ b/mail/dcc-dccd/files/dccd.sh.in @@ -0,0 +1,72 @@ +#!/bin/sh +# +# PROVIDE: dccd +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf: +# +#dccd_enable="YES" +# +# and in %%DCCHOME%%/dcc_conf change: +# +#DCCD_ENABLE=off +# +# to: +# +#DCCD_ENABLE=on +# +# +# See %%DCCHOME%%/dcc_conf to configure startup options +# + +. %%RC_SUBR%% + +name=dccd +rcvar=`set_rcvar` + +load_rc_config $name + +# Set defaults +: ${dccd_enable:="NO"} +: ${dccd_home="%%DCCHOME%%"} +: ${dccd_libexec="%%PREFIX%%/dcc/libexec"} +: ${dccd_conf="$dccd_home/dcc_conf"} + + +procname="${dccd_libexec}/dccd" +required_dirs="${dccd_home} ${dccd_libexec}" +required_files="${dccd_conf} ${dccd_libexec}/rcDCC" + +start_cmd="start_dccd" +stop_cmd="stop_dccd" +start_precmd="start_precmd" + + +start_precmd() +{ +X=`grep ^DCCD_ENABLE ${dccd_conf}` +eval $X +if [ "$DCCD_ENABLE" != "on" ] +then + echo "Warning ${X} needs to be on in ${dccd_conf} to start the dccd server" + return 1 +fi +} + +start_dccd() +{ + echo Starting dccd. + ${dccd_libexec}/rcDCC -m dccd start +} + +stop_dccd() +{ + echo Stopping dccd. + ${dccd_libexec}/rcDCC -m dccd stop +} + +run_rc_command "$1" + diff --git a/mail/dcc-dccd/files/dccgrey.sh.in b/mail/dcc-dccd/files/dccgrey.sh.in new file mode 100644 index 000000000000..e578bf7df26a --- /dev/null +++ b/mail/dcc-dccd/files/dccgrey.sh.in @@ -0,0 +1,72 @@ +#!/bin/sh +# +# PROVIDE: dccgrey +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf: +# +#dccgrey_enable="YES" +# +# and in %%DCCHOME%%/dcc_conf change: +# +#GREY_ENABLE= +# +# to: +# +#GREY_ENABLE=on +# +# +# See %%DCCHOME%%/dcc_conf to configure startup options +# + +. %%RC_SUBR%% + +name=dccgrey +rcvar=`set_rcvar` + +load_rc_config $name + +# Set defaults +: ${dccgrey_enable:="NO"} +: ${dccgrey_home="%%DCCHOME%%"} +: ${dccgrey_libexec="%%PREFIX%%/dcc/libexec"} +: ${dccgrey_conf="$dccgrey_home/dcc_conf"} + + +procname="${dccgrey_libexec}/dccd" +required_dirs="${dccgrey_home} ${dccgrey_libexec}" +required_files="${dccgrey_conf} ${dccgrey_libexec}/rcDCC" + +start_cmd="start_dccgrey" +stop_cmd="stop_dccgrey" +start_precmd="start_precmd" + + +start_precmd() +{ +X=`grep ^GREY_ENABLE ${dccgrey_conf}` +eval $X +if [ "$GREY_ENABLE" != "on" ] +then + echo "Warning ${X} needs to be on in ${dccgrey_conf} to start the DCC greylisting server" + return 1 +fi +} + +start_dccgrey() +{ + echo Starting dccgrey. + ${dccgrey_libexec}/rcDCC -m grey start +} + +stop_dccgrey() +{ + echo Stopping dccgrey. + ${dccgrey_libexec}/rcDCC -m grey stop +} + +run_rc_command "$1" + diff --git a/mail/dcc-dccd/files/dccifd.sh.in b/mail/dcc-dccd/files/dccifd.sh.in new file mode 100644 index 000000000000..669cc12727ee --- /dev/null +++ b/mail/dcc-dccd/files/dccifd.sh.in @@ -0,0 +1,63 @@ +#!/bin/sh +# +# PROVIDE: dccifd +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +# +# To enable dccifd add the following lines to /etc/rc.conf: +# +#dccifd_enable="YES" +# +# and in %%DCCHOME%%/dcc_conf change: +# +#DCCIFD_ENABLE=off +# +# to: +# +#DCCIFD_ENABLE=on +# +# +# See %%DCCHOME%%/dcc_conf to configure startup options +# + +. %%RC_SUBR%% + +name=dccifd +rcvar=`set_rcvar` + +load_rc_config $name + +# Set defaults +: ${dccifd_enable:="NO"} +: ${dccifd_home="%%DCCHOME%%"} +: ${dccifd_libexec="%%PREFIX%%/dcc/libexec"} +: ${dccifd_conf="$dccifd_home/dcc_conf"} + +pidfile=${dccifd_pidfile:-"/var/run/dcc/dccifd.pid"} +procname="${dccifd_libexec}/dccifd" +required_dirs="${dccifd_home} ${dccifd_libexec}" +required_files="${dccifd_conf} ${dccifd_libexec}/rcDCC" + +start_precmd="start_precmd" +start_cmd="start_dcc" + +start_precmd() +{ +X=`grep ^DCCIFD_ENABLE ${dccifd_conf}` +eval $X +if [ "$DCCIFD_ENABLE" != "on" ] +then + echo "Warning ${X} needs to be on in ${dccifd_conf} to start dccifd" + return 1 +fi +} + +start_dcc() +{ + echo Starting dccifd. + ${dccifd_libexec}/rcDCC -m dccifd start +} + +run_rc_command "$1" diff --git a/mail/dcc-dccd/files/dccm.sh.in b/mail/dcc-dccd/files/dccm.sh.in new file mode 100644 index 000000000000..805f185a7fc2 --- /dev/null +++ b/mail/dcc-dccd/files/dccm.sh.in @@ -0,0 +1,63 @@ +#!/bin/sh +# +# PROVIDE: dccm +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +# +# To enable dccm add the following lines to /etc/rc.conf: +# +#dccm_enable="YES" +# +# and in %%DCCHOME%%/dcc_conf change: +# +#DCCM_ENABLE=off +# +# to: +# +#DCCM_ENABLE=on +# +# +# See %%DCCHOME%%/dcc_conf to configure startup options +# + +. %%RC_SUBR%% + +name=dccm +rcvar=`set_rcvar` + +load_rc_config $name + +# Set defaults +: ${dccm_enable:="NO"} +: ${dccm_home="%%DCCHOME%%"} +: ${dccm_libexec="%%PREFIX%%/dcc/libexec"} +: ${dccm_conf="$dccm_home/dcc_conf"} + +pidfile=${dccm_pidfile:-"/var/run/dcc/dccm.pid"} +procname="${dccm_libexec}/dccm" +required_dirs="${dccm_home} ${dccm_libexec}" +required_files="${dccm_conf} ${dccm_libexec}/rcDCC" + +start_precmd="start_precmd" +start_cmd="start_dcc" + +start_precmd() +{ +X=`grep ^DCCM_ENABLE ${dccm_conf}` +eval $X +if [ "$DCCM_ENABLE" != "on" ] +then + echo "Warning ${X} needs to be on in ${dccm_conf} to start dccm" + return 1 +fi +} + +start_dcc() +{ + echo Starting dccm. + ${dccm_libexec}/rcDCC -m dccm start +} + +run_rc_command "$1" diff --git a/mail/dcc-dccd/files/patch-configure b/mail/dcc-dccd/files/patch-configure deleted file mode 100644 index 40253a217ebf..000000000000 --- a/mail/dcc-dccd/files/patch-configure +++ /dev/null @@ -1,25 +0,0 @@ ---- configure.orig Sun Jul 31 18:57:46 2005 -+++ configure Thu Sep 8 00:02:36 2005 -@@ -998,7 +998,7 @@ - ;; - FreeBSD) - PTHREAD_LDFLAGS="$PTHREAD_LDFLAGS -pthread" -- PTHREAD_LIBS="$PTHREAD_LIBS -lc_r" -+ PTHREAD_LIBS="$PTHREAD_LIBS" - ;; - DragonFly) - PTHREAD_LDFLAGS="$PTHREAD_LDFLAGS -pthread" -@@ -2487,6 +2487,13 @@ - SENDMAIL="$with_sendmail" - SENDMAIL_EVAL="$SENDMAIL" - with_sendmail=yes -+fi -+if test -n "$SENDMAIL" -a "$SENDMAIL" != "no"; then -+ if test -f $SENDMAIL/include/libmilter/mfapi.h -a -f $SENDMAIL/lib/libmilter.a; then -+ SENDMAIL_OBJ=$SENDMAIL/lib -+ SENDMAIL_OBJ_EVAL=$SENDMAIL_OBJ -+ SENDMAIL_LIB=$SENDMAIL_OBJ/libmilter.a -+ fi - fi - if test -z "$SENDMAIL"; then - # prefer a parallel ../sendmail directory diff --git a/mail/dcc-dccd/files/patch-homedir::Makefile.in b/mail/dcc-dccd/files/patch-homedir::Makefile.in deleted file mode 100644 index e10c4a51f0f8..000000000000 --- a/mail/dcc-dccd/files/patch-homedir::Makefile.in +++ /dev/null @@ -1,33 +0,0 @@ ---- homedir/Makefile.in.orig Sun Feb 11 09:05:45 2007 -+++ homedir/Makefile.in Sun Feb 11 09:07:59 2007 -@@ -57,23 +57,19 @@ - $(HINST) -m 755 -d $(DIR); fi - if test ! -d $(DIR)/log; then\ - $(HINST) -m 710 -d $(DIR)/log; fi -- if test -s $(DIR)/dcc_conf; then\ -- sh make-dcc_conf -h $(DIR);\ -- else\ -- $(HINST) -m 644 dcc_conf $(DIR)/dcc_conf;\ -- fi -+ $(INSTALL) -m 644 dcc_conf $(DIR)/dcc_conf.dist; \ - for nm in flod grey_flod whitelist grey_whitelist\ - whiteclnt whitecommon; do\ - if test ! -f $(DIR)/$$nm; then\ -- $(HINST) -m 644 $$nm $(DIR)/$$nm; fi; done -+ $(INSTALL) -m 644 $$nm $(DIR)/$$nm.dist; fi; done - if test ! -f $(DIR)/ids -a ! -f $(DIR)/map -a ! -f $(DIR)/map.txt; then\ - umask 077; PASSWD1=`$(RSTRING)`; PASSWD2=`$(RSTRING)`;\ -- sed -e "s/secret1/$$PASSWD1/" map.txt >$(DIR)/map.txt;\ -+ sed -e "s/secret1/$$PASSWD1/" map.txt >$(DIR)/map.txt.dist;\ - sed -e "s/secret1/$$PASSWD1/" -e "s/secret2/$$PASSWD2/" ids\ -- >$(DIR)/ids;\ -- ${DEPTH}/cdcc/cdcc -qh $(DIR) 'new map; load $(DIR)/map.txt';\ -- set +e; chown $(DCC_SUID) $(DIR)/map.txt\ -- $(DIR)/map $(DIR)/ids;\ -+ >$(DIR)/ids.dist;\ -+ ${DEPTH}/cdcc/cdcc -qh $(DIR) 'new map; load $(DIR)/map.txt.dist';\ -+ set +e; chown $(DCC_SUID) $(DIR)/map.txt.dist\ -+ $(DIR)/map $(DIR)/ids.dist;\ - fi - - deinstall: diff --git a/mail/dcc-dccd/files/pkg-message.in b/mail/dcc-dccd/files/pkg-message.in new file mode 100644 index 000000000000..06aef0864970 --- /dev/null +++ b/mail/dcc-dccd/files/pkg-message.in @@ -0,0 +1,47 @@ + +========================================================================== + +Installation Notes +------------------ + +Make certain you edit %%DCCHOME%%/dcc_conf to enable the daemons you +wish to run, in addition to adding their respective dcc*_enable="YES" +lines to /etc/rc.conf or /etc/rc.conf.local. + +Daemon startup flags are also specified in %%DCCHOME%%/dcc_conf. + + +If you run the DCC server, /usr/local/dcc/libexec/cron-dccd should be +run at least daily from the crontab to clean old checksums from the DB. + + +If your site handles more than 100,000 messages per day, to decrease the +load on the public DCC servers and increase the responsiveness of your +DCC clients, you should set up your own, local DCC server connected to +the global network of DCC servers. See: + +http://www.dcc-servers.net/dcc/#local-server + + +========================================================================== + + +DCC Usage Restrictions Notice +----------------------------- + +The free DCC source is available only for non-commercial and some other +uses. It is not available to organizations that sell anti-spam appliances +or provide managed email services as opposed to common Internet service. +It has always been wrong to take and sell the CPU cycles, bandwidth, and +human system administration labor of the public DCC servers. + +Please read the LICENSE file in the DCC source: + +%%WRKSRC%%/LICENSE + +or at: + +http://www.dcc-servers.net/dcc/dcc-tree/LICENSE + + +========================================================================== diff --git a/mail/dcc-dccd/pkg-descr b/mail/dcc-dccd/pkg-descr index ed5762d8c133..4e890b83806c 100644 --- a/mail/dcc-dccd/pkg-descr +++ b/mail/dcc-dccd/pkg-descr @@ -1,7 +1,10 @@ -This package the DCC (Distributed Checksum Clearinghouse) procmail and -non-sendmail interface, dccproc; the sendmail DCC interface, dccm; and the -DCC server, dccd. Also included are utilities such as cdcc and all of the -manual pages and documentation. +This is the Distributed Checksum Clearinghouse (DCC) package, including +the command line (e.g. procmail) interface, dccproc; the SpamAssassin +and Postfix interface, dccifd; the Sendmail milter interface, dccm; +the DCC server, dccd; and the DCC greylisting server, dccd-grey. + +Also included are utilities such as cdcc and all of the manual pages +and documentation. WWW: http://www.rhyolite.com/anti-spam/dcc/ diff --git a/mail/dcc-dccd/pkg-plist b/mail/dcc-dccd/pkg-plist index 31eb03a3b87d..9b7e1296df07 100644 --- a/mail/dcc-dccd/pkg-plist +++ b/mail/dcc-dccd/pkg-plist @@ -1,53 +1,29 @@ -@unexec if cmp -s %D/dcc/dcc_conf %D/dcc/dcc_conf.dist; then rm -f %D/dcc/dcc_conf; fi -dcc/dcc_conf.dist -@exec [ -f %B/dcc_conf ] || cp %B/%f %B/dcc_conf -@unexec if cmp -s %D/dcc/flod %D/dcc/flod.dist; then rm -f %D/dcc/flod; fi -dcc/flod.dist -@exec [ -f %B/flod ] || cp %B/%f %B/flod -@unexec if cmp -s %D/dcc/grey_flod %D/dcc/grey_flod.dist; then rm -f %D/dcc/grey_flod; fi -dcc/grey_flod.dist -@exec [ -f %B/grey_flod ] || cp %B/%f %B/grey_flod -@unexec if cmp -s %D/dcc/grey_whitelist %D/dcc/grey_whitelist.dist; then rm -f %D/dcc/grey_whitelist; fi -dcc/grey_whitelist.dist -@exec [ -f %B/grey_whitelist ] || cp %B/%f %B/grey_whitelist -@unexec if cmp -s %D/dcc/ids %D/dcc/ids.dist; then rm -f %D/dcc/ids; fi -dcc/ids.dist -@exec [ -f %B/ids ] || cp %B/%f %B/ids -@unexec if cmp -s %D/dcc/map.txt %D/dcc/map.txt.dist; then rm -f %D/dcc/map.txt; fi -dcc/map.txt.dist -@exec [ -f %B/map.txt ] || cp %B/%f %B/map.txt -@unexec if cmp -s %D/dcc/whiteclnt %D/dcc/whiteclnt.dist; then rm -f %D/dcc/whiteclnt; fi -dcc/whiteclnt.dist -@exec [ -f %B/whiteclnt ] || cp %B/%f %B/whiteclnt -@unexec if cmp -s %D/dcc/whitecommon %D/dcc/whitecommon.dist; then rm -f %D/dcc/whitecommon; fi -dcc/whitecommon.dist -@exec [ -f %B/whitecommon ] || cp %B/%f %B/whitecommon -@unexec if cmp -s %D/dcc/whitelist %D/dcc/whitelist.dist; then rm -f %D/dcc/whitelist; fi -dcc/whitelist.dist -@exec [ -f %B/whitelist ] || cp %B/%f %B/whitelist bin/cdcc -bin/dccif-test +%%WITH_DCCIFD%%bin/dccif-test bin/dccproc dcc/cgi-bin/README dcc/cgi-bin/chgpasswd dcc/cgi-bin/common dcc/cgi-bin/edit-whiteclnt +dcc/cgi-bin/footer +dcc/cgi-bin/header dcc/cgi-bin/http2https dcc/cgi-bin/list-log dcc/cgi-bin/list-msg dcc/cgi-bin/webuser-notify dcc/libexec/cron-dccd %%WITH_DCCIFD%%dcc/libexec/dccifd -%%WITH_SENDMAIL%%dcc/libexec/dccm -dcc/libexec/dbclean -dcc/libexec/dblist +%%WITH_DCCM%%dcc/libexec/dccm +%%WITH_DCCD%%dcc/libexec/dbclean +%%WITH_DCCD%%dcc/libexec/dblist dcc/libexec/dcc-stats-collect dcc/libexec/dcc-stats-graph dcc/libexec/dcc-stats-init -dcc/libexec/dccd +%%WITH_DCCD%%dcc/libexec/dccd dcc/libexec/dccsight -dcc/libexec/dns-helper +%%WITH_IFD_MILT%%dcc/libexec/dns-helper dcc/libexec/fetchblack +dcc/libexec/fetchids dcc/libexec/fetch-testmsg-whitelist dcc/libexec/hackmc dcc/libexec/list-clients @@ -63,10 +39,43 @@ dcc/libexec/stop-dccd dcc/libexec/updatedcc dcc/libexec/uninstalldcc dcc/libexec/wlist -dcc/cgi-bin/header -dcc/cgi-bin/footer -dcc/map -@dirrm dcc/log @dirrm dcc/libexec @dirrm dcc/cgi-bin @dirrmtry dcc +%%WITH_DCCIFD%%@stopdaemon dccifd +%%WITH_DCCM%%@stopdaemon dccm +%%WITH_DCCD%%@stopdaemon dccd +%%WITH_DCCGREY%%@stopdaemon dccgrey +%%WITH_ALT_HOME%%@cwd /var +@unexec if cmp -s %D/dcc/dcc_conf %D/dcc/dcc_conf.sample; then rm -f %D/dcc/dcc_conf; fi +dcc/dcc_conf.sample +@exec [ -f %B/dcc_conf ] || cp %B/%f %B/dcc_conf +@unexec if cmp -s %D/dcc/flod %D/dcc/flod.sample; then rm -f %D/dcc/flod; fi +dcc/flod.sample +@unexec if cmp -s %D/dcc/grey_flod %D/dcc/grey_flod.sample; then rm -f %D/dcc/grey_flod; fi +dcc/grey_flod.sample +@unexec if cmp -s %D/dcc/grey_whitelist %D/dcc/grey_whitelist.sample; then rm -f %D/dcc/grey_whitelist; fi +dcc/grey_whitelist.sample +@unexec if cmp -s %D/dcc/ids %D/dcc/ids.sample; then rm -f %D/dcc/ids; fi +dcc/ids.sample +@unexec if cmp -s %D/dcc/map.txt %D/dcc/map.txt.sample; then rm -f %D/dcc/map.txt; fi +dcc/map.txt.sample +@unexec if cmp -s %D/dcc/map %D/dcc/map.sample; then rm -f %D/dcc/map; fi +dcc/map.sample +@unexec if cmp -s %D/dcc/whiteclnt %D/dcc/whiteclnt.sample; then rm -f %D/dcc/whiteclnt; fi +dcc/whiteclnt.sample +@unexec if cmp -s %D/dcc/whitecommon %D/dcc/whitecommon.sample; then rm -f %D/dcc/whitecommon; fi +dcc/whitecommon.sample +@unexec if cmp -s %D/dcc/whitelist %D/dcc/whitelist.sample; then rm -f %D/dcc/whitelist; fi +dcc/whitelist.sample +%%WITH_IFD_MILT%%@unexec [ -e %D/dcc/whiteclnt.dccw ] && rm -f %D/dcc/whiteclnt.dccw || true +%%WITH_IFD_MILT%%@unexec [ -e %D/dcc/whiteclnt.dccx ] && rm -f %D/dcc/whiteclnt.dccx || true +%%WITH_DCCD%%@unexec [ -e %D/dcc/dcc_db ] && rm -f %D/dcc/dcc_db || true +%%WITH_DCCD%%@unexec [ -e %D/dcc/dcc_db.hash ] && rm -f %D/dcc/dcc_db.hash || true +%%WITH_DCCD%%@unexec [ -e %D/dcc/flod.map ] && rm -f %D/dcc/flod.map || true +%%WITH_DCCD%%@unexec [ -e %D/dcc/dccd_clients ] && rm -f %D/dcc/dccd_clients || true +%%WITH_DCCGREY%%@unexec [ -e %D/dcc/grey_db.hash ] && rm -f %D/dcc/grey_db.hash || true +%%WITH_DCCGREY%%@unexec [ -e %D/dcc/grey_flod.map ] && rm -f %D/dcc/grey_flod.map || true +%%WITH_DCCGREY%%@unexec [ -e %D/dcc/grey_clients ] && rm -f %D/dcc/grey_clients || true +@dirrm dcc/log +@dirrmtry dcc |