aboutsummaryrefslogtreecommitdiffstats
path: root/mail/dcc-dccd
diff options
context:
space:
mode:
authordhn <dhn@FreeBSD.org>2009-06-16 03:10:40 +0800
committerdhn <dhn@FreeBSD.org>2009-06-16 03:10:40 +0800
commit04dd895dc385587a71d9b360d688db3bfe3dc88d (patch)
tree32d3f79fbbebc5e854abbeccd3b5854575d43a92 /mail/dcc-dccd
parent7c44268f0aea505795bd6ccd27ab27c33d08560d (diff)
downloadfreebsd-ports-gnome-04dd895dc385587a71d9b360d688db3bfe3dc88d.tar.gz
freebsd-ports-gnome-04dd895dc385587a71d9b360d688db3bfe3dc88d.tar.zst
freebsd-ports-gnome-04dd895dc385587a71d9b360d688db3bfe3dc88d.zip
- Update to 1.3.108
PR: ports/135598 Submitted by: Craig Green <cgreen@sentex.net> (maintainer)
Diffstat (limited to 'mail/dcc-dccd')
-rw-r--r--mail/dcc-dccd/Makefile26
-rw-r--r--mail/dcc-dccd/distinfo6
-rw-r--r--mail/dcc-dccd/files/pkg-message.in8
-rw-r--r--mail/dcc-dccd/pkg-descr4
-rw-r--r--mail/dcc-dccd/pkg-install18
-rw-r--r--mail/dcc-dccd/pkg-plist34
6 files changed, 73 insertions, 23 deletions
diff --git a/mail/dcc-dccd/Makefile b/mail/dcc-dccd/Makefile
index abfa4ff510cd..cbf76db1aba2 100644
--- a/mail/dcc-dccd/Makefile
+++ b/mail/dcc-dccd/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= dcc-dccd
-PORTVERSION= 1.3.103
+PORTVERSION= 1.3.108
CATEGORIES= mail
MASTER_SITES= http://www.dcc-servers.net/dcc/source/old/ \
http://www.rhyolite.com/anti-spam/dcc/source/old/ \
@@ -49,9 +49,9 @@ USE_RC_SUBR=
# 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 \
+ DCCM "DCC milter (for Sendmail only)" on \
+ DCCD "DCC server" on \
+ DCCGREY "DCC greylisting server" on \
IPV6 "IPv6 support" on \
ALT_HOME "DCC home in /var/dcc" off \
PORTS_SENDMAIL "Use base Sendmail if off, ports if on" off
@@ -63,6 +63,8 @@ DCCUID?= 112
DCCGROUP?= dcc
DCCGID?= 112
+PLIST_SUB+= DCCUSER="${DCCUSER}"
+
## Use the configure script to explicitly set the locations of all files,
## in case the standard locations have been locally overridden
#
@@ -76,15 +78,17 @@ SUB_LIST+= WRKSRC=${WRKSRC}
## /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
+CONFIGURE_ARGS+= --libexecdir=${PREFIX}/dcc/libexec --with-cgibin=${PREFIX}/dcc/cgi-bin
+DCCHOME= /var/dcc
PLIST_SUB+= WITH_ALT_HOME=""
.else
-CONFIGURE_ARGS+= --homedir=${PREFIX}/dcc
-SUB_LIST+= DCCHOME=${PREFIX}/dcc
+DCCHOME= ${PREFIX}/dcc
PLIST_SUB+= WITH_ALT_HOME="@comment "
.endif
+SUB_LIST+= DCCHOME=${DCCHOME}
+CONFIGURE_ARGS+= --homedir=${DCCHOME}
+
## dccm milter support
#
.if defined(WITH_DCCM)
@@ -192,11 +196,7 @@ 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
+ @${CHOWN} ${DCCUSER} ${DCCHOME}/*
## Print DCC installation notes and RESTRICTIONS file info
#
diff --git a/mail/dcc-dccd/distinfo b/mail/dcc-dccd/distinfo
index 8e9aa2eb0d1a..d410938d1331 100644
--- a/mail/dcc-dccd/distinfo
+++ b/mail/dcc-dccd/distinfo
@@ -1,3 +1,3 @@
-MD5 (dcc-1.3.103.tar.Z) = 58a875c8640111a7910660008e4a0944
-SHA256 (dcc-1.3.103.tar.Z) = 2cd817db118df77c7c5b49e3d7d519737a9b49aaadcd70eba43b4ec123094cb7
-SIZE (dcc-1.3.103.tar.Z) = 1456266
+MD5 (dcc-1.3.108.tar.Z) = 521b95c12fdb2c1a01ca6f96a3559ca6
+SHA256 (dcc-1.3.108.tar.Z) = 8f759074c49d1a2a52ae314a2d4a5f313549d8fd88390f3de28ac567ec9fc5fa
+SIZE (dcc-1.3.108.tar.Z) = 1561191
diff --git a/mail/dcc-dccd/files/pkg-message.in b/mail/dcc-dccd/files/pkg-message.in
index 06aef0864970..091c017ced01 100644
--- a/mail/dcc-dccd/files/pkg-message.in
+++ b/mail/dcc-dccd/files/pkg-message.in
@@ -11,10 +11,16 @@ 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
+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
diff --git a/mail/dcc-dccd/pkg-descr b/mail/dcc-dccd/pkg-descr
index 0a63cbe0bbbb..a5fb728c76f2 100644
--- a/mail/dcc-dccd/pkg-descr
+++ b/mail/dcc-dccd/pkg-descr
@@ -7,7 +7,3 @@ Also included are utilities such as cdcc and all of the manual pages
and documentation.
WWW: http://www.rhyolite.com/dcc/
-
-- Dean
-
-dean@odyssey.apana.org.au
diff --git a/mail/dcc-dccd/pkg-install b/mail/dcc-dccd/pkg-install
index b87b29ee9498..18f998043c3d 100644
--- a/mail/dcc-dccd/pkg-install
+++ b/mail/dcc-dccd/pkg-install
@@ -7,6 +7,7 @@ DCCUSER=%%DCCUSER%%
DCCUID=%%DCCUID%%
DCCGROUP=%%DCCGROUP%%
DCCGID=%%DCCGID%%
+DCCHOME=%%DCCHOME%%
if [ "$2" = "PRE-INSTALL" ]; then
@@ -21,7 +22,7 @@ if [ "$2" = "PRE-INSTALL" ]; then
if ! pw usershow "$DCCUSER" 2>/dev/null 1>&2; then
if pw useradd $DCCUSER -u $DCCUID -g $DCCGROUP -h - \
- -s "/sbin/nologin" -d "/nonexistent" \
+ -s "/sbin/nologin" -d "$DCCHOME" \
-c "Distributed Checksum Clearinghouse"; \
then
echo "=> Added user \"$DCCUSER\"."
@@ -30,7 +31,22 @@ if [ "$2" = "PRE-INSTALL" ]; then
exit 1
fi
fi
+elif [ "$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/pkg-plist b/mail/dcc-dccd/pkg-plist
index a0e41a1f93d9..5c647381238d 100644
--- a/mail/dcc-dccd/pkg-plist
+++ b/mail/dcc-dccd/pkg-plist
@@ -4,6 +4,7 @@ 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/footer
dcc/cgi-bin/header
@@ -11,6 +12,7 @@ dcc/cgi-bin/http2https
dcc/cgi-bin/list-log
dcc/cgi-bin/list-msg
dcc/cgi-bin/webuser-notify
+dcc/libexec/check_ip_range
dcc/libexec/cron-dccd
%%WITH_DCCIFD%%dcc/libexec/dccifd
%%WITH_DCCM%%dcc/libexec/dccm
@@ -26,6 +28,7 @@ dcc/libexec/dccsight
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
@@ -48,27 +51,54 @@ dcc/libexec/wlist
%%WITH_DCCD%%@stopdaemon dccd
%%WITH_DCCGREY%%@stopdaemon dccgrey
%%WITH_ALT_HOME%%@cwd /var
+@comment -------------------------
+@comment The next group of three-line sets install/remove the config files
+@comment
+@comment **** on uninstall, delete the config file if it matches the sample file
@unexec if cmp -s %D/dcc/dcc_conf %D/dcc/dcc_conf.sample; then rm -f %D/dcc/dcc_conf; fi
+@comment
+@comment **** the sample file is unilaterally installed/removed
dcc/dcc_conf.sample
+@comment
+@comment **** on install, the config file is created from the sample file if it doesn't exist
@exec [ -f %B/dcc_conf ] || cp %B/%f %B/dcc_conf
+@comment
@unexec if cmp -s %D/dcc/flod %D/dcc/flod.sample; then rm -f %D/dcc/flod; fi
dcc/flod.sample
+@exec [ -f %B/flod ] || cp %B/%f %B/flod
+@comment
@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
+@exec [ -f %B/grey_flod ] || cp %B/%f %B/grey_flod
+@comment
@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
+@exec [ -f %B/grey_whitelist ] || cp %B/%f %B/grey_whitelist
+@comment
@unexec if cmp -s %D/dcc/ids %D/dcc/ids.sample; then rm -f %D/dcc/ids; fi
dcc/ids.sample
+@exec [ -f %B/ids ] || cp -p %B/%f %B/ids
+@comment
@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
+@exec [ -f %B/map.txt ] || cp -p %B/%f %B/map.txt
+@comment
@unexec if cmp -s %D/dcc/map %D/dcc/map.sample; then rm -f %D/dcc/map; fi
dcc/map.sample
+@exec [ -f %B/map ] || cp -p %B/%f %B/map
+@comment
@unexec if cmp -s %D/dcc/whiteclnt %D/dcc/whiteclnt.sample; then rm -f %D/dcc/whiteclnt; fi
dcc/whiteclnt.sample
+@exec [ -f %B/whiteclnt ] || cp %B/%f %B/whiteclnt
+@comment
@unexec if cmp -s %D/dcc/whitecommon %D/dcc/whitecommon.sample; then rm -f %D/dcc/whitecommon; fi
dcc/whitecommon.sample
+@exec [ -f %B/whitecommon ] || cp %B/%f %B/whitecommon
+@comment
@unexec if cmp -s %D/dcc/whitelist %D/dcc/whitelist.sample; then rm -f %D/dcc/whitelist; fi
dcc/whitelist.sample
+@exec [ -f %B/whitelist ] || cp %B/%f %B/whitelist
+@comment
%%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
@@ -78,5 +108,7 @@ dcc/whitelist.sample
%%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
+@exec mkdir -p %D/dcc/log
+@exec chown -R %%DCCUSER%% %D/dcc
+@dirrmtry dcc/log
@dirrmtry dcc