Initial import of dspam-3.0.0 from pkgsrc-wip.

DSPAM (as in De-Spam) is an extremely scalable, open-source statistical hybrid
anti-spam filter. While most commercial solutions only provide a mere 95%
accuracy (1 error in 20), a majority of DSPAM users frequently see between
99.95% (1 error in 2000) all the way up to 99.991% (2 errors in 22,786).

DSPAM 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 has been implemented on many
large and small scale systems with the largest systems being reported at about
125,000 mailboxes.
This commit is contained in:
xtraeme 2004-06-20 19:41:23 +00:00
parent 47780d78ed
commit 4f5de69b89
4 changed files with 272 additions and 0 deletions

10
mail/dspam/DESCR Normal file
View file

@ -0,0 +1,10 @@
DSPAM (as in De-Spam) is an extremely scalable, open-source statistical hybrid
anti-spam filter. While most commercial solutions only provide a mere 95%
accuracy (1 error in 20), a majority of DSPAM users frequently see between
99.95% (1 error in 2000) all the way up to 99.991% (2 errors in 22,786).
DSPAM 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 has been implemented on many
large and small scale systems with the largest systems being reported at about
125,000 mailboxes.

185
mail/dspam/Makefile Normal file
View file

@ -0,0 +1,185 @@
# $NetBSD: Makefile,v 1.1.1.1 2004/06/20 19:41:23 xtraeme Exp $
#
DISTNAME= dspam-3.0.0
CATEGORIES= mail
MASTER_SITES= http://www.nuclearelephant.com/projects/dspam/sources/
MAINTAINER= xtraeme@NetBSD.org
HOMEPAGE= http://www.nuclearelephant.com/projects/dspam/
COMMENT= Extremely scalable and statistical hybrid anti-spam filter
USE_BUILDLINK3= yes
USE_LIBTOOL= yes
USE_PKGINSTALL= yes
GNU_CONFIGURE= yes
REPLACE_PERL= tools/dspam_genaliases.in \
tools/dspam_corpus.in \
cgi/admin.cgi cgi/admingraph.cgi \
cgi/dspam.cgi cgi/graph.cgi
PKGCONFIG_OVERRIDE+= dspam.pc.in
SUBST_CLASSES= cgi large
SUBST_STAGE.cgi= post-patch
SUBST_FILES.cgi= cgi/dspam.cgi cgi/admin.cgi
SUBST_SED.cgi= -e "s|/usr/local/bin/dspam|${PREFIX}/bin/dspam|g" \
-e "s|/var/dspam|${DSPAM_HOME}|g" \
-e "s|/usr/local|${PREFIX}|g" \
-e "s|LARGE_SCLAE|LARGE_SCALE|g" \
-e "s|-deaf|${DSPAM_PSFLAGS}|g"
SUBST_MESSAGE.cgi= "Fixing paths and typos."
BDB_ACCEPTED= db4 db3
BUILD_DEFS+= DSPAM_DELIVERY_AGENT
BUILD_DEFS+= DSPAM_HOME
BUILD_DEFS+= DSPAM_STORAGE_DRIVER
BUILD_DEFS+= DSPAM_SIGNATURE_LIFE
BUILD_DEFS+= DSPAM_SIGNATURE_ATTACHMENTS
BUILD_DEFS+= DSPAM_SIGNATURE_HEADERS
BUILD_DEFS+= DSPAM_LARGESCALE
BUILD_DEFS+= DSPAM_VIRTUAL_USERS
BUILD_DEFS+= DSPAM_USE_WEBMAIL
BUILD_DEFS+= DSPAM_HOMEDIR_DOTFILES
BUILD_DEFS+= DSPAM_USER DSPAM_GROUP
BUILD_DEFS+= DSPAM_BINMODE
BUILD_DEFS+= DSPAM_CGI_GRAPHS
BUILD_DEFS+= DSPAM_PSFLAGS
DSPAM_DELIVERY_AGENT?= procmail
DSPAM_DELIVERY_AGENT_ARGS?= # empty
DSPAM_HOME?= ${VARBASE}/dspam
DSPAM_STORAGE_DRIVER?= ${BDB_TYPE}
DSPAM_SIGNATURE_LIFE?= 15
DSPAM_PSFLAGS?= aux
DSPAM_BINMODE?= 4511
DSPAM_USER?= dspam
DSPAM_GROUP?= dspam
PKG_GROUPS= ${DSPAM_GROUP}
PKG_USERS= ${DSPAM_GROUP}:${DSPAM_USER}
# Default options
CONFIGURE_ARGS+= --enable-chi-square
CONFIGURE_ARGS+= --enable-robinson-pvalues
CONFIGURE_ARGS+= --with-signature-life=${DSPAM_SIGNATURE_LIFE}
CONFIGURE_ARGS+= --with-dspam-home=${DSPAM_HOME}
CONFIGURE_ARGS+= --with-dspam-home-owner=${DSPAM_USER} \
--with-dspam-home-group=${DSPAM_GROUP} \
--with-dspam-owner=${DSPAM_USER} \
--with-dspam-group=${DSPAM_GROUP} \
--with-dspam-mode=${DSPAM_BINMODE}
.include "../../mk/bsd.prefs.mk"
#
# Possible: procmail, maildrop or custom
# Default: procmail
#
.if !empty(DSPAM_DELIVERY_AGENT:Mprocmail)
BUILD_DEPENDS+= procmail-[0-9]*:../../mail/procmail
CONFIGURE_ARGS+= --with-delivery-agent="${LOCALBASE}/bin/procmail"
.elif !empty(DSPAM_DELIVERY_AGENT:Mmaildrop)
BUILD_DEPENDS+= maildrop-[0-9]*:../../mail/maildrop
CONFIGURE_ARGS+= --with-delivery-agent="${LOCALBASE}/bin/maildrop"
.elif !empty(DSPAM_DELIVERY_AGENT:Mcustom)
BUILD_DEFS+= DSPAM_DELIVERY_AGENT_ARGS
CONFIGURE_ARGS+= --with-delivery-agent=${DSPAM_DELIVERY_AGENT_ARGS:Q}
.endif
#
# Possible: mysql, pgsql, db3 or db4
# Default: db3/db4
#
.if !empty(DSPAM_STORAGE_DRIVER:Mmysql)
BUILD_DEFS+= DSPAM_CLIENT_COMPRESSION
. if defined(DSPAM_CLIENT_COMPRESSION) && \
!empty(DSPAM_CLIENT_COMPRESSION:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-client-compression
. endif
. include "../../databases/mysql4-client/buildlink3.mk"
CONFIGURE_ARGS+= --with-storage-driver=mysql_drv
CONFIGURE_ARGS+= \
--with-mysql-includes=${BUILDLINK_PREFIX.mysql-client}/include/mysql
CONFIGURE_ARGS+= \
--with-mysql-libraries=${BUILDLINK_PREFIX.mysql-client}/lib
.elif !empty(DSPAM_STORAGE_DRIVER:Mpgsql)
. include "../../databases/postgresql74-lib/buildlink3.mk"
CONFIGURE_ARGS+= --with-storage-driver=pgsql_drv
CONFIGURE_ARGS+= \
--with-pgsql-includes=${BUILDLINK_PREFIX.postgresql-lib}/include/postgresql
CONFIGURE_ARGS+= \
--with-pgsql-libraries=${BUILDLINK_PREFIX.postgresql-lib}/lib
.elif !empty(DSPAM_STORAGE_DRIVER:M${BDB_TYPE})
CONFIGURE_ARGS+= --with-storage-driver=lib${BDB_TYPE}_drv
.endif
#
# Use of home directory dot file for opt-in/opt-out
#
.if defined(DSPAM_HOMEDIR_DOTFILES) && \
!empty(DSPAM_HOMEDIR_DOTFILES:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-homedir-dotfiles
.endif
.if defined(DSPAM_USE_WEBMAIL) && \
!empty(DSPAM_USE_WEBMAIL:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-webmail
.endif
.if defined(DSPAM_SIGNATURE_ATTACHMENTS) && \
!empty(DSPAM_SIGNATURE_ATTACHMENTS:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-signature-attachments
.endif
.if defined(DSPAM_SIGNATURE_HEADERS) && \
!empty(DSPAM_SIGNATURE_HEADERS:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-signature-headers
.endif
.if defined(DSPAM_LARGESCALE) && !empty(DSPAM_LARGESCALE:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-large-scale
SUBST_STAGE.large= post-patch
SUBST_FILES.large= cgi/dspam.cgi cgi/admin.cgi
SUBST_SED.large= \
-e "s|CONFIG{'LARGE_SCALE'}.*=.*0|CONFIG{'LARGE_SCALE'} = 1|"
SUBST_MESSAGE.large= "Fixing config options."
.endif
.if defined(DSPAM_VIRTUAL_USERS) && !empty(DSPAM_VIRTUAL_USERS:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --enable-virtual-users
.endif
.if defined(DSPAM_CGI_GRAPHS) && !empty(DSPAM_CGI_GRAPHS:M[Yy][Ee][Ss])
DEPENDS+= p5-GDGraph3d-[0-9]*:../../graphics/p5-GDGraph3d
.endif
.if ${OPSYS} == "Linux"
DSPAM_PSFLAGS?= -deaf
.endif
INSTALLATION_DIRS= share/doc/${PKGBASE} \
share/${PKGBASE}/txt share/${PKGBASE}/cgi \
share/${PKGBASE}/mysql share/${PKGBASE}/pgsql
post-install:
.for d in txt cgi
cd ${WRKSRC}/${d} && ${PAX} -rwppm '-s|.*/Makefile.*$$||' \
. ${PREFIX}/share/${PKGBASE}/${d}
.endfor
.undef d
${INSTALL_DATA} ${WRKSRC}/RE* ${PREFIX}/share/doc/${PKGBASE}
.for d in mysql pgsql
cd ${WRKSRC}/tools.${d}_drv && ${PAX} -rwppm '-s|.*/Makefile.*$$||' \
. ${PREFIX}/share/${PKGBASE}/${d}
.endfor
.undef d
.include "../../devel/pkgconfig/buildlink3.mk"
.include "../../mk/bdb.buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

73
mail/dspam/PLIST Normal file
View file

@ -0,0 +1,73 @@
@comment $NetBSD: PLIST,v 1.1.1.1 2004/06/20 19:41:24 xtraeme Exp $
bin/dspam
bin/dspam_2sql
bin/dspam_clean
bin/dspam_corpus
bin/dspam_crc
bin/dspam_dump
bin/dspam_genaliases
bin/dspam_merge
bin/dspam_stats
include/dspam/buffer.h
include/dspam/decode.h
include/dspam/error.h
include/dspam/lht.h
include/dspam/libdspam.h
include/dspam/libdspam_objects.h
include/dspam/nodetree.h
include/dspam/storage_driver.h
lib/libdspam.a
lib/libdspam.la
lib/libdspam.so
lib/libdspam.so.5
lib/libdspam.so.5.0
lib/pkgconfig/dspam.pc
man/man1/dspam.1
man/man1/dspam_clean.1
man/man1/dspam_corpus.1
man/man1/dspam_dump.1
man/man1/dspam_merge.1
man/man1/dspam_stats.1
share/doc/dspam/README
share/doc/dspam/RELEASE.NOTES
share/dspam/cgi/admin.cgi
share/dspam/cgi/admingraph.cgi
share/dspam/cgi/admins
share/dspam/cgi/base.css
share/dspam/cgi/default.prefs
share/dspam/cgi/dspam.cgi
share/dspam/cgi/graph.cgi
share/dspam/cgi/logo.gif
share/dspam/cgi/rgb.txt
share/dspam/cgi/templates/nav_admin_error.html
share/dspam/cgi/templates/nav_admin_preferences.html
share/dspam/cgi/templates/nav_admin_status.html
share/dspam/cgi/templates/nav_admin_user.html
share/dspam/cgi/templates/nav_alerts.html
share/dspam/cgi/templates/nav_analysis.html
share/dspam/cgi/templates/nav_error.html
share/dspam/cgi/templates/nav_history.html
share/dspam/cgi/templates/nav_performance.html
share/dspam/cgi/templates/nav_preferences.html
share/dspam/cgi/templates/nav_quarantine.html
share/dspam/cgi/templates/nav_viewmessage.html
share/dspam/mysql/README
share/dspam/mysql/mysql_objects.sql.space.optimized
share/dspam/mysql/mysql_objects.sql.speed.optimized
share/dspam/mysql/purge.sql
share/dspam/mysql/virtual_users.sql
share/dspam/pgsql/README
share/dspam/pgsql/pgsql_objects.sql
share/dspam/pgsql/purge.sql
share/dspam/pgsql/virtual_users.sql
share/dspam/txt/firstrun.txt
share/dspam/txt/firstspam.txt
share/dspam/txt/quarantinefull.txt
@dirrm share/dspam/txt
@dirrm share/dspam/pgsql
@dirrm share/dspam/mysql
@dirrm share/dspam/cgi/templates
@dirrm share/dspam/cgi
@dirrm share/dspam
@dirrm share/doc/dspam
@dirrm include/dspam

4
mail/dspam/distinfo Normal file
View file

@ -0,0 +1,4 @@
$NetBSD: distinfo,v 1.1.1.1 2004/06/20 19:41:24 xtraeme Exp $
SHA1 (dspam-3.0.0.tar.gz) = d400a5ba9b5ad558917deba2eaf1ea2259068ac4
Size (dspam-3.0.0.tar.gz) = 575382 bytes