ports/141954: [PATCH] mail/dspam update to 3.9.0-RC

ismail yenigul ismail.yenigul at endersys.com.tr
Thu Dec 24 16:10:02 UTC 2009


>Number:         141954
>Category:       ports
>Synopsis:       [PATCH]  mail/dspam update to 3.9.0-RC
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Dec 24 16:10:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     ismail yenigul
>Release:        FreeBSD 6.3-RELEASE
>Organization:
Endersys Ltd 
>Environment:
FreeBSD labs.endersys.net 6.3-RELEASE-p10 FreeBSD 6.3-RELEASE-p10 #4: Tue Jul 14 12:37:31 EEST 2009     root at labs.endersys.net:/usr/src/sys/amd64/compile/SURGATE.amd64  amd64

>Description:
Update dspam-3.9.0-RC
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -ruN dspam.orig/Makefile dspam/Makefile
--- dspam.orig/Makefile	2009-08-02 22:34:32.000000000 +0300
+++ dspam/Makefile	2009-12-24 17:54:01.000000000 +0200
@@ -1,39 +1,26 @@
-# New ports collection makefile for:	dspam
-# Date created:				3 August 2003
-# Whom:					Dominic Marks <dom at wirespeed.org.uk>
+# New ports collection makefile for:    dspam
+# Date created:                         3 August 2003
+# Whom:                                 Dominic Marks <dom at wirespeed.org.uk>
 #
 # $Tecnik: ports/mail/dspam/Makefile,v 1.18 2006/06/07 23:40:55 itetcu Exp $
 # $FreeBSD: ports/mail/dspam/Makefile,v 1.73 2009/08/02 19:34:32 mezz Exp $
 #
 
 # Note to commiters: If don't commit a maintainer patch and as a result PKGNAME
-# or user variables (WITH*) changes please add an entry in ${FILESDIR}/UPDATING
-# Thanks.
+# or user variables (WITH*) changes please add an entry in ${FILESDIR}/UPDATING and
+# modify _UPD_LINE_NO=(no_of_added_lines-1) in this Makefile.
+# Else the port will be broken. Thanks.
 
 PORTNAME=	dspam
-PORTVERSION=	${PORTVER_MAJ}${SNAP_DATE}
-PORTREVISION=	5
+PORTVERSION=	3.9.0.r2
+PORTREVISION=	1
+PORTEPOCH=	1
 CATEGORIES=	mail
-MASTER_SITES=	# set later
+MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION:S/.r/-RC/}
+DISTNAME=	${PORTNAME}-${PORTVERSION:S/.r/-RC/}
 
 MAINTAINER=	itetcu at FreeBSD.org
-COMMENT=	Bayesian spam filter - stable maintenance version
-
-PORTVER_MAJ=	3.6.8
-#SNAP_DATE=	.20060421.2101
-
-MIN_OPTIONS_VER=	${PORTNAME}-3.6.8_1
-
-.ifdef(SNAP_DATE)
-MASTER_SITES=	http://T32.TecNik93.com/FreeBSD/ports/${PORTNAME}/sources/
-WRKSRC=		${WRKDIR}/dspam-${SNAP_DATE}
-.else
-MASTER_SITES=	http://dspam.irontec.com/sources/ \
-	http://dspam.nuclearelephant.com/sources/ \
-	http://dspam.systemadministrator.org/sources/ \
-	http://dspam.sourceforge.net/sources/ \
-	http://T32.TecNik93.com/FreeBSD/ports/${PORTNAME}/sources/
-.endif
+COMMENT=	Bayesian spam filter - development version
 
 ## debug / log / admin options
 OPTIONS=	SYSLOG "Logs via syslog" on
@@ -50,18 +37,16 @@
 #
 OPTIONS+=	MYSQL40 "Use MySQL 4.0.x as back-end" off
 OPTIONS+=	MYSQL41 "Use MySQL 4.1.x as back-end" off
-OPTIONS+=	MYSQL50 "Use MySQL 5.0.x as back-end" on
-OPTIONS+=	MYSQL51 "Use MySQL 5.1.x as back-end" off
-OPTIONS+=	MYSQL_COMPRESS "Compress dspam <--> MySQL" off
+OPTIONS+=	MYSQL50 "Use MySQL 5.0.x as back-end" off
+OPTIONS+=	MYSQL51 "Use MySQL 5.1.x as back-end" on
 OPTIONS+=	MYSQL_LOCAL "RUN_DEPEND on selected MySQL server ver." off
 OPTIONS+=	POSTGRESQL "Use PostgreSQL as back-end" on
 OPTIONS+=	POSTGRESQL_LOCAL "RUN_DEPEND on PostgreSQL server" off
-OPTIONS+=	ORACLE "Use Oracle as back-end (BROKEN)" off
 OPTIONS+=	SQLITE2 "Use SQLite v2.x as back-end" off
 OPTIONS+=	SQLITE3 "Use SQLite v3.x as back-end" on
 OPTIONS+=	HASH "Use hash driver" on
 #
-OPTIONS+=	LDAP "Enable recipient verification via LDAP" off
+OPTIONS+=	EXTERNAL_LOOKUP "Enable rcpt verification via extlookup" off
 
 # layout
 OPTIONS+=	USER_HOMEDIR "Store user data in ~/.dspam" off
@@ -74,7 +59,7 @@
 ## MTA and LDA
 OPTIONS+=	CYRUS21_LDA "Use Cyrus's 2.1 deliver as LDA" off
 OPTIONS+=	CYRUS22_LDA "Use Cyrus's 2.2 deliver as LDA" off
-OPTIONS+=	CYRUS23_LDA "Use Cyrus's 2.3 deliver as LDA" off
+OPTIONS+=       CYRUS23_LDA "Use Cyrus's 2.3 deliver as LDA" off
 OPTIONS+=	EXIM_LDA "Use Exim as local delivery agent" off
 OPTIONS+=	MAILDROP_LDA "Use Maildrop as local delivery agent" off
 OPTIONS+=	PROCMAIL_LDA "Use Procmail as local delivery agent" off
@@ -93,10 +78,10 @@
 USE_LDCONFIG=	yes
 GNU_CONFIGURE=	yes
 #CONFIGURE_ENV=	LDFLAGS="-L${LOCALBASE}/lib"
-CONFIGURE_ENV=	CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" \
-		CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
-		LDFLAGS="-L${LOCALBASE}/lib" \
-		LIBS="-L${LOCALBASE}/lib ${PTHREAD_LIBS}"
+#CONFIGURE_ENV=	CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" \
+#		CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
+#		LDFLAGS="-L${LOCALBASE}/lib" \
+#		LIBS="-L${LOCALBASE}/lib ${PTHREAD_LIBS}"
 
 .ifdef(GDBS)
 CFLAGS+=	-g -DDEBUG
@@ -105,15 +90,14 @@
 
 PKGMESSAGE=	 ${WRKSRC}/src/README.FreeBSD
 
-CONFLICTS=	dspam-devel-[0-9]*
-
+CONFLICTS=      dspam-devel-[0-9]*
 SIGNATURE_LIFE?=	15
 
 _VAR_DIR=	/var
 LOG_DIR?=	${_VAR_DIR}/log/dspam
 LOGFILE?=	${LOG_DIR}/dspam.log
 
-DSPAM_MODE?=	4510
+DSPAM_MODE?=	2510
 DSPAM_OWNER?=	root
 DSPAM_GROUP?=	mail
 
@@ -150,7 +134,7 @@
 .ifndef(WITHOUT_SYSLOG)
 CONFIGURE_ARGS+=	--enable-syslog
 .else
-CONFIGURE_ARGS+=	--disable-syslog
+CONFIGURE_ARGS+=	--enable-syslog=no
 CONFIGURE_ARGS+=	--with-logfile=${LOGFILE}
 .endif
 
@@ -200,8 +184,6 @@
 
 # we need to know if we are building statically or dynamicaly for the plist
 _DBDRV_COUNT=	# blank, but defined so we can check against it
-#_DBDRV_ALL=	pgsql_drv,ora_drv,sqlite3_drv,sqlite_drv,hash_drv,mysql_drv
-# above won't work because ORACLE support is broken so
 _DBDRV=		pgsql_drv,sqlite3_drv,sqlite_drv,hash_drv,mysql_drv,
 
 .ifndef(WITHOUT_POSTGRESQL)
@@ -222,16 +204,6 @@
 _DBDRV:=	${_DBDRV:S/pgsql_drv,//}
 .endif
 
-.if defined(WITH_ORACLE)
-#BUILD_DEPENDS=	${LOCALBASE}/oracle7/rdbms/lib/libnlsrtl3.a:\
-#	${PORTSDIR}/databases/oracle7-client
-#CONFIGURE_ARGS+=	--with-oracle-home=	${LOCALBASE}/oracle7
-#PKGNAMESUFFIX=	-oracle
-#_DBDRV_COUNT:=	${_DBDRV_COUNT}o
-#.else
-#_DBDRV:=	${_DBDRV:S/ora_drv,//}
-.endif
-
 .ifndef(WITHOUT_SQLITE3)
 USE_SQLITE=	3
 _DBDRV_COUNT:=	${_DBDRV_COUNT}o
@@ -284,9 +256,6 @@
 		--with-mysql-libraries=${LOCALBASE}/lib/mysql
 PLIST_SUB+=	MYSQL=""
 _DBDRV_COUNT:=	${_DBDRV_COUNT}o
-.	if defined(WITH_MYSQL_COMPRESS)
-CONFIGURE_ARGS+=	--enable-client-compression
-.	endif
 .	if defined(WITH_MYSQL_LOCAL)
 RUN_DEPENDS+=	mysql-server>=0:${PORTSDIR}/databases/mysql${WANT_MYSQL_VER}-server
 SUB_LIST+=	MYSQL=mysql
@@ -307,8 +276,8 @@
 PLIST_SUB+=	DYNAMIC="@comment "
 .endif
 
-.ifdef(WITH_LDAP)
-CONFIGURE_ARGS+=	--enable-ldap
+.ifdef(WITH_EXTERNAL_LOOKUP)
+CONFIGURE_ARGS+=	--enable-external-lookup
 USE_OPENLDAP=	YES
 #CPPFLAGS+=	-I${LOCALBASE}/include
 #LDFLAGS+=	-lldap -llber
@@ -439,8 +408,8 @@
 _SED_SCRIPT+=	-e '/%%CGI%%/D'
 .endif
 
-MAN1=	dspam.1 dspam_clean.1 dspam_dump.1 dspam_merge.1 dspam_stats.1 \
-	dspam_train.1
+MAN1=	dspam.1 dspam_clean.1 dspam_dump.1 dspam_merge.1 \
+	dspam_stats.1 dspam_train.1
 MAN3=	libdspam.3
 MLINKS=		libdspam.3 dspam_init.3
 MLINKS+=	libdspam.3 dspam_create.3
@@ -452,37 +421,37 @@
 MLINKS+=	libdspam.3 dspam_detach.3
 
 _DOCS=	CHANGELOG LICENSE README README.FreeBSD RELEASE.NOTES UPGRADING
-_DOCSL=	courier.txt exim.txt markov.txt mysql_drv.txt ora_drv.txt \
-	pgsql_drv.txt pop3filter.txt postfix.txt qmail.txt relay.txt \
-	sendmail.txt sqlite_drv.txt
+_DOCSL=	courier.txt exim.txt markov.txt mysql_drv.txt pgsql_drv.txt\
+	pop3filter.txt postfix.txt qmail.txt relay.txt sendmail.txt \
+	sqlite_drv.txt
 
 pre-everything::
-.ifndef(MAINT)
-	@${ECHO_CMD} ""
-	@${ECHO_CMD} "Last ${FILESDIR}/UPDATING entry:"
-	@${ECHO_CMD} "###########################################################################"
-	@${SED} -n < ${FILESDIR}/UPDATING "/^# ${PKGNAME}/,/^#####/p"
-	@${ECHO_CMD} ""
-	@sleep 5
-.endif
+#.ifndef(MAINT)
+#	@${ECHO_CMD} ""
+#	@${ECHO_CMD} "Last ${FILESDIR}/UPDATING entry:"
+#	@${ECHO_CMD} "###########################################################################"
+#	@${SED} -n < ${FILESDIR}/UPDATING "/^# ${PKGNAME}/,/^#####/p"
+#	@${ECHO_CMD} ""
+#	@sleep 5
+#.endif
 
-pre-extract:	check-options-version
+pre-extract:
 .ifndef(MAINT)
 	@${ECHO_CMD} ""
 	@${ECHO_CMD} "Define vars below before make-ing if you need:"
 	@${ECHO_CMD} ""
-	@${ECHO_CMD} "SIGNATURE_LIFE=${SIGNATURE_LIFE} (default 15)"
-	@${ECHO_CMD} "DSPAM_OWNER=${DSPAM_OWNER} (default: root)"
-	@${ECHO_CMD} "DSPAM_GROUP=${DSPAM_GROUP} (default: mail)"
+	@${ECHO_CMD} "SIGNATURE_LIFE=${SIGNATURE_LIFE} default: 15"
+	@${ECHO_CMD} "DSPAM_OWNER=${DSPAM_OWNER} default: root"
+	@${ECHO_CMD} "DSPAM_GROUP=${DSPAM_GROUP} default: mail"
 	@${ECHO_CMD} "DSPAM_MODE=${DSPAM_MODE}"
-	@${ECHO_CMD} "DSPAM_ETC=${DSPAM_ETC} (default: ${LOCALBASE}/etc"
-	@${ECHO_CMD} "DSPAM_HOME=${DSPAM_HOME} (default: ${_VAR_DIR}/db/dspam)"
+	@${ECHO_CMD} "DSPAM_ETC=${DSPAM_ETC} default: ${LOCALBASE}/etc"
+	@${ECHO_CMD} "DSPAM_HOME=${DSPAM_HOME} default: ${_VAR_DIR}/db/dspam"
 	@${ECHO_CMD} "DSPAM_HOME_OWNER=${DSPAM_HOME_OWNER}"
 	@${ECHO_CMD} "DSPAM_HOME_GROUP=${DSPAM_HOME_GROUP}"
-	@${ECHO_CMD} "DSPAM_HOME_MODE=${DSPAM_HOME_MODE} (default: 0770)"
-	@${ECHO_CMD} "LOG_DIR=${LOG_DIR} (default: ${_VAR_DIR}/log/dspam)"
+	@${ECHO_CMD} "DSPAM_HOME_MODE=${DSPAM_HOME_MODE} default: 0770"
+	@${ECHO_CMD} "LOG_DIR=${LOG_DIR} default: ${_VAR_DIR}/log/dspam"
 .	ifdef(WITHOUT_SYSLOG)
-	@${ECHO_CMD} "LOGFILE=${LOGFILE} (default: ${_VAR_DIR}/log/dspam/dspam.log)"
+	@${ECHO_CMD} "LOGFILE=${LOGFILE} default: ${_VAR_DIR}/log/dspam/dspam.log"
 .	endif
 .	ifdef(WITH_CGI)
 		@${ECHO_CMD} "Define CGI_PATH before make-ing if you need the CGI files"
@@ -500,8 +469,6 @@
 		${WRKSRC}/src/tools.mysql_drv/purge-4.1.sql
 	@${REINPLACE_CMD} -e 's|WHERE CURRENT_DATE - created_on > 14;|WHERE CURRENT_DATE - created_on > ${SIGNATURE_LIFE};|' \
 		${WRKSRC}/src/tools.pgsql_drv/purge.sql
-	@${REINPLACE_CMD} -e 's|where SYSDATE-created_on > 14|where SYSDATE-created_on > ${SIGNATURE_LIFE};|' \
-		${WRKSRC}/src/tools.ora_drv/purge.sql
 	@${REINPLACE_CMD} -e "s|where date('now')-date(created_on) > 14;|where date('now')-date(created_on) > ${SIGNATURE_LIFE};|" \
 		${WRKSRC}/src/tools.sqlite_drv/purge-2.sql
 	@${REINPLACE_CMD} -e "s|where julianday('now')-julianday(created_on) > 14;|where julianday('now')-julianday(created_on) > ${SIGNATURE_LIFE};|" \
@@ -521,8 +488,8 @@
 	@${FALSE}
 .endif
 .if defined(WITH_VIRT_USERS) && !(defined(USE_MYSQL) || \
-	!defined(WITHOUT_POSTGRESQL) || defined(WITH_ORACLE) || !defined(WITHOUT_HASH) )
-	@${ECHO_CMD} "You need MySQL, POSTGRESQL, HASH or ORACLE for virtual users."
+	!defined(WITHOUT_POSTGRESQL) || !defined(WITHOUT_HASH) )
+	@${ECHO_CMD} "You need MySQL, POSTGRESQL or HASH for virtual users."
 	@${FALSE}
 .endif
 .if defined(WITH_PREF_EXT) && !( defined(USE_MYSQL) || \
@@ -539,9 +506,9 @@
 	@${ECHO_CMD} "You can compile with only one MySQL version driver."
 	@${FALSE}
 .endif
-.if defined(WITH_LDAP) && !( defined(USE_MYSQL) || \
+.if defined(WITH_EXTERNAL_LOOKUP) && !( defined(USE_MYSQL) || \
 	!defined(WITHOUT_POSTGRESQL) || defined(USE_SQLITE) )
-	@${ECHO_CMD} "You need MySQL, Postgres or SQLITE for LDAP."
+	@${ECHO_CMD} "You need MySQL, Postgres or SQLITE for EXTERNAL_LOOKUP."
 	@${FALSE}
 .endif
 .if defined(WITH_USER_HOMEDIR) && defined(WITH_CGI)
@@ -556,12 +523,6 @@
 	@${ECHO_CMD} "There's no reason to depend on LightHTTPD if you're not using CGI"
 	@${FALSE}
 .endif
-.ifdef(SNAP_DATE)
-	@${ECHO_CMD}
-	@${ECHO_CMD} "You can safely ignore the following auto*  errors"
-	@${ECHO_CMD}
-	@(cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./autogen.sh)
-.endif
 
 post-install:
 	${CP} ${WRKSRC}/src/dspam.conf ${WRKSRC}/src/dspam.conf.sample
@@ -596,11 +557,6 @@
 	cd ${WRKSRC}/src/tools.sqlite_drv && \
 		${INSTALL_DATA} *.sql ${EXAMPLESDIR}/sqlite
 .endif
-.ifdef(WITH_ORACLE)
-	@${MKDIR} ${EXAMPLESDIR}/oracle
-	cd ${WRKSRC}/src/tools.ora_drv && \
-		${INSTALL_DATA} *.sql ${EXAMPLESDIR}/oracle
-.endif
 
 .ifdef(WITH_CGI)
 .	for I in admin.cgi admingraph.cgi configure.pl dspam.cgi graph.cgi
@@ -649,14 +605,4 @@
 	@${ECHO_CMD} "message in ${DOCSDIR}/README.FreeBSD"
 	@${ECHO_CMD}
 
-check-options-version:
-.ifdef(_OPTIONS_READ)
-	@(if ${PKG_VERSION} -t ${_OPTIONS_READ} ${MIN_OPTIONS_VER} | ${GREP} -q '<'; \
-	 then	${ECHO_CMD} ""; \
-		${ECHO_CMD} "===> You have unsupported (old) OPTIONS, please do a 'make config; make'"; \
-		${ECHO_CMD} ""; \
-		exit 1; \
-	 fi)
-.endif
-
 .include <bsd.port.post.mk>
diff -ruN dspam.orig/distinfo dspam/distinfo
--- dspam.orig/distinfo	2006-06-08 02:44:38.000000000 +0300
+++ dspam/distinfo	2009-12-17 14:52:26.000000000 +0200
@@ -1,3 +1,3 @@
-MD5 (dspam-3.6.8.tar.gz) = c4b1a7079690ee16d8b0f36b2a2a90a4
-SHA256 (dspam-3.6.8.tar.gz) = 88c7b41fb81e90ba8a260885a1d14bce39f2ef4a06cc2c6b8bfa0b99ba1aec34
-SIZE (dspam-3.6.8.tar.gz) = 743275
+MD5 (dspam-3.9.0-RC2.tar.gz) = 013dc6700f7c5a757b7a656626b36248
+SHA256 (dspam-3.9.0-RC2.tar.gz) = d8c488c11fe96d73e4c373935a8f5fde15fa816affb0d7514442451ea7515659
+SIZE (dspam-3.9.0-RC2.tar.gz) = 973867
diff -ruN dspam.orig/files/UPDATING dspam/files/UPDATING
--- dspam.orig/files/UPDATING	2006-11-12 17:56:58.000000000 +0200
+++ dspam/files/UPDATING	2009-12-17 10:10:51.000000000 +0200
@@ -1,452 +1,134 @@
-# $Tecnik: ports/mail/dspam/files/UPDATING,v 1.16 2006/06/07 23:45:21 itetcu Exp $
-# $FreeBSD: ports/mail/dspam/files/UPDATING,v 1.28 2006/11/12 15:56:58 itetcu Exp $
-#
-# for each PKGNAME or user option change an entry should be added in this file
-# each entry 
-
-This file documents some of the problems you may encounter when
-upgrading dspam port.  I will try my best to minimize these disruptions,
-but sometimes they are unavoidable.
-
-You should get into the habit of checking this file for changes each
-time before attempting any port upgrade.
-
-This file concetrate on the FreeBSD / port specific changes and one should read
-also the UPGRADING enclosed in the dspam distribution. You can see it by doing
-in the port directory:
-make extract;  more `find . -type f -maxdepth 2 -name UPGRADING`
-
-###########################################################################
-# dspam-3.6.8_1
-#
-
-Port changes:
-- added safecat as LDA [1]
-- give user the possibility to configure where dspam.conf is [1]
-
-[1] patch from Emil Isberg <emil at pyttemjuk.se> [1]
-
-
-###########################################################################
-# dspam-3.6.8
-#
-
-Bugfixes:
-- PostgreSQL fails to connect (always)
-- LDAP client will not build due to header missing from makefile
-
-Port changes:
-- added Cyrus's 2.3 deliver as LDA OPTION (on 2006-10-08) [1]
-
-[1] ports/103910 by Steffen Rick <srick at srick.org>
-
-
-###########################################################################
-# dspam-3.6.7
-#
-
-Bugfixes:
-- Using UIDInSignature, wrong UID is written to message when using groups
-- PostgreSQL driver does not reconnect on failure in daemon mode
-- X-DSPAM-Probability sometimes misreported when multiple algorithms used
-- Agent segfaults when DeliveryHost or ClientHost not specified, --client
-- Agent segfaults on some systems when syslog is used
-- Agent segfaults when dlopen() to storage library fails
-- Infinite loop created when deleting preference, not using extensions
-- ATX (agent context) does not hold enough bits for 'flags' variable
-
-
-###########################################################################
-# dspam-3.6.6
-#
-
-Removed feature:
-- Phased out deprecated Berkeley DB drivers
-- Phased out legacy tools (dspam_corpus, dspam_genaliases)
-Bugfixes:
-- trainPristine preference turned "off" now overrides config turned "on"
-- segfault fix for when correcting messages using UIDInSignature with MySQL
-- when using logfile, write errors result in segfault
-
-
-###########################################################################
-# dspam-3.6.5
-#
-
-New features:
-- support for reading from multiple mysql servers; support for separate
-read/write servers to be used with mysql_drv; see dspam.conf
-- SYSLOG options knob: log to via syslog if "on" or in flat file if "off"
-- dspam_stats: -t for displaying a total of all stats included in the
-original query
-
-Bugfixes:
-- fixed a bug causing --deliver=summary to return no output when used in
-dspamc
-- fixed a segfault which can occur if TrainingMode is not specified in
-dspam.conf
-- invalid read/segfault (dspam.c)
-- segfault on problems establishing connectivity to clamav (dspam.c)
-- segfault on NULL username (mysql_drv.c)
-- bug causing writing of flat-file preferences to fail (pref.c)
-- fragment file overwritten on retrain (cgi)
-- corrects the output of "dspam_admin aggr pref" (tools/dspam_admin.c)
-- prevent quarantining of message when delivering summary
-
-WebUI: a lot of fixes and improvements
-
-PostgeSQL: improvements to purge scripts and object creation script
-
-Port changes:
--------------
-
-Add MySQL 5.1 as backend. [1]
-Default MySQL version is now 5.0
-
-Optionally depend on LightHTTPD instead of Apache if WITH_CGI=on [2]
-
-Add dspam_debug rc.d options (default off): starts dspam with debug
-logging (you need at least WITH_DEBUG).
-
-Fix OPTIONS handling for INDEX (describe); this is a long standing bug
-and a *big* pontyhat for me; it affected _only_ dependecies recorded in
-INDEX _if_ OPTIONS were not set (like for package building); however,
-the package itself was always built right, dependecies recorded OK, etc.
-
-Add SCE-tindy as MASTER_SITE, much faster site that my other server. [3]
-
-Requested by:   Odhiambo WASHINGTON <odhiambo.raburu at wananchi.com> [1]
-Submitted by:   "Daniel S. Haischt"
-                <me at daniel.stefan.haischt.name> [2] (based on)
-My thanks again to Joey Freeland for this machine and the bandwidth [3]
-
-
-###########################################################################
-# dspam-3.6.4
-#
-
-BugFixes:
-- accuracy fixes (esp. for FP dspam is much better that in 3.6.3 release)
-- safeguards for segfault when strange clamav behavior
-- for no output when using --classify in client/server mode
-- LOG_WARNING if truncating MySQL user/pass + plus othersmall fixes
-
-New features:
-- dspam_train: a true training and testing mechanism, useful for building
-pretrained databases or training a user with their own corpus. also provides
-a test jig for measuring efficiency/accuracy with a corpus over a
-configuration; support for training using an index file to define the order
-of ham/spam
-- DeliveryHost for delivery to different hosts based on domain
-- ClassAlias options, useful if classifying things other than spam
-- WebUI: undo option for retraining
-- WebUI: support for existing storeFragments option to recall message in
-history
-- WebUI: mass-retraining option
-- Documentation: of all user preferences in the README
-
-Changed features:
-- dspam-statrs: changed names; now displays TP (true positives),
-TN (true negatives), FN (false negatives), and FP (false positives),
-OCA (Overall Accuracy)
-- dspam_corpus now uses default settings for features and training modes,
-instead of its own and now requires --spam or --nonspam arguments
-- the trainining buffer (Feature tb=n in dspam.conf) is now offby default
-- dspam.conf: HashRec sizes prime numbers for better spread
-- no signature on classify
-- ignore X-DSPAM-* in tokenizer code
-
-Removed features:
-- removed neural networking (NEURAL_NET), which was experimental, needed a
-rewrite, had no support and high maintenance
-
-
-###########################################################################
-# dspam-3.6.3
-#
-
-To manny things to note here, please see mail/dsapm-devel/UPDATING and read
-UPGRADING and CHANGELOG and adjust your dspam.conf accordingly; there are
-NEW DIRECTIVES (see dspam.conf.sample) so if you miss this dspam will have
-bad accuracy or could (possibly) crash.
-- you can now have the database drivers dynamically loaded at run time so
-you can select multiple drivers in the OPTIONS screen; see dspam.conf.
-- also algorithm selection is done exclusively via dspam.conf
-- !!! WARNING !!! MaxMessageSize is also applied to ClamAV virus scanning
-
-
-###########################################################################
-# dspam-3.4.8 (2005-11-17)
-#
-
-fix RUN_DEPENDS for WITH_CGI=on by USE_APACHE=1.3+, no need to upgrade if
-already installed
-
-
-###########################################################################
-# dspam-3.4.8
-#
-
-BUGFIX: File descriptor leaks when connection to delivery host fails
-BUGFIX: Decoding NUL characters causes message truncation
-BUGFIX: Many files not written to group directory when using managed groups
-BUGFIX: Some LDAs/MTAs truncate message when single dots not properly quoted
-BUGFIX: 7BIT encoding contains 8BIT characters
-BUGFIX: Messages to multiple local recipients may fail to decode completely 
-BUGFIX: Delivery of false positives fails in managed groups
-BUGFIX: LMTP/SMTP delivery fails on non-250 2xx response code
-BUGFIX: Messages missing a terminating boundary fail to receive a signature
-
-
-###########################################################################
-# dspam-3.4.6.20050523.0845
-# 
-
-BUGFIX: fix for managed groups where delivery of false positives would fail
-due to the managed group not being recognized
-
-BUGFIX: fixed bug where messages lacking a terminating boundary would fail
-to receive a signature in the message body
-
-
-###########################################################################
-# dspam-3.4.6.20050512.1145
-#
-
-BUGFIX: fixed signature embedding on malformatted boundary bug
-
-
-###########################################################################
-# dspam-3.4.6
-#
-
-- BUG FIX: "obscure" [1] bug causing dspam to crash under certain conditions
-when the loose signature was provided without the appropriate delimiter
-- BUG FIX: fix sqlite3 dependency check [2]
-- BUG FIX: don't strip binary if we want GDB suport
-- BUG FIX: DOMAIN_SCALE and LARGE_SCALE are incompatible so catch this
-before ./cofigure fails [3]
-
-[1] "Obscure" = it took me about 4 hours and a 500 queue processed one by
-one by hand to catch and reproduce the problem after 7 days of mail 
-processing w/o error
-[2] Pointed out by vanilla@
-[3] Pointed out by Arvinn Løkkebakken <arvinn at whitebird.no> for mail/dspam
-
-
-###########################################################################
-# dspam-3.4.5
-#
-
-A lot of things have changed and your existing dspam.conf won't probably
-work anymore. Please compare it with the dspam.conf.sample located in the
-same etc/ directory.
-
-Most notable addition is the SMTP delivery which together with "standard"
-inbound LMTP make a very nice content and light (e.g. it's the fastest setup
-I've had so far) filter.
-
-Database structure is roughly the same but you may wish to check your
-existing database structure with the *.sql corresponding to you database
-driver from EXAMPLESDIR (Mysql 4.1.x is now default as it's _much_ faster).
-Please read carefully distributed docs like README and UPGRADING.
-
-#############################################################################
-# dspam-3.2.8
-#
-
-- BUGFIX: fixed TOE autowhitelist
-
-
-#############################################################################
-# dspam-3.2.7
-#
-
-- BUGFIX: Signature not written to some email, making them untrainable
-
-
-#############################################################################
-# dspam-3.2.6.20050128.1500
-#
-
-- disable ORACLE DB back-end; it's unmaintained and hasn't work on FreeBSD
-- (added post-factum) Fix mysql/neural-combination
-- (added post-factum) change POSTGRESQL* to POSTGRESQL because of "Split the 
-postgresql ports into a server and a client part"
-
-
-#############################################################################
-# dspam-3.2.6
-#
-
-- In v3.2.6, the default level of statistical sedation has been changed from
-5 to 0 (off). This feature is normally overridden by dspam.conf, but if you
-have removed the feature from the default configuration, this may change
-DSPAM's behavior. To ensure that nothing changes in your filter's behavior,
-make sure the following line is in your dspam.conf:
-Feature tb=5
-
-- fix for statisticalSedation ignore
-
-
-#############################################################################
-# dspam-3.2.4
-#
-
-- drop WITH_WHITELIST, is not supported by ./configure but by dspam.conf
-
-[20041203.0800] jonz: performance fixes for pgsql_drv
-minor performance fixed for pgsql_drv that may have a big effect on some
-implementations. you should also consider creating the (unnecessary) index
-below to precent the pgsql query builder from getting confused:
-CREATE INDEX id_token_data_04 ON dspam_token_data(uid);
-
-
-#############################################################################
-# dspam-3.2.3.20041229.1945
-#
-
-- drop QUARANTINE_AGENT as is not supported by ./configure anymore and
-set in dspam.conf UntrustedDeliveryAgent and QuarantineAgent to default to
-TrustedDeliveryAgent, but leave them commented out
-(ports/75548 by Julien Gabel)
-- change default DSPAM_HOME_MODE to 0770
-(ports/75549 by Julien Gabel <jpeg at thilelli.net>)
-- DSPAM_HOME_{OWNER,GROUP} default to DSPAM_{OWNER,GROUP}
-
-
-#############################################################################
-# dspam-3.2.3.20041218.2100_1
-#
-
-- fix installation of SQLite docs and implicitly package 
-(reported by: pointyhat via kris@)
-
-#############################################################################
-# dspam-3.2.3.20041218.2100 (this is really 3.2.3 release)
-#
-
-- change of name: SQLITE --> SQLITE2, as the -devel port already have sqlite3
-support
-- fix deinstall to delete dspam.conf if it hasn't been cutomized, as 
-requested by kris@ with "Ports Janitor" hat :)
-- correct long-standing copy/paste bug DSPAM_{GROUPD,MODE} where set to
-DSPAM_HOME_{GROUP,MODE} 
-
-#############################################################################
-# dspam-3.2.3.20041203.1245_1 (entry added post-factum, it was an automated 
-#                            update approved by me but not under my control )
-#
-
-- chase dependecy for sqlite
-
-#############################################################################
-# dspam-3.2.3.20041203.1245
-#
-
-- now we support also MYSQL50 and we handle MYSQL cases right based on a 
-patch sent by Gea-Suan Lin <gslin at netnews.NCTU.edu.tw>
-- add support for exim as suggested by 
-Shahbaz Javeed <sjaveed at adderpit.com>; we try to build exim with the same
-database back-end if possible (still work to do to automate pg 7.3 case)
-- fix PREF_EXT and BDB4 cases as well in our Makefile (actually is 4.1 and 
-I'm thinking about dropping support for it since SQLite works a lot better if
-you don't want a full sql server; feedback welcome)
-- also small vendor bug-fixes (pgp signed mails, pgsql driver)
-
-#############################################################################
-#  dspam-3.2.3
-#
-
-- important fixes from 3.2.2:
- BUGFIX: DSPAM misreads boundary delimiter in signed Apple Mail messages
- BUGFIX: Signature is not written to multipart blocks with no content type
- BUGFIX: dspam_dump for a particular token fails with MySQL 4.1
- BUGFIX: Bayesian Noise Reduction is never instantiated
-
-#############################################################################
-#  dspam-3.2.2.20041117.1515:
-#
-
-- dspam configuration is now done via dspam.conf
-
-- please remove any OPTION
-
-- the following OPTIONS should be set now in dspam.conf
-OPTION                  .conf name                      def. value
--------------------------------------------------------------------------------
-DSPAM_HOME              Home                            /var/dspam
-WITH_*_LDA              TrustedDeliveryAgent            mail.local
-                        UntrustedDeliveryAgent          /usr/libexec/mail.local d %u
-QUARANTINE_AGENT        QuarantineAgent                 #
-
-WITH_SPAM_SUBJ          Preference "spamAction=tag"     #
-                        Preference "spamSubject=SPAM"   #
-USER_LOGGING            UserLog                         on
-SYSTEM_LOGGING          SystemLog                       on
-WEBMAIL                 TrainPristine                   off
-WITH_OPT_IN             Opt                             out
-SAT                     TrackSources spam ham           #
-PARSE_TO_HEADERS        ParseToHeaders                  on
-BROKEN_MTA              Broken lineStripping            #
-BROKEN_ERR_CODES        Broken returnCodes              #
-SIGNATURE_HEADERS       Preference "signatureLocation=  message" # headers
-
-- the following OPTIONS should does not exist anymore:
-SIGNATURE_ATACH WITH_HOMEDIR_DOT
-
-- the following OPTIONS have their name changed to follow vedor names
-TRAD_BAYES              GRAHAM_BAYES
-ALT_BAYES               BURTON_BAYES
-WITH_SIGNATURE_LIFE     SIGNATURE_LIFE
-
-- new OPTIONS
-OPTION                       port default
-----------------------------------------------
-LOG_DIR                         /var/log/dspam
-WITH_USER_HOMEDIR             
-DSPAM_HOME_OWNER
-DSPAM_HOME_GROUP
-DSPAM_HOME_MODE
-DSPAM_MODE
-DSPAM_OWNER
-DSPAM_GROUP
-
-To upgrade you should:
-
-0. Read docs enclosed with teh dpsam distribution, beginnig with UPGRADING and
-README
-
-1. Adjust your OPTIONs
-( make rmconfig config in dspam port dir, command line, pkg_tools.conf )
-
-2. make VARs.......
-in dspam port dir with appropiate OPTIONS and VARs (see changes above)
-
-3. stop you MTA or deactivate dspam from it
-
-5. make VARs........ install
-
-4.a) If using MySQL 4.0.xx or PostgreSQL:
-- back-up the database
-- use the appropiate migration scripts from files dir of dspam port dir
-( for MySQL you should use 2x_to_3x_db.sql then 310_to_320.my.sql)
-(if using MySQL 4.1.x or 3.xx you're on your own for now; the same for 
-PostgreSQL, but take a look in the UPDATING and 310_to_320.pg.sql)
-
-5. Back-up and them move the files from the old DSPAM_HOME 
-(defaulted: /usr/loca/etc/dspam) to the new DSPAM_HOME (default /var/db/dspam) 
-or where ever you defined DSPAM_HOME in 2 above.
-
-6. Adjust you new dspam.conf according with your setup OPTIONS and VARs defined
-on make / mak install step.
-
-7. Remove the old setup files (you have them in the back-up, right ?)
-
-8. Enable dspam in the MTA setup, but only locally or something and start testing.
-
-If something ain't working is one of:
-- permissions problems (hint: with what UID 
-is dspam called from your MTA vs. DSPAM_HOME and DSPAM_LOG_DIR)
-- something wrong in dspam.conf (hint: you didn't remove old config files 
-and they are still used ?)
+Follow the steps sequentially from the base version you are running up to
+the top.
+
+UPGRADING FROM 3.8
+------------------
+
+1. Ensure MySQL is using the new database schema. The following clauses should
+   be executed for upgrading pre-3.9.0 DSPAM MySQL schema to the 3.9.0 schema:
+     ALTER TABLE `dspam_signature_data`
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL,
+       CHANGE `data` `data` LONGBLOB NOT NULL,
+       CHANGE `length` `length` INT UNSIGNED NOT NULL;
+     ALTER TABLE `dspam_stats`
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL,
+       CHANGE `spam_learned` `spam_learned` BIGINT UNSIGNED NOT NULL,
+       CHANGE `innocent_learned` `innocent_learned` BIGINT UNSIGNED NOT NULL,
+       CHANGE `spam_misclassified` `spam_misclassified` BIGINT UNSIGNED NOT NULL,
+       CHANGE `innocent_misclassified` `innocent_misclassified` BIGINT UNSIGNED NOT NULL,
+       CHANGE `spam_corpusfed` `spam_corpusfed` BIGINT UNSIGNED NOT NULL,
+       CHANGE `innocent_corpusfed` `innocent_corpusfed` BIGINT UNSIGNED NOT NULL,
+       CHANGE `spam_classified` `spam_classified` BIGINT UNSIGNED NOT NULL,
+       CHANGE `innocent_classified` `innocent_classified` BIGINT UNSIGNED NOT NULL;
+     ALTER TABLE `dspam_token_data`
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL,
+       CHANGE `spam_hits` `spam_hits` BIGINT UNSIGNED NOT NULL,
+       CHANGE `innocent_hits` `innocent_hits` BIGINT UNSIGNED NOT NULL;
+
+   If you are using preference extension with DSPAM, then you should execute
+   the following clause for upgrading pre-3.9.0 DSPAM preference MySQL schema
+   to the 3.9.0 schema:
+     ALTER TABLE `dspam_preferences` 
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL;
+
+   If you are using virtual users (with AUTO_INCREMENT) in DSPAM, then you
+   should execute the following clause for upgrading pre-3.9.0 DSPAM virtual
+   uids MySQL schema to the 3.9.0 schema:
+     ALTER TABLE `dspam_virtual_uids`
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL AUTO_INCREMENT;
+
+   If you are using virtual user aliases (aka: DSPAM in relay mode) in DSPAM,
+   then you should execute the following clause for upgrading pre-3.9.0 DSPAM
+   virtual uids MySQL schema to the 3.9.0 schema:
+     ALTER TABLE `dspam_virtual_uids`
+       CHANGE `uid` `uid` INT UNSIGNED NOT NULL;
+
+   If you need to speed up the MySQL purging script and can afford to use more
+   disk space for the DSPAM MySQL data, then consider executing the following
+   clause for adding three additional indices:
+     ALTER TABLE `dspam_token_data`
+       ADD INDEX(`spam_hits`),
+       ADD INDEX(`innocent_hits`),
+       ADD INDEX(`last_hit`); 
+
+2. Ensure PosgreSQL is using the new database schema. The following clauses should
+   be executed for upgrading pre-3.9.0 DSPAM PosgreSQL schema to the 3.9.0 schema:
+     ALTER TABLE dspam_preferences ALTER COLUMN uid TYPE integer;
+     ALTER TABLE dspam_signature_data ALTER COLUMN uid TYPE integer;
+     ALTER TABLE dspam_stats ALTER COLUMN uid TYPE integer;
+     ALTER TABLE dspam_token_data ALTER COLUMN uid TYPE integer;
+     DROP INDEX IF EXISTS id_token_data_sumhits;
+
+   If you are using virtual users in DSPAM, then you should execute the following
+   clause for upgrading pre-3.9.0 DSPAM virtual uids to the 3.9.0 schema:
+     ALTER TABLE dspam_virtual_uids ALTER COLUMN uid TYPE integer;
+
+
+UPGRADING FROM 3.6
+------------------
+
+1. Add 'Tokenizer' setting to dspam.conf
+   The 'Tokenizer' setting in 3.8.0 replaces tokenizer definitions in the 
+   "Feature" clause of previous version configurations. See src/dspam.conf
+   (after make) for more information about this seting.
+ 
+2. Check calls to dspam_logrotate
+   Earlier versions of 3.6 did not prepend a leading "-l" flag to specifying
+   log file selection. This is now required.
+
+3. Ensure 3.6.0 malaligned hash databases are converted
+   Version 3.6.0 failed to align hash databases to 8-byte boundaries. If you
+   are upgrading from v3.6.0 and are using the hash_drv storage driver, you
+   should run cssconvert to upgrade your .css files to a fully aligned format.
+
+4. Invert "SupressWebStats" setting in dspam.conf
+   SupressWebStats has been changed to simply WebStats, and the setting is
+   inverted. Be sure to update this in dspam.conf.
+
+5. Add "ProcessorURLContext" setting in dspam.conf
+   ProcessorURLContext has been added to toggle whether URL specific tokens
+   are created in the tokenizer process. The "on" value is default for previous
+   versions of DSPAM.
+
+6. Follow steps in "UPGRADING FROM 3.8".
+
+
+UPGRADING FROM 3.4
+------------------
+
+Follow all of the steps above, and the following steps:
+
+1. Add "ProcessorBias" setting to dspam.conf
+   ProcessorBias has been added to dspam.conf and must be specified.
+   Since ProcessorBias is the default behavior for previous versions of DSPAM,
+   you will need to add "ProcessorBias on" to dspam.conf. If you have
+   specifically disabled bias, or are using a technique such as Markovian
+   discrimination, you may leave this feature off.
+
+2. Ensure references to SBLQueue are changed to RABLQueue.
+   Older versions of DSPAM used the SBLQueue setting to write files for a 
+   DSPAM SBL setup. This has been renamed to RABLQueue. Please change this in 
+   dspam.conf if you are writing to a SBL/RABL installation.
+
+3. Add "TestConditionalTraining" setting to dspam.conf
+   TestConditionalTraining has been added to dspam.conf and must be specified
+   to be enabled. Since TestConditionalTraining is the default behavior
+   in DSPAM, it is strongly recommended that you add 
+   "TestConditionalTraining on" to dspam.conf
+
+4. Ensure PostgreSQL installation have a lookup_tokens function
+   PostgreSQL systems running v8.0+ must create the function lookup_tokens
+   added to pgsql_objects.sql. The driver now checks your version and uses this
+   function to improve performance on 8.0+.
+
+5. Ensure you are specifying the correct storage driver.
+   hash_drv is now the new default storage driver. hash_drv has no dependencies
+   and is extremely fast/efficient. If you're not familiar with it, you should
+   check out the readme. If you were previously using SQLite, you will now need
+   to specify it as the storage driver: --with-storage-driver=sqlite_drv
+
+   NOTE: Berkeley DB drivers (libdb3_drv, libdb4_drv) are deprecated and have
+         been removed from the build. You will need to select an alternative
+         storage driver in order to upgrade.
+
+6. Follow steps in "UPGRADING FROM 3.6".
diff -ruN dspam.orig/files/dspam.in dspam/files/dspam.in
--- dspam.orig/files/dspam.in	2006-05-05 15:27:34.000000000 +0300
+++ dspam/files/dspam.in	2006-05-13 16:16:08.000000000 +0300
@@ -1,6 +1,5 @@
 #!/bin/sh
-# $FreeBSD: ports/mail/dspam/files/dspam.in,v 1.3 2006/05/05 12:27:34 erwin Exp $
-# formerly $ FreeBSD: ports/mail/dspam/files/dspam,v 1.1 2005/05/05 21:03:37 pav Exp $
+# $FreeBSD: ports/mail/dspam-devel/files/dspam-devel.in,v 1.2 2006/05/13 13:16:08 itetcu Exp $
 #
 
 # PROVIDE: dspam
diff -ruN dspam.orig/files/patch-scripts_train.pl dspam/files/patch-scripts_train.pl
--- dspam.orig/files/patch-scripts_train.pl	2006-02-04 15:26:43.000000000 +0200
+++ dspam/files/patch-scripts_train.pl	2009-12-17 09:45:44.000000000 +0200
@@ -1,5 +1,5 @@
---- scripts/train.pl.dist	Tue Nov  8 14:34:38 2005
-+++ scripts/train.pl	Tue Nov  8 14:36:06 2005
+--- scripts/train.pl.orig	2009-12-17 09:43:23.000000000 +0200
++++ scripts/train.pl	2009-12-17 09:44:00.000000000 +0200
 @@ -1,4 +1,4 @@
 -#!/usr/bin/perl
 +#!%%PERL%%
@@ -11,7 +11,7 @@
  
  $REPORTING_WINDOW  = 250;			# How often to summarize
 -$PATH              = "/usr/local/dspam/bin";	# Path to dspam binaries
-+$PATH              = "%%DSPAM_PATH%%";		# Path to dspam binaries
++$PATH              = "%%DSPAM_PATH%%";         # Path to dspam binaries
  $TRAINING_MODE     = "teft";			# Training mode
  
  ### DO NOT CONFIGURE BELOW THIS LINE ###
diff -ruN dspam.orig/files/patch-src__dspam.conf.in dspam/files/patch-src__dspam.conf.in
--- dspam.orig/files/patch-src__dspam.conf.in	2006-10-10 01:41:38.000000000 +0300
+++ dspam/files/patch-src__dspam.conf.in	1970-01-01 02:00:00.000000000 +0200
@@ -1,66 +0,0 @@
---- ./src/dspam.conf.in.orig	Tue Oct 10 01:22:52 2006
-+++ ./src/dspam.conf.in	Tue Oct 10 01:39:10 2006
-@@ -52,7 +52,7 @@
- # the user DSPAM is processing mail for. This configuration parameter is only 
- # necessary if you plan on allowing untrusted processing.
- #
--#UntrustedDeliveryAgent "/usr/bin/procmail -d %u"
-+#UntrustedDeliveryAgent "@delivery_agent@"
- 
- #
- # SMTP or LMTP Delivery: Alternatively, you may wish to use SMTP or LMTP 
-@@ -85,7 +85,7 @@
- # a quarantine agent which will be called with all messages DSPAM thinks is
- # spam. Use %u to specify the user DSPAM is processing mail for.
- #
--#QuarantineAgent	"/usr/bin/procmail -d spam"
-+#QuarantineAgent	"@delivery_agent@"
- 
- #
- # DSPAM can optionally process "plused users" (addresses in the user+detail
-@@ -273,7 +273,7 @@
- # Storage driver settings: Specific to a particular storage driver. Uncomment
- # the configuration specific to your installation, if applicable.
- #
--#MySQLServer    	/var/lib/mysql/mysql.sock
-+#MySQLServer    	/tmp/mysql.sock
- #MySQLPort
- #MySQLUser 	     	dspam
- #MySQLPass    		changeme
-@@ -619,7 +619,10 @@
- # If the message is larger than the maximum size, it will be delivered 
- # without processing. Value is in bytes.
- #
-+# WARNING: this applies to clamav scan also
-+#
- #MaxMessageSize 4194304
-+MaxMessageSize 307200
- 
- #
- # Virus Checking: If you are running clamd, DSPAM can perform stream-based
-@@ -644,6 +647,7 @@
- #
- #ServerPort		24
- #ServerQueueSize	32
-+# keep this is sync with /usr/local/etc/rc.d/dspam[.sh] rc.d script
- #ServerPID              /var/run/dspam.pid
- 
- #
-@@ -680,14 +684,15 @@
- # you are running the client and server on the same machine, as it eliminates
- # much of the bandwidth overhead.
- #
--#ServerDomainSocketPath  "/tmp/dspam.sock"
-+# keep this is sync with /usr/local/etc/rc.d/dspam[.sh] rc.d script
-+#ServerDomainSocketPath  "/var/run/dspam.sock"
- 
- #
- # Client Mode: If you are running DSPAM in client/server mode, uncomment and
- # set these variables. A ClientHost beginning with a / will be treated as
- # a domain socket.
- #
--#ClientHost	/tmp/dspam.sock
-+#ClientHost	/var/run/dspam.sock
- #ClientIdent	"secret at Relay1"
- #
- #ClientHost	127.0.0.1
diff -ruN dspam.orig/files/patch-src_dspam.conf.in dspam/files/patch-src_dspam.conf.in
--- dspam.orig/files/patch-src_dspam.conf.in	1970-01-01 02:00:00.000000000 +0200
+++ dspam/files/patch-src_dspam.conf.in	2009-12-17 10:04:21.000000000 +0200
@@ -0,0 +1,62 @@
+--- src/dspam.conf.in.orig	2009-12-17 09:39:10.000000000 +0200
++++ src/dspam.conf.in	2009-12-17 10:03:27.000000000 +0200
+@@ -56,6 +56,7 @@
+ # necessary if you plan on allowing untrusted processing.
+ #
+ #UntrustedDeliveryAgent "/usr/bin/procmail -d %u"
++#UntrustedDeliveryAgent "@delivery_agent@"
+ 
+ #
+ # SMTP or LMTP Delivery: Alternatively, you may wish to use SMTP or LMTP 
+@@ -89,6 +90,7 @@
+ # spam. Use %u to specify the user DSPAM is processing mail for.
+ #
+ #QuarantineAgent	"/usr/bin/procmail -d spam"
++#QuarantineAgent       "@delivery_agent@"
+ 
+ #
+ # DSPAM can optionally process "plused users" (addresses in the user+detail
+@@ -330,7 +332,7 @@
+ # Storage driver settings: Specific to a particular storage driver. Uncomment
+ # the configuration specific to your installation, if applicable.
+ #
+-#MySQLServer		/var/lib/mysql/mysql.sock
++#MySQLServer           /tmp/mysql.sock
+ #MySQLPort		
+ #MySQLUser		dspam
+ #MySQLPass		changeme
+@@ -389,7 +391,7 @@
+ # in /var/run/postgresql/.s.PGSQL.5432 specify just the path where the socket
+ # resits (without .s.PGSQL.5432).
+ 
+-#PgSQLServer		/var/run/postgresql/
++#PgSQLServer		/tmp
+ #PgSQLPort		
+ #PgSQLUser		dspam
+ #PgSQLPass		changeme
+@@ -748,6 +750,7 @@
+ # without processing. Value is in bytes.
+ #
+ #MaxMessageSize 4194304
++MaxMessageSize 307200
+ 
+ #
+ # Virus Checking: If you are running clamd, DSPAM can perform stream-based
+@@ -778,6 +781,7 @@
+ #ServerHost		127.0.0.1
+ #ServerPort		24
+ #ServerQueueSize	32
++# keep this is sync with /usr/local/etc/rc.d/dspam[.sh] rc.d script
+ #ServerPID		/var/run/dspam.pid
+ 
+ #
+@@ -814,7 +818,8 @@
+ # you are running the client and server on the same machine, as it eliminates
+ # much of the bandwidth overhead.
+ #
+-#ServerDomainSocketPath	"/tmp/dspam.sock"
++# keep this is sync with /usr/local/etc/rd.d/dspam[.sh] rc.d script
++#ServerDomainSocketPath  "/var/run/dspam.sock"
+ 
+ #
+ # Client Mode: If you are running DSPAM in client/server mode, uncomment and
diff -ruN dspam.orig/pkg-descr dspam/pkg-descr
--- dspam.orig/pkg-descr	2004-11-28 00:06:32.000000000 +0200
+++ dspam/pkg-descr	2009-12-17 13:24:36.000000000 +0200
@@ -1,7 +1,9 @@
-DSPAM (as in De-Spam) is an open-source project to create a new kind
-of anti-spam mechanism, and is currently effective as both a
-server-side agent for UNIX email servers and a developer's library
-for mail clients, other anti-spam tools, and similar projects
-requiring drop-in spam filtering.
+DSPAM is a scalable and open-source content-based spam filter designed for 
+multi-user enterprise systems.  On a properly configured system,
+many users experience results between 99.5% - 99.95%, or one error for 
+every 200 to 2000 messages. DSPAM supports many different MTAs and can also be 
+deployed as a stand-alone SMTP appliance. 
+For developers, the DSPAM core engine (libdspam) can be easily incorporated 
+directly into applications for drop-in filtering
 
-WWW: http://dspam.nuclearelephant.com
+WWW: http://dspam.sourceforge.net/
diff -ruN dspam.orig/pkg-message dspam/pkg-message
--- dspam.orig/pkg-message	2006-07-09 01:42:06.000000000 +0300
+++ dspam/pkg-message	2009-12-17 10:13:32.000000000 +0200
@@ -1,16 +1,16 @@
 -------------------------------------------------------------------------------
  Reporting problems, asking questions:
- - FreeBSD specific port-related problems/questions/patches: maintainer
-(and ports@ if you feel the need); send-pr only if you get no timely reply
- - dspam specific questions: dspam/dspam-dev mailing list (maintainer cc'ed)
- - dspam specific patches: dspam/dspam-dev mailing list (maintainer cc'ed)
+ - FreeBSD specific port-related problems/questions/paches: maintainer
+(and ports@ if you fell the need); send-pr only if you get no timely reply
+ - dspam specific questions: dspam/dspam-dev mailling list (maintainer cc'ed)
+ - dspam specific patches: dspam/dspam-dev mailling list (maintainer cc'ed if)
  Please be sure to include in your email/pr relevant information such as:
  uname -a, dspam --version, %%_VAR_DIR%%/db/ports/%%PORTNAME%%/options, MTA setup.
 
 Asking about updates or telling me there is one: not only I am active on the
 mailing lists and IRC but I also track dspam CVS so I already know; either there
 is a problem with the new version or I didn't have enough time to patch the port
-and _test_ the new version; please report your success/failure if you run the
+and _test_ the new version; please report your succes/failure if you run the
 new version or the cvs version.
 
 %%CGI%% The CGI files had been installed in
@@ -37,7 +37,7 @@
 %%DAEMON%% To enable the dspam deamon put dspam_enable="YES" in your
 %%DAEMON%% /etc/rc.conf
 
- You'll find additional setup instructions under
+ You'll find additional setup and upgrade instructions under
  %%DOCSDIR%%
 and
  %%EXAMPLESDIR%%
diff -ruN dspam.orig/pkg-plist dspam/pkg-plist
--- dspam.orig/pkg-plist	2006-06-09 08:06:43.000000000 +0300
+++ dspam/pkg-plist	2009-12-17 10:37:18.000000000 +0200
@@ -22,33 +22,35 @@
 include/dspam/decode.h
 include/dspam/diction.h
 include/dspam/error.h
+include/dspam/external_lookup.h
 include/dspam/heap.h
-include/dspam/ldap_client.h
 include/dspam/libdspam.h
 include/dspam/libdspam_objects.h
 include/dspam/nodetree.h
+include/dspam/pref.h
+include/dspam/read_config.h
 include/dspam/storage_driver.h
 include/dspam/tokenizer.h
 lib/libdspam.a
 lib/libdspam.la
 lib/libdspam.so
 lib/libdspam.so.7
-%%DYNAMIC%%%%HASH%%lib/libhash_drv.a
-%%DYNAMIC%%%%HASH%%lib/libhash_drv.la
-%%DYNAMIC%%%%HASH%%lib/libhash_drv.so
-%%DYNAMIC%%%%HASH%%lib/libhash_drv.so.7
-%%DYNAMIC%%%%MYSQL%%lib/libmysql_drv.a
-%%DYNAMIC%%%%MYSQL%%lib/libmysql_drv.la
-%%DYNAMIC%%%%MYSQL%%lib/libmysql_drv.so
-%%DYNAMIC%%%%MYSQL%%lib/libmysql_drv.so.7
-%%DYNAMIC%%%%PGSQL%%lib/libpgsql_drv.a
-%%DYNAMIC%%%%PGSQL%%lib/libpgsql_drv.la
-%%DYNAMIC%%%%PGSQL%%lib/libpgsql_drv.so
-%%DYNAMIC%%%%PGSQL%%lib/libpgsql_drv.so.7
-%%DYNAMIC%%%%SQLITE%%lib/libsqlite3_drv.a
-%%DYNAMIC%%%%SQLITE%%lib/libsqlite3_drv.la
-%%DYNAMIC%%%%SQLITE%%lib/libsqlite3_drv.so
-%%DYNAMIC%%%%SQLITE%%lib/libsqlite3_drv.so.7
+%%DYNAMIC%%%%HASH%%lib/dspam/libhash_drv.a
+%%DYNAMIC%%%%HASH%%lib/dspam/libhash_drv.la
+%%DYNAMIC%%%%HASH%%lib/dspam/libhash_drv.so
+%%DYNAMIC%%%%HASH%%lib/dspam/libhash_drv.so.7
+%%DYNAMIC%%%%MYSQL%%lib/dspam/libmysql_drv.a
+%%DYNAMIC%%%%MYSQL%%lib/dspam/libmysql_drv.la
+%%DYNAMIC%%%%MYSQL%%lib/dspam/libmysql_drv.so
+%%DYNAMIC%%%%MYSQL%%lib/dspam/libmysql_drv.so.7
+%%DYNAMIC%%%%PGSQL%%lib/dspam/libpgsql_drv.a
+%%DYNAMIC%%%%PGSQL%%lib/dspam/libpgsql_drv.la
+%%DYNAMIC%%%%PGSQL%%lib/dspam/libpgsql_drv.so
+%%DYNAMIC%%%%PGSQL%%lib/dspam/libpgsql_drv.so.7
+%%DYNAMIC%%%%SQLITE%%lib/dspam/libsqlite3_drv.a
+%%DYNAMIC%%%%SQLITE%%lib/dspam/libsqlite3_drv.la
+%%DYNAMIC%%%%SQLITE%%lib/dspam/libsqlite3_drv.so
+%%DYNAMIC%%%%SQLITE%%lib/dspam/libsqlite3_drv.so.7
 libdata/pkgconfig/dspam.pc
 %%PORTDOCS%%%%DOCSDIR%%/CHANGELOG
 %%PORTDOCS%%%%DOCSDIR%%/LICENSE
@@ -59,7 +61,6 @@
 %%PORTDOCS%%%%DOCSDIR%%/exim.txt
 %%PORTDOCS%%%%DOCSDIR%%/markov.txt
 %%PORTDOCS%%%%DOCSDIR%%/mysql_drv.txt
-%%PORTDOCS%%%%DOCSDIR%%/ora_drv.txt
 %%PORTDOCS%%%%DOCSDIR%%/pgsql_drv.txt
 %%PORTDOCS%%%%DOCSDIR%%/pop3filter.txt
 %%PORTDOCS%%%%DOCSDIR%%/postfix.txt
@@ -80,6 +81,7 @@
 %%MYSQL%%@dirrm %%EXAMPLESDIR%%/mysql
 %%PGSQL%%%%EXAMPLESDIR%%/pgsql/pgsql_objects.sql
 %%PGSQL%%%%EXAMPLESDIR%%/pgsql/purge.sql
+%%PGSQL%%%%EXAMPLESDIR%%/pgsql/purge-pe.sql
 %%PGSQL%%%%EXAMPLESDIR%%/pgsql/virtual_users.sql
 %%PGSQL%%@dirrm %%EXAMPLESDIR%%/pgsql
 %%SQLITE%%%%EXAMPLESDIR%%/sqlite/purge-2.sql
@@ -114,6 +116,7 @@
 %%CGI%%@dirrm www/vhosts
 %%CGI%%@dirrmtry www
 @dirrm include/dspam
+ at dirrm lib/dspam
 @cwd %%DSPAM_HOME%%
 firstrun.txt.sample
 firstspam.txt.sample


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list