ports/113270: mail/p5-Mail-SpamAssassin: periodic script to update rules
NIIMI Satoshi
sa2c at sa2c.net
Sun Jun 3 00:10:05 UTC 2007
>Number: 113270
>Category: ports
>Synopsis: mail/p5-Mail-SpamAssassin: periodic script to update rules
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sun Jun 03 00:10:04 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: NIIMI Satoshi
>Release: FreeBSD 6.2-RELEASE-p5 i386
>Organization:
>Environment:
System: FreeBSD berkeley.l.sa2c.net 6.2-RELEASE-p5 FreeBSD 6.2-RELEASE-p5 #1: Thu May 24 05:05:36 JST 2007 root at berkeley.l.sa2c.net:/usr/obj/usr/src/sys/GENERIC i386
>Description:
This PR adds a daily periodic script to run "sa-update" to fetch updated
rules. (disabled by default)
This PR also adds a reload command to rc script so that updated rules
are reloaded gracefully.
>How-To-Repeat:
>Fix:
Please note to run "cvs add files/350.sa-update.in" before commit.
--- sa.diff begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/mail/p5-Mail-SpamAssassin/Makefile,v
retrieving revision 1.106
diff -u -r1.106 Makefile
--- Makefile 2 Jun 2007 07:09:46 -0000 1.106
+++ Makefile 2 Jun 2007 23:41:05 -0000
@@ -7,6 +7,7 @@
PORTNAME= Mail-SpamAssassin
PORTVERSION= 3.2.0
+PORTREVISION= 1
CATEGORIES= mail perl5
MASTER_SITES= ${MASTER_SITE_APACHE:S/$/:apache/} ${MASTER_SITE_PERL_CPAN:S/$/:cpan/}
MASTER_SITE_SUBDIR= spamassassin/source/:apache Mail/:cpan
@@ -47,6 +48,8 @@
SPF_QUERY "Add SPF query support" off \
RELAY_COUNTRY "Relay country support" off
+SUB_FILES= 350.sa-update
+
.include <bsd.port.pre.mk>
.if defined (WITH_SPAMC)
@@ -237,6 +240,9 @@
@[ -f ${PREFIX}/etc/mail/spamassassin/v320.pre ] || \
${CP} ${PREFIX}/etc/mail/spamassassin/v320.pre.sample \
${PREFIX}/etc/mail/spamassassin/v320.pre
+ @${MKDIR} ${PREFIX}/etc/periodic/daily
+ @${INSTALL_SCRIPT} ${WRKDIR}/350.sa-update \
+ ${PREFIX}/etc/periodic/daily/350.sa-update
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR} ${DOCSDIR}/sql ${DOCSDIR}/ldap
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/mail/p5-Mail-SpamAssassin/pkg-plist,v
retrieving revision 1.38
diff -u -r1.38 pkg-plist
--- pkg-plist 2 Jun 2007 07:09:46 -0000 1.38
+++ pkg-plist 2 Jun 2007 23:43:35 -0000
@@ -20,6 +20,7 @@
@unexec if cmp -s %B/v320.pre.sample %B/v320.pre; then rm -f %B/v320.pre; fi
etc/mail/spamassassin/v320.pre.sample
@exec [ -f %B/v320.pre ] || cp %B/%f %B/v320.pre
+etc/periodic/daily/350.sa-update
%%SITE_PERL%%/Mail/SpamAssassin.pm
%%SITE_PERL%%/Mail/SpamAssassin/AICache.pm
%%SITE_PERL%%/Mail/SpamAssassin/ArchiveIterator.pm
@@ -181,6 +182,8 @@
@dirrm %%SITE_PERL%%/Mail/SpamAssassin/Bayes
@dirrm %%SITE_PERL%%/Mail/SpamAssassin
@dirrmtry %%SITE_PERL%%/Mail
+ at dirrmtry etc/periodic/daily
+ at dirrmtry etc/periodic
@dirrmtry etc/mail/spamassassin
@dirrmtry etc/mail
@dirrmtry /var/run/spamd
Index: files/350.sa-update.in
===================================================================
RCS file: files/350.sa-update.in
diff -N files/350.sa-update.in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ files/350.sa-update.in 2 Jun 2007 23:12:14 -0000
@@ -0,0 +1,31 @@
+#! /bin/sh
+#
+# $FreeBSD$
+#
+# Update SpamAssassin rules.
+
+# If there is a global system configuration file, suck it in.
+#
+if [ -r /etc/defaults/periodic.conf ]
+then
+ . /etc/defaults/periodic.conf
+ source_periodic_confs
+fi
+
+rc=0
+case "$daily_sa_update_enable" in
+ [Yy][Ee][Ss])
+ if [ ! -x %%PREFIX%%/bin/sa-update ]; then
+ echo '$daily_sa_update_enable is set but sa-update does not exist'
+ rc=2
+ else
+ echo ''
+ echo 'Updating SpamAssassin rules:'
+ if %%PREFIX%%/bin/sa-update; then
+ %%PREFIX%%/etc/rc.d/sa-spamd reload || rc=1
+ fi
+ fi
+ ;;
+esac
+
+exit $rc
Index: files/sa-spamd.sh.in
===================================================================
RCS file: /home/ncvs/ports/mail/p5-Mail-SpamAssassin/files/sa-spamd.sh.in,v
retrieving revision 1.1
diff -u -r1.1 sa-spamd.sh.in
--- files/sa-spamd.sh.in 20 Mar 2006 13:03:33 -0000 1.1
+++ files/sa-spamd.sh.in 2 Jun 2007 22:27:35 -0000
@@ -31,6 +31,7 @@
command=%%PREFIX%%/bin/spamd
command_args="-d -r ${pidfile}"
required_dirs=%%PREFIX%%/share/spamassassin
+extra_commands="reload"
stop_postcmd=stop_postcmd
--- sa.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list