aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authormat <mat@FreeBSD.org>2014-09-11 21:34:39 +0800
committermat <mat@FreeBSD.org>2014-09-11 21:34:39 +0800
commit794896ee0351dcca5a208ce1434440ffedaaa3ee (patch)
tree464ca1b62cfdd11e2f89cecc3dc6d10de5dc7203 /mail
parent411c0e1895c93300f967ecae35e53ec127c5b715 (diff)
downloadfreebsd-ports-gnome-794896ee0351dcca5a208ce1434440ffedaaa3ee.tar.gz
freebsd-ports-gnome-794896ee0351dcca5a208ce1434440ffedaaa3ee.tar.zst
freebsd-ports-gnome-794896ee0351dcca5a208ce1434440ffedaaa3ee.zip
Add back mail/dcc-dccd
- Update to 1.3.155. - Stage. - Build as a user. - Add the option back to spamassassin. Sponsored by: Absolight
Diffstat (limited to 'mail')
-rw-r--r--mail/Makefile1
-rw-r--r--mail/dcc-dccd/Makefile125
-rw-r--r--mail/dcc-dccd/distinfo2
-rw-r--r--mail/dcc-dccd/files/dccd.in72
-rw-r--r--mail/dcc-dccd/files/dccgrey.in73
-rw-r--r--mail/dcc-dccd/files/dccifd.in64
-rw-r--r--mail/dcc-dccd/files/dccm.in64
-rw-r--r--mail/dcc-dccd/files/patch-Makefile.inc.in23
-rw-r--r--mail/dcc-dccd/files/patch-cdcc__Makefile.in10
-rw-r--r--mail/dcc-dccd/files/patch-configure11
-rw-r--r--mail/dcc-dccd/files/patch-dccproc__Makefile.in10
-rw-r--r--mail/dcc-dccd/files/patch-dccsight__Makefile.in10
-rw-r--r--mail/dcc-dccd/files/patch-homedir__make-dcc_conf.in13
-rw-r--r--mail/dcc-dccd/files/pkg-install.in26
-rw-r--r--mail/dcc-dccd/files/pkg-message.in53
-rw-r--r--mail/dcc-dccd/pkg-descr9
-rw-r--r--mail/dcc-dccd/pkg-help19
-rw-r--r--mail/dcc-dccd/pkg-plist88
-rw-r--r--mail/spamassassin/Makefile5
19 files changed, 677 insertions, 1 deletions
diff --git a/mail/Makefile b/mail/Makefile
index 24f03bb6f295..3b1e21f9b845 100644
--- a/mail/Makefile
+++ b/mail/Makefile
@@ -85,6 +85,7 @@
SUBDIR += davmail
SUBDIR += dbmail
SUBDIR += dbmail22
+ SUBDIR += dcc-dccd
SUBDIR += deforaos-mailer
SUBDIR += delatt
SUBDIR += dk-milter
diff --git a/mail/dcc-dccd/Makefile b/mail/dcc-dccd/Makefile
new file mode 100644
index 000000000000..11c8596450a6
--- /dev/null
+++ b/mail/dcc-dccd/Makefile
@@ -0,0 +1,125 @@
+# Created by: Dean Hollister <dean@odyssey.apana.org.au>
+# $FreeBSD$
+
+PORTNAME= dcc-dccd
+PORTVERSION= 1.3.155
+CATEGORIES= mail
+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-${PORTVERSION}
+EXTRACT_SUFX= .tar.Z
+
+MAINTAINER= mat@FreeBSD.org
+COMMENT= Distributed Checksum Clearinghouse bulk email detector
+
+.if ! defined(PACKAGE_BUILDING)
+LICENSE= DCC
+LICENSE_NAME= DCC
+LICENSE_FILE= ${WRKSRC}/LICENSE
+LICENSE_PERMS= no-pkg-sell no-dist-mirror no-pkg-mirror no-dist-sell
+.endif
+
+HAS_CONFIGURE= yes
+
+USES= gmake
+
+OPTIONS_DEFINE= DCCIFD DCCD DCCGREY IPV6 ALT_HOME
+OPTIONS_DEFAULT= DCCIFD DCCM DCCD DCCGREY
+OPTIONS_GROUP= MILTER
+OPTIONS_GROUP_MILTER= DCCM PORTS_SENDMAIL
+DCCIFD_DESC= DCC interface daemon (for SpamAssassin etc)
+DCCM_DESC= DCC milter (for Sendmail only)
+DCCD_DESC= DCC server
+DCCGREY_DESC= DCC greylisting server
+ALT_HOME_DESC= DCC home in /var/dcc (see help)
+PORTS_SENDMAIL_DESC= Use ports Sendmail instead of base
+
+OPTIONS_SUB= yes
+
+## User for DCC files and SUID binaries
+#
+DCCUSER?= dcc
+DCCGROUP?= dcc
+
+USERS= ${DCCUSER}
+GROUPS= ${DCCGROUP}
+
+PLIST_SUB+= DCCUSER="${DCCUSER}" DCCGROUP="${DCCGROUP}"
+SUB_FILES= pkg-install pkg-message
+SUB_LIST+= WRKSRC=${WRKSRC} DCCHOME=${DCCHOME}
+
+## Use the configure script to explicitly set the locations of all files,
+## in case the standard locations have been locally overridden
+## Also, use a similar hack to USES=desthack.
+CONFIGURE_ARGS= --with-uid=${DCCUSER} \
+ --bindir=${PREFIX}/bin \
+ --mandir=${MANPREFIX}/man \
+ --with-installroot=\$${${DESTDIRNAME}} \
+ --with-configsuffix=.sample \
+ --with-make-cmd=${MAKE_CMD}
+
+ALT_HOME_CONFIGURE_ON= --libexecdir=${PREFIX}/dcc/libexec --with-cgibin=${PREFIX}/dcc/cgi-bin
+DCCM_CONFIGURE_ENABLE= dccm
+DCCM_USE= rc_subr=dccm
+PORTS_SENDMAIL_BUILD_DEPENDS= ${LOCALBASE}/lib/libmilter.a:${PORTSDIR}/mail/sendmail
+PORTS_SENDMAIL_CONFIGURE_ON= --with-sendmail=yes
+DCCIFD_CONFIGURE_ENABLE= dccifd
+DCCIFD_USE= rc_subr=dccifd
+DCCD_CONFIGURE_ENABLE= server
+IPV6_CONFIGURE_OFF= --disable-IPv6
+DCCD_USE= rc_subr=dccd
+DCCGREY_USE= rc_subr=dccgrey
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MALT_HOME}
+DCCHOME= /var/dcc
+.else
+DCCHOME= ${PREFIX}/dcc
+.endif
+
+CONFIGURE_ARGS+= --homedir=${DCCHOME}
+
+## dccm milter support
+#
+.if ${PORT_OPTIONS:MDCCM}
+
+.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 ! ${PORT_OPTIONS:MPORTS_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 ${PORT_OPTIONS:MPORTS_SENDMAIL} && !exists(${LOCALBASE}/lib/libmilter.a)
+IGNORE= ports Sendmail not found, rebuild with WITHOUT_PORTS_SENDMAIL=yes or WITHOUT_DCCM=yes
+.endif
+
+.if ! ${PORT_OPTIONS:MPORTS_SENDMAIL}
+MILTERBASE= /usr
+.else
+MILTERBASE?= ${LOCALBASE}
+.endif
+
+MILTERINC= ${MILTERBASE}/include
+MILTERLIB= ${MILTERBASE}/lib
+
+CPPFLAGS+= -I${MILTERINC}
+CFLAGS+= -I${MILTERINC}
+LDFLAGS+= -L${MILTERLIB}
+.endif
+
+.if ${PORT_OPTIONS:MDCCIFD} || ${PORT_OPTIONS:MDCCM}
+PLIST_SUB+= IFD_MILT=""
+.else
+PLIST_SUB+= IFD_MILT="@comment "
+.endif
+
+post-stage:
+ @${MV} ${STAGEDIR}${PREFIX}/dcc/cgi-bin/footer-dist \
+ ${STAGEDIR}${PREFIX}/dcc/cgi-bin/footer.sample
+ @${MV} ${STAGEDIR}${PREFIX}/dcc/cgi-bin/header-dist \
+ ${STAGEDIR}${PREFIX}/dcc/cgi-bin/header.sample
+
+.include <bsd.port.mk>
diff --git a/mail/dcc-dccd/distinfo b/mail/dcc-dccd/distinfo
new file mode 100644
index 000000000000..49cd8f88c64b
--- /dev/null
+++ b/mail/dcc-dccd/distinfo
@@ -0,0 +1,2 @@
+SHA256 (dcc-1.3.155.tar.Z) = ea922f75607cf0f571c7ec3745bb80903ff1739d749655bf731b8f7e15efd76d
+SIZE (dcc-1.3.155.tar.Z) = 1711020
diff --git a/mail/dcc-dccd/files/dccd.in b/mail/dcc-dccd/files/dccd.in
new file mode 100644
index 000000000000..40bd326d732a
--- /dev/null
+++ b/mail/dcc-dccd/files/dccd.in
@@ -0,0 +1,72 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# 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
+
+. /etc/rc.subr
+
+name=dccd
+rcvar=dccd_enable
+
+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.in b/mail/dcc-dccd/files/dccgrey.in
new file mode 100644
index 000000000000..6eae2ae20d08
--- /dev/null
+++ b/mail/dcc-dccd/files/dccgrey.in
@@ -0,0 +1,73 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# 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
+
+. /etc/rc.subr
+
+name=dccgrey
+rcvar=dccgrey_enable
+
+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.in b/mail/dcc-dccd/files/dccifd.in
new file mode 100644
index 000000000000..ecea2d85bab8
--- /dev/null
+++ b/mail/dcc-dccd/files/dccifd.in
@@ -0,0 +1,64 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# 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
+
+. /etc/rc.subr
+
+name=dccifd
+rcvar=dccifd_enable
+
+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.in b/mail/dcc-dccd/files/dccm.in
new file mode 100644
index 000000000000..47f6dbe0733c
--- /dev/null
+++ b/mail/dcc-dccd/files/dccm.in
@@ -0,0 +1,64 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# 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
+
+. /etc/rc.subr
+
+name=dccm
+rcvar=dccm_enable
+
+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-Makefile.inc.in b/mail/dcc-dccd/files/patch-Makefile.inc.in
new file mode 100644
index 000000000000..94d741e888aa
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-Makefile.inc.in
@@ -0,0 +1,23 @@
+--- Makefile.inc.in.orig 2014-08-06 14:43:42 UTC
++++ Makefile.inc.in
+@@ -102,7 +102,6 @@
+ DCC_OWN =@DCCSUID@
+ @MAKE_DOT@endif
+ @MAKE_DOT@endif
+-BINOWN =$(DCC_OWN)
+
+ @MAKE_DOT@ifndef DCC_GRP
+ DCC_GRP =@DCC_GRP@
+@@ -129,9 +128,9 @@
+ SET_MANOWN=
+ SET_DCCOWN=
+ @MAKE_DOT@else
+-SET_BINOWN=-o $(BINOWN) -g $(BINGRP)
+-SET_MANOWN=-o $(MANOWN) -g $(MANGRP)
+-SET_DCCOWN=-o @DCCSUID@ -g $(BINGRP)
++SET_BINOWN=
++SET_MANOWN=
++SET_DCCOWN=
+ @MAKE_DOT@endif
+
+ @MAKE_DOT@ifdef PROG
diff --git a/mail/dcc-dccd/files/patch-cdcc__Makefile.in b/mail/dcc-dccd/files/patch-cdcc__Makefile.in
new file mode 100644
index 000000000000..fc35c89ddcd4
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-cdcc__Makefile.in
@@ -0,0 +1,10 @@
+--- cdcc/Makefile.in.orig 2014-08-06 14:43:42 UTC
++++ cdcc/Makefile.in
+@@ -45,7 +45,5 @@
+
+ @MAKE_DOT@ifndef NO_SUID
+ # cdcc needs to be SUID to read the server passwords
+-BINMODE =4$(DCC_MODE)
+-BINOWN =@DCCSUID@
+ @MAKE_DOT@endif
+ @MAKE_INC2@
diff --git a/mail/dcc-dccd/files/patch-configure b/mail/dcc-dccd/files/patch-configure
new file mode 100644
index 000000000000..bba7147abc24
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig 2014-08-06 14:43:42 UTC
++++ configure
+@@ -1950,7 +1950,7 @@
+ # compressed via /usr/share/mk
+ mancat=man
+ MANX='$(MAN8)'
+- USE_DCCMANINSTALL='# USE_DCCMANINSTALL=no'
++ USE_DCCMANINSTALL='USE_DCCMANINSTALL=yes'
+ ;;
+ DragonFly)
+ # default to /usr/local/man/man8 and use nroff files, possibly
diff --git a/mail/dcc-dccd/files/patch-dccproc__Makefile.in b/mail/dcc-dccd/files/patch-dccproc__Makefile.in
new file mode 100644
index 000000000000..6ed8caf080b3
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-dccproc__Makefile.in
@@ -0,0 +1,10 @@
+--- dccproc/Makefile.in.orig 2014-08-06 14:43:42 UTC
++++ dccproc/Makefile.in
+@@ -45,7 +45,5 @@
+
+ @MAKE_DOT@ifndef NO_SUID
+ # dccproc needs to be SUID to read the server passwords
+-BINMODE =4$(DCC_MODE)
+-BINOWN =@DCCSUID@
+ @MAKE_DOT@endif
+ @MAKE_INC2@
diff --git a/mail/dcc-dccd/files/patch-dccsight__Makefile.in b/mail/dcc-dccd/files/patch-dccsight__Makefile.in
new file mode 100644
index 000000000000..ea5ea9d3969c
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-dccsight__Makefile.in
@@ -0,0 +1,10 @@
+--- dccsight/Makefile.in.orig 2014-08-06 14:43:42 UTC
++++ dccsight/Makefile.in
+@@ -46,7 +46,5 @@
+
+ @MAKE_DOT@ifndef NO_SUID
+ # dccsight needs to be SUID to read the server passwords
+-BINMODE =4$(DCC_MODE)
+-BINOWN =@DCCSUID@
+ @MAKE_DOT@endif
+ @MAKE_INC2@
diff --git a/mail/dcc-dccd/files/patch-homedir__make-dcc_conf.in b/mail/dcc-dccd/files/patch-homedir__make-dcc_conf.in
new file mode 100644
index 000000000000..c9c7b3191278
--- /dev/null
+++ b/mail/dcc-dccd/files/patch-homedir__make-dcc_conf.in
@@ -0,0 +1,13 @@
+--- homedir/make-dcc_conf.in.orig 2014-08-06 14:43:42 UTC
++++ homedir/make-dcc_conf.in
+@@ -83,10 +83,6 @@
+ if test -n "$FORCE" -o ! -f "$CUR"; then
+ cp $PROTOTYPE $CUR$FORCE
+ chmod 0644 $CUR$FORCE
+- if test -n "@DCCSUID@" -a -z "$NO_SUID"; then
+- set +e # do not die if the user name is not in the passwd file
+- chown @DCCSUID@ $CUR$FORCE
+- fi
+ exit
+ fi
+
diff --git a/mail/dcc-dccd/files/pkg-install.in b/mail/dcc-dccd/files/pkg-install.in
new file mode 100644
index 000000000000..75f40d4b5bb6
--- /dev/null
+++ b/mail/dcc-dccd/files/pkg-install.in
@@ -0,0 +1,26 @@
+#!/bin/sh
+# $FreeBSD: /tmp/pcvs/ports/mail/dcc-dccd/files/pkg-install.in,v 1.2 2011-07-04 19:39:45 crees Exp $
+
+PREFIX=${PKG_PREFIX:-%%PREFIX%%}
+
+DCCHOME=%%DCCHOME%%
+
+if [ "$2" = "POST-INSTALL" ]; then
+
+ echo "=> Generating unique passwords for your DCC install..."
+ echo "=>"
+ echo "=> Note this will make map.sample, map.txt.sample and"
+ echo "=> ids.sample fail their MD5 checks on package removal."
+
+ /bin/sh $PREFIX/dcc/libexec/fix-map \
+ -n .sample \
+ -I $DCCHOME/ids.sample -i $DCCHOME/ids \
+ -T $DCCHOME/map.txt.sample -t $DCCHOME/map.txt \
+ -m $DCCHOME/map
+
+ for file in ids map map.txt ; do
+ /bin/cp -p $DCCHOME/$file $DCCHOME/${file}.sample
+ done
+fi
+
+exit 0
diff --git a/mail/dcc-dccd/files/pkg-message.in b/mail/dcc-dccd/files/pkg-message.in
new file mode 100644
index 000000000000..091c017ced01
--- /dev/null
+++ b/mail/dcc-dccd/files/pkg-message.in
@@ -0,0 +1,53 @@
+
+==========================================================================
+
+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, %%LOCALBASE%%/dcc/libexec/cron-dccd should be
+run at least daily from the crontab to clean old checksums from the DB.
+
+
+If you just run the client, you may still wish to add
+%%LOCALBASE%%/dcc/libexec/cron-dccd to your crontab to clean up the
+client's log files on a regular basis. dcc_conf's DBCLEAN_LOGDAYS
+variable controls the number of days to keep logs.
+
+
+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
new file mode 100644
index 000000000000..a5fb728c76f2
--- /dev/null
+++ b/mail/dcc-dccd/pkg-descr
@@ -0,0 +1,9 @@
+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/dcc/
diff --git a/mail/dcc-dccd/pkg-help b/mail/dcc-dccd/pkg-help
new file mode 100644
index 000000000000..f5f77e19050b
--- /dev/null
+++ b/mail/dcc-dccd/pkg-help
@@ -0,0 +1,19 @@
+ALT_HOME:
+
+DCC keeps its config files in its home directory 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 of /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.
diff --git a/mail/dcc-dccd/pkg-plist b/mail/dcc-dccd/pkg-plist
new file mode 100644
index 000000000000..cceaa26a3813
--- /dev/null
+++ b/mail/dcc-dccd/pkg-plist
@@ -0,0 +1,88 @@
+@(%%DCCUSER%%,%%DCCGROUP%%,4555) bin/cdcc
+%%DCCIFD%%bin/dccif-test
+@(%%DCCUSER%%,%%DCCGROUP%%,4555) bin/dccproc
+dcc/cgi-bin/README
+dcc/cgi-bin/chgpasswd
+dcc/cgi-bin/common
+dcc/cgi-bin/common.pm
+dcc/cgi-bin/edit-whiteclnt
+dcc/cgi-bin/http2https
+dcc/cgi-bin/list-log
+dcc/cgi-bin/list-msg
+dcc/cgi-bin/webuser-notify
+@sample dcc/cgi-bin/footer.sample
+@sample dcc/cgi-bin/header.sample
+dcc/libexec/check_ip_range
+dcc/libexec/ck2ip
+dcc/libexec/cron-dccd
+%%DCCIFD%%dcc/libexec/dccifd
+%%DCCM%%dcc/libexec/dccm
+%%DCCD%%dcc/libexec/dbclean
+%%DCCD%%dcc/libexec/dblist
+%%DCCD%%dcc/libexec/dump-clients
+dcc/libexec/dcc-nagios
+dcc/libexec/dcc-stats-collect
+dcc/libexec/dcc-stats-graph
+dcc/libexec/dcc-stats-init
+dcc/libexec/dcc-stats-update
+%%DCCD%%dcc/libexec/dccd
+@(%%DCCUSER%%,%%DCCGROUP%%,4555) dcc/libexec/dccsight
+%%IFD_MILT%%dcc/libexec/dns-helper
+dcc/libexec/fetchblack
+dcc/libexec/fetchids
+dcc/libexec/fetch-testmsg-whitelist
+dcc/libexec/fix-map
+dcc/libexec/hackmc
+dcc/libexec/list-clients
+dcc/libexec/logger
+dcc/libexec/newwebuser
+dcc/libexec/rcDCC
+dcc/libexec/start-dccd
+dcc/libexec/start-dccifd
+dcc/libexec/start-dccm
+dcc/libexec/start-grey
+dcc/libexec/stats-get
+dcc/libexec/stop-dccd
+dcc/libexec/updatedcc
+dcc/libexec/uninstalldcc
+dcc/libexec/wlist
+man/man8/cdcc.8.gz
+man/man8/dbclean.8.gz
+man/man8/dblist.8.gz
+man/man8/dcc.8.gz
+man/man8/dccd.8.gz
+man/man8/dccifd.8.gz
+man/man8/dccm.8.gz
+man/man8/dccproc.8.gz
+man/man8/dccsight.8.gz
+@dirrm dcc/libexec
+@dirrm dcc/cgi-bin
+%%ALT_HOME%%@dirrmtry dcc
+%%ALT_HOME%%@cwd /var
+@owner %%DCCUSER%%
+@group %%DCCGROUP%%
+@sample dcc/dcc_conf.sample
+@sample dcc/flod.sample
+@sample dcc/grey_flod.sample
+@sample dcc/grey_whitelist.sample
+@sample dcc/ids.sample
+@sample dcc/map.txt.sample
+@sample dcc/map.sample
+@sample dcc/whiteclnt.sample
+@sample dcc/whitecommon.sample
+@sample dcc/whitelist.sample
+%%IFD_MILT%%@unexec [ -e %D/dcc/whiteclnt.dccw ] && rm -f %D/dcc/whiteclnt.dccw || true
+%%IFD_MILT%%@unexec [ -e %D/dcc/whiteclnt.dccx ] && rm -f %D/dcc/whiteclnt.dccx || true
+%%DCCD%%@unexec [ -e %D/dcc/dcc_db ] && rm -f %D/dcc/dcc_db || true
+%%DCCD%%@unexec [ -e %D/dcc/dcc_db.hash ] && rm -f %D/dcc/dcc_db.hash || true
+%%DCCD%%@unexec [ -e %D/dcc/flod.map ] && rm -f %D/dcc/flod.map || true
+%%DCCD%%@unexec [ -e %D/dcc/dccd_clients ] && rm -f %D/dcc/dccd_clients || true
+%%DCCGREY%%@unexec [ -e %D/dcc/grey_db.hash ] && rm -f %D/dcc/grey_db.hash || true
+%%DCCGREY%%@unexec [ -e %D/dcc/grey_flod.map ] && rm -f %D/dcc/grey_flod.map || true
+%%DCCGREY%%@unexec [ -e %D/dcc/grey_clients ] && rm -f %D/dcc/grey_clients || true
+@dirrmtry dcc/log
+%%NO_ALT_HOME%%@group wheel
+%%NO_ALT_HOME%%@owner root
+@dirrmtry dcc
+%%ALT_HOME%%@group wheel
+%%ALT_HOME%%@owner root
diff --git a/mail/spamassassin/Makefile b/mail/spamassassin/Makefile
index 7e1b1a319ca6..946a125887d7 100644
--- a/mail/spamassassin/Makefile
+++ b/mail/spamassassin/Makefile
@@ -49,7 +49,7 @@ CONFIGURE_ARGS= SYSCONFDIR="${PREFIX}/etc" \
OPTIONS_DEFINE= AS_ROOT GNUPG SSL UPDATE_AND_COMPILE
OPTIONS_GROUP= DATABASE PLUGINS
OPTIONS_GROUP_DATABASE= MYSQL PGSQL
-OPTIONS_GROUP_PLUGINS= DKIM PYZOR RAZOR RELAY_COUNTRY SPF_QUERY
+OPTIONS_GROUP_PLUGINS= DCC DKIM PYZOR RAZOR RELAY_COUNTRY SPF_QUERY
OPTIONS_DEFAULT= AS_ROOT GNUPG SSL UPDATE_AND_COMPILE
AS_ROOT_DESC= Run spamd as root (recommended)
@@ -60,6 +60,7 @@ UPDATE_AND_COMPILE_DESC=Download and compile rulesets (recommended)
DATABASE_DESC= Optional user-config/bayes database backends
PLUGINS_DESC= Optional SpamAssassin plugins
+DCC_DESC= DCC digest list support (mail/dcc-dccd)
DKIM_DESC= Verify DKIM records (mail/p5-Mail-DKIM)
PYZOR_DESC= Pyzor digest list support (mail/pyzor)
RAZOR_DESC= Vipul's Razor digest list support (mail/razor-agents)
@@ -71,6 +72,7 @@ SUB_LIST+= SPAMD_OWN="${USERS}:${GROUPS}"
PLIST_SUB+= USER=${USERS} GROUP=${GROUPS}
OPTIONS_SUB= yes
+DCC_RUN_DEPENDS= dcc-dccd>=1.3.111:${PORTSDIR}/mail/dcc-dccd
DKIM_RUN_DEPENDS= p5-IO-Socket-SSL>=0:${PORTSDIR}/security/p5-IO-Socket-SSL \
p5-Mail-DKIM>=0.37:${PORTSDIR}/mail/p5-Mail-DKIM \
p5-Crypt-OpenSSL-RSA>=0.26_1:${PORTSDIR}/security/p5-Crypt-OpenSSL-RSA
@@ -88,6 +90,7 @@ SSL_CONFIGURE_ON= ENABLE_SSL=yes
SSL_CONFIGURE_OFF= ENABLE_SSL=no
# plugin names in rules/*.pre, for enabling/disabling
+DCC_INITVAR= DCC
DKIM_INITVAR= DKIM
PYZOR_INITVAR= Pyzor
RAZOR_INITVAR= Razor2