ports/85587: New port: mail/tumgreyspf

Marcus Grando marcus at corp.grupos.com.br
Thu Sep 1 21:00:38 UTC 2005


>Number:         85587
>Category:       ports
>Synopsis:       New port: mail/tumgreyspf
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Sep 01 21:00:36 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Marcus Grando
>Release:        FreeBSD 6.0-BETA3 i386
>Organization:
Grupos Internet S/A
>Environment:
System: FreeBSD marcus.grupos.com.br 6.0-BETA3 FreeBSD 6.0-BETA3 #33: Wed Aug 31 12:46:26 BRT 2005 root at marcus.grupos.com.br:/usr/obj/usr/src/sys/MARCUS i386


	
>Description:

- New port: mail/tumgreyspf

	
>How-To-Repeat:
	
>Fix:

	

--- tumgreyspf.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	tumgreyspf
#	tumgreyspf/Makefile
#	tumgreyspf/pkg-descr
#	tumgreyspf/distinfo
#	tumgreyspf/pkg-plist
#	tumgreyspf/files
#	tumgreyspf/files/patch-tumgreyspfsupp.py
#	tumgreyspf/files/patch-tumgreyspf
#	tumgreyspf/files/patch-tumgreyspf-clean
#	tumgreyspf/files/patch-tumgreyspf-stat
#	tumgreyspf/files/patch-tumgreyspf.conf
#	tumgreyspf/files/pkg-message.in
#	tumgreyspf/files/pkg-deinstall.in
#	tumgreyspf/files/pkg-install.in
#
echo c - tumgreyspf
mkdir -p tumgreyspf > /dev/null 2>&1
echo x - tumgreyspf/Makefile
sed 's/^X//' >tumgreyspf/Makefile << 'END-of-tumgreyspf/Makefile'
X# New ports collection makefile for:	tumgreyspf
X# Date created:				31 Aug 2005
X# Whom:					Marcus Grando <marcus at corp.grupos.com.br>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	tumgreyspf
XPORTVERSION=	1.09
XCATEGORIES=	mail
XMASTER_SITES=	ftp://ftp.tummy.com/pub/tummy/tumgreyspf/
X
XMAINTAINER=	marcus at corp.grupos.com.br
XCOMMENT=	External policy checker for the postfix mail server
X
XRUN_DEPENDS=    ${PYTHON_SITELIBDIR}/spf.py:${PORTSDIR}/mail/py-spf
X
XUSE_PYTHON=     2.1+
XNO_BUILD=	yes
XUSE_REINPLACE=	yes
X
XTUMGREYSPF_DIR?=	/var/db/${PORTNAME}
XTUMGREYSPF_USER?=	nobody
XTUMGREYSPF_GROUP?=	nobody
X
XPKGMESSAGE=	${WRKSRC}/pkg-message
XPKGDEINSTALL=	${WRKDIR}/pkg-deinstall
XPKGINSTALL=	${WRKDIR}/pkg-install
X
XSUB_FILES=	pkg-message pkg-deinstall pkg-install
XSUB_LIST+=	TUMGREYSPF_DIR=${TUMGREYSPF_DIR} \
X		TUMGREYSPF_USER=${TUMGREYSPF_USER} \
X		TUMGREYSPF_GROUP=${TUMGREYSPF_GROUP}
X
X.if !defined(NOPORTDOCS)
XPORTDOCS=	*
X.endif
X
Xpre-everything::
X	@${ECHO_MSG}
X	@${ECHO_MSG} "You may set following options:"
X	@${ECHO_MSG}
X	@${ECHO_MSG} "TUMGREYSPF_DIR=/var/db/${PORTNAME}	Local are used to greylist"
X	@${ECHO_MSG} "TUMGREYSPF_USER=nobody			User to run ${PORTNAME} (Default: nobody)"
X	@${ECHO_MSG} "TUMGREYSPF_GROUP=nobody			Group to run ${PORTNAME} (Default: nobody)"
X	@${ECHO_MSG}
X
Xpost-patch:
X	@${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" -e "s|%%TUMGREYSPF_DIR%%|${TUMGREYSPF_DIR}|g" \
X		${WRKSRC}/tumgreyspfsupp.py ${WRKSRC}/tumgreyspf.conf
X
Xdo-install:
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspfsupp.py ${PYTHONPREFIX_SITELIBDIR}
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf ${PREFIX}/bin
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf-clean ${PREFIX}/bin
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf-configtest ${PREFIX}/bin
X	${INSTALL_SCRIPT} ${WRKSRC}/gentest ${PREFIX}/bin/tumgreyspf-gentest
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf-stat ${PREFIX}/bin
X	${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf.conf ${PREFIX}/etc/tumgreyspf.conf.default
X.	if !exists(${PREFIX}/etc/tumgreyspf.conf)
X		${INSTALL_SCRIPT} ${WRKSRC}/tumgreyspf.conf ${PREFIX}/etc
X.	endif
X
Xpost-install:
X	@${MKDIR} ${DATADIR}
X	@${INSTALL_DATA} ${WRKSRC}/__default__.dist ${DATADIR}
X.if !defined(NOPORTDOCS)
X	@${MKDIR} ${DOCSDIR}
X	@${INSTALL_DATA} ${WRKSRC}/README* ${DOCSDIR}
X.endif
X	@${CAT} ${PKGMESSAGE}
X.if !defined(PACKAGE_BUILDING)
X	@${SETENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
X.endif
X
X.include <bsd.port.mk>
END-of-tumgreyspf/Makefile
echo x - tumgreyspf/pkg-descr
sed 's/^X//' >tumgreyspf/pkg-descr << 'END-of-tumgreyspf/pkg-descr'
XTumgreyspf, an external policy checker for the postfix mail
Xserver. It can optionally greylist and/or use spfquery to 
Xcheck SPF records to determine if email should be accepted 
Xby your server.
X
XBecause of it's design, legitimate e-mail is never trapped 
Xor rejected. Only spam and viruses are caught. Since adding 
Xit to our mail server (which also uses Spam Assassin, ClamAV, 
Xand an outsourced anti-spam system), our spam level has 
Xdropped by an order of magnitude.
X
XIt uses the file-system as it's database, no additional 
Xdatabase is required to use it. 
X
XWWW: http://www.tummy.com/Community/software/tumgreyspf/
X
XMarcus Grando <marcus at corp.grupos.com.br>
END-of-tumgreyspf/pkg-descr
echo x - tumgreyspf/distinfo
sed 's/^X//' >tumgreyspf/distinfo << 'END-of-tumgreyspf/distinfo'
XMD5 (tumgreyspf-1.09.tar.gz) = bb27837d82297698fe1cb9f91b808fc3
XSIZE (tumgreyspf-1.09.tar.gz) = 22456
END-of-tumgreyspf/distinfo
echo x - tumgreyspf/pkg-plist
sed 's/^X//' >tumgreyspf/pkg-plist << 'END-of-tumgreyspf/pkg-plist'
X at unexec if cmp -s %D/etc/tumgreyspf.conf.default %D/etc/tumgreyspf.conf; then rm -f %D/etc/tumgreyspf.conf; fi
Xetc/tumgreyspf.conf.default
Xbin/tumgreyspf
Xbin/tumgreyspf-clean
Xbin/tumgreyspf-configtest
Xbin/tumgreyspf-gentest
Xbin/tumgreyspf-stat
X%%PYTHON_SITELIBDIR%%/tumgreyspfsupp.py
Xshare/tumgreyspf/__default__.dist
X at dirrm share/tumgreyspf
END-of-tumgreyspf/pkg-plist
echo c - tumgreyspf/files
mkdir -p tumgreyspf/files > /dev/null 2>&1
echo x - tumgreyspf/files/patch-tumgreyspfsupp.py
sed 's/^X//' >tumgreyspf/files/patch-tumgreyspfsupp.py << 'END-of-tumgreyspf/files/patch-tumgreyspfsupp.py'
X--- tumgreyspfsupp.py.orig	Wed Aug 31 21:39:42 2005
X+++ tumgreyspfsupp.py	Wed Aug 31 21:41:24 2005
X@@ -10,15 +10,15 @@
X 
X 
X #  default values
X-defaultConfigFilename = '/var/local/tumgreyspf/config/tumgreyspf.conf'
X+defaultConfigFilename = '%%PREFIX%%/etc/tumgreyspf.conf'
X defaultConfigData = {
X 		'debugLevel' : 0,
X 		'defaultSeedOnly' : 0,
X 		'defaultAllowTime' : 600,
X-		'configPath' : 'file:///var/local/lib/tumgreyspf/config',
X-		'greylistDir' : '/var/local/lib/tumgreyspf/data',
X-		'blackholeDir' : '/var/local/lib/tumgreyspf/blackhole',
X-		'spfqueryPath' : '/usr/local/lib/tumgreyspf/spfquery',
X+		'configPath' : 'file:///%%TUMGREYSPF_DIR%%/config',
X+		'greylistDir' : '%%TUMGREYSPF_DIR%%/data',
X+		'blackholeDir' : '%%TUMGREYSPF_DIR%%/blackhole',
X+		'spfqueryPath' : '%%PREFIX%%/bin/spfquery',
X 		}
X 
X 
END-of-tumgreyspf/files/patch-tumgreyspfsupp.py
echo x - tumgreyspf/files/patch-tumgreyspf
sed 's/^X//' >tumgreyspf/files/patch-tumgreyspf << 'END-of-tumgreyspf/files/patch-tumgreyspf'
X--- tumgreyspf.orig	Wed Aug 31 21:42:35 2005
X+++ tumgreyspf	Wed Aug 31 21:43:01 2005
X@@ -11,7 +11,6 @@
X 
X 
X import syslog, os, sys, string, re, time, popen2, urllib, stat
X-sys.path.append('/usr/local/lib/tumgreyspf')
X import tumgreyspfsupp
X 
X syslog.openlog(os.path.basename(sys.argv[0]), syslog.LOG_PID, syslog.LOG_MAIL)
END-of-tumgreyspf/files/patch-tumgreyspf
echo x - tumgreyspf/files/patch-tumgreyspf-clean
sed 's/^X//' >tumgreyspf/files/patch-tumgreyspf-clean << 'END-of-tumgreyspf/files/patch-tumgreyspf-clean'
X--- tumgreyspf-clean.orig	Wed Aug 31 21:43:32 2005
X+++ tumgreyspf-clean	Wed Aug 31 21:43:48 2005
X@@ -8,7 +8,6 @@
X #  <jafo at tummy.com>
X 
X import os, re, string, syslog, sys, time
X-sys.path.append('/usr/local/lib/tumgreyspf')
X import tumgreyspfsupp
X 
X ###################
END-of-tumgreyspf/files/patch-tumgreyspf-clean
echo x - tumgreyspf/files/patch-tumgreyspf-stat
sed 's/^X//' >tumgreyspf/files/patch-tumgreyspf-stat << 'END-of-tumgreyspf/files/patch-tumgreyspf-stat'
X--- tumgreyspf-stat.orig	Wed Aug 31 21:44:32 2005
X+++ tumgreyspf-stat	Wed Aug 31 21:44:42 2005
X@@ -7,7 +7,6 @@
X #  <jafo at tummy.com>
X 
X import os, re, string, syslog, sys, time
X-sys.path.append('/usr/local/lib/tumgreyspf')
X import tumgreyspfsupp
X 
X ###################
END-of-tumgreyspf/files/patch-tumgreyspf-stat
echo x - tumgreyspf/files/patch-tumgreyspf.conf
sed 's/^X//' >tumgreyspf/files/patch-tumgreyspf.conf << 'END-of-tumgreyspf/files/patch-tumgreyspf.conf'
X--- tumgreyspf.conf.orig	Wed Aug 31 22:23:05 2005
X+++ tumgreyspf.conf	Wed Aug 31 22:23:57 2005
X@@ -15,18 +15,18 @@
X #  Path to the directory-based configuration.  This can be used to override
X #  the configuration values for certain remote hosts, senders or
X #  recipients.
X-configPath = 'file:///var/local/lib/tumgreyspf/config'
X+configPath = 'file:///%%TUMGREYSPF_DIR%%/config'
X 
X #  Directory where the greylist resides.
X-greylistDir = '/var/local/lib/tumgreyspf/data'
X+greylistDir = '%%TUMGREYSPF_DIR%%/data'
X 
X #  Path to the program used for greylist checking.  This can either be the
X #  perl version available from http://spf.pobox.com/ or the
X #  "spfquery-static" program built from libspf2, also available from
X #  http://spf.pobox.com/
X-spfqueryPath = '/usr/local/lib/tumgreyspf/spfquery'
X+spfqueryPath = '%%PREFIX%%/bin/spfquery'
X 
X #  Directory where the blackhole information goes.  "ips" sub-directory
X #  contains IPs that have touched us with a bad address.  "addresses"
X #  sub-directory has a file per address named after the bad addresses.
X-blackholeDir = '/var/lib/tumgreyspf/blackhole'
X+blackholeDir = '%%TUMGREYSPF_DIR%%/blackhole'
END-of-tumgreyspf/files/patch-tumgreyspf.conf
echo x - tumgreyspf/files/pkg-message.in
sed 's/^X//' >tumgreyspf/files/pkg-message.in << 'END-of-tumgreyspf/files/pkg-message.in'
X#
X# To configure Postfix
X#
X
XAdd to your postfix master.cf:
X
Xtumgreyspf  unix  -       n       n       -       -       spawn
X	user=%%TUMGREYSPF_USER%% argv=%%PREFIX%%/bin/tumgreyspf
X      
XNext, main.cf must be configured so that "smtpd_sender_restrictions"
Xincludes a call to the tumgreyspf policy filter.  If you already have
Xa "smtpd_sender_restrictions" line(s), you can add the following line
Xanywhere after the line which reads "reject_unauth_destination".
X         
Xcheck_policy_service unix:private/tumgreyspf
X         
XWARNING: It's very important that you have
X"reject_unauth_destination" before the "check_policy_service".  If
Xyou do not, your system may be an open relay.
X         
XSo, for example, a minimal "smtpd_sender_restrictions" may look like:
X
Xsmtpd_sender_restrictions = reject_unauth_destination,
X                            check_policy_service unix:private/tumgreyspf
X
XYou will also need to have a line in the main.cf which reads:
X
Xtumgreyspf_time_limit = 3600
X
XPlease consult the postfix documentation for more information on
Xthese and other settings you may wish to have in the
X"smtpd_recipient_restrictions" configuration.
END-of-tumgreyspf/files/pkg-message.in
echo x - tumgreyspf/files/pkg-deinstall.in
sed 's/^X//' >tumgreyspf/files/pkg-deinstall.in << 'END-of-tumgreyspf/files/pkg-deinstall.in'
X#!/bin/sh
X
Xcase "$2" in
X	DEINSTALL)
X		if cmp -s %%DATADIR%%/__default__.dist %%TUMGREYSPF_DIR%%/config/__default__; then
X			rm %%TUMGREYSPF_DIR%%/config/__default__ 2>/dev/null
X		fi
X		rmdir %%TUMGREYSPF_DIR%%/config 2>/dev/null
X		rmdir %%TUMGREYSPF_DIR%%/data 2>/dev/null
X		rmdir %%TUMGREYSPF_DIR%% 2>/dev/null
X		if [ -d %%TUMGREYSPF_DIR%% ]; then
X			echo ""
X			echo "If you are deinstalling completely tumgreyspf, run:"
X			echo ""
X			echo "# rm -rf %%TUMGREYSPF_DIR%%"
X			echo ""
X		fi
X		;;
X	*)
X		;;
Xesac
END-of-tumgreyspf/files/pkg-deinstall.in
echo x - tumgreyspf/files/pkg-install.in
sed 's/^X//' >tumgreyspf/files/pkg-install.in << 'END-of-tumgreyspf/files/pkg-install.in'
X#!/bin/sh
X
Xcase "$2" in
X	POST-INSTALL)
X		echo "===> Create %%TUMGREYSPF_DIR%% directories"
X		install -d -o %%TUMGREYSPF_USER%% -g %%TUMGREYSPF_GROUP%% -m 755 %%TUMGREYSPF_DIR%%
X		install -d -o %%TUMGREYSPF_USER%% -g %%TUMGREYSPF_GROUP%% -m 700 %%TUMGREYSPF_DIR%%/data
X		install -d -m 755 %%TUMGREYSPF_DIR%%/config
X		if [ ! -f %%TUMGREYSPF_DIR%%/config/__default__ ]; then
X			install %%DATADIR%%/__default__.dist %%TUMGREYSPF_DIR%%/config/__default__
X		fi
X		;;
X	*)
X		;;
Xesac
END-of-tumgreyspf/files/pkg-install.in
exit
--- tumgreyspf.shar ends here ---


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



More information about the freebsd-ports-bugs mailing list