ports/135393: [new port] mail/batv-milter 0.5.0

Hirohisa Yamaguchi umq at ueo.co.jp
Mon Jun 8 23:20:04 UTC 2009


>Number:         135393
>Category:       ports
>Synopsis:       [new port] mail/batv-milter 0.5.0
>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:   Mon Jun 08 23:20:03 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Hirohisa Yamaguchi
>Release:        FreeBSD 8.0-CURRENT amd64
>Organization:
<organization of PR author (multiple lines)>
>Environment:
System: FreeBSD calliope.****.org 8.0-CURRENT FreeBSD 8.0-CURRENT #20: Wed Apr 29 14:09:02 JST 2009 root at calliope.****.org:/usr/obj/usr/src/sys/CALLIOPE64 amd64

>Description:
	batv-milter is a milter implementation of BATV(Bounce Address Tag Validation).
	WWW: https://sourceforge.net/projects/batv-milter/
>How-To-Repeat:
	N/A
>Fix:

# 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:
#
#	mail/batv-milter
#	mail/batv-milter/pkg-descr
#	mail/batv-milter/Makefile
#	mail/batv-milter/distinfo
#	mail/batv-milter/files
#	mail/batv-milter/files/milter-batv.sh.in
#	mail/batv-milter/files/patch-batv-filter_batv-filter.c
#	mail/batv-milter/files/patch-batv-filter_util.c
#	mail/batv-milter/files/patch-batv-filter_config.c
#	mail/batv-milter/files/site.config.m4
#	mail/batv-milter/files/patch-batv-filter_Makefile.m4
#
echo c - mail/batv-milter
mkdir -p mail/batv-milter > /dev/null 2>&1
echo x - mail/batv-milter/pkg-descr
sed 's/^X//' >mail/batv-milter/pkg-descr << 'bd1c04c08ffc4ffdaf2495aff207f379'
XThis package is an implementation of BATV (Bounce Address Tag Validation),
Xa draft proposal for detecting and messages making fraudulent use of a sender
Xaddress. The filter is written as a plugin to Sendmail or other filters using
Xthe milter API. 
X
XWWW:	https://sourceforge.net/projects/batv-milter/
bd1c04c08ffc4ffdaf2495aff207f379
echo x - mail/batv-milter/Makefile
sed 's/^X//' >mail/batv-milter/Makefile << '00f0ef8c5c1f6fecb7cd9caa2b0e602d'
X# New ports collection makefile for:	batv-milter
X# Date created:		2009-06-04
X# Whom:			Hirohisa Yamaguchi <umq at ueo.co.jp>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	batv-milter
XPORTVERSION=	0.5.0
XCATEGORIES=	mail
XMASTER_SITES=	SF
X
XMAINTAINER=	umq at ueo.co.jp
XCOMMENT=	A milter for BATV (Bounce Address Tag Validation)
X
XUSE_RC_SUBR=	milter-batv.sh
XUSE_OPENSSL=	TRUE
X
XSUB_FILES=	milter-batv.sh
XWCONF=		${WRKSRC}/devtools/Site
XMAN8=		batv-filter.8
XPLIST_FILES=	bin/batv-filter
XPORTDOCS=	INSTALL KNOWNBUGS LICENSE README RELEASE_NOTES \
X		draft-levine-smtp-batv-01.txt
X
XSITE=		${FILESDIR}/site.config.m4
XSITE_SUB=	-e "s|%%PREFIX%%|${PREFIX}|g" \
X		-e "s|%%LOCALBASE%%|${LOCALBASE}|g" \
X		-e "s|%%OPENSSLINC%%|${OPENSSLINC}|g" \
X		-e "s|%%OPENSSLLIB%%|${OPENSSLLIB}|g"
X
X.include <bsd.port.pre.mk>
X.include "${PORTSDIR}/mail/sendmail/bsd.milter.mk"
X
X.if defined(WITH_DEBUG)
XSITE_SUB+=	-e '\|confOPTIMIZE.*-g|s/^dnl //g'
X.endif
X
Xpre-configure:
X	${SED} ${SITE_SUB} -e '\|^dnl |d' -e '/^dnl$$/d' \
X		${SITE} > ${WCONF}/site.config.m4
X
Xpost-install:
X.if !defined(WITH_DEBUG)
X	@${STRIP_CMD} ${PREFIX}/bin/batv-filter
X.endif
X.for i in ${MAN8}
X	@${RM} -f ${MANPREFIX}/man/cat8/${i} ${MANPREFIX}/man/cat8/${i}.gz
X	${INSTALL_MAN} ${WRKSRC}/*/${i} ${MANPREFIX}/man/man8/
X.endfor
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X.for f in ${PORTDOCS}
X	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.post.mk>
00f0ef8c5c1f6fecb7cd9caa2b0e602d
echo x - mail/batv-milter/distinfo
sed 's/^X//' >mail/batv-milter/distinfo << '085873b7f39391861720343f5f271ecb'
XMD5 (batv-milter-0.5.0.tar.gz) = 644528b24a2e394472f8b96110e817e2
XSHA256 (batv-milter-0.5.0.tar.gz) = 1a40129d2585a4fe108401bfa577a8d9e2b7e295b2b0aa11e7f43dac7c601d3b
XSIZE (batv-milter-0.5.0.tar.gz) = 275862
085873b7f39391861720343f5f271ecb
echo c - mail/batv-milter/files
mkdir -p mail/batv-milter/files > /dev/null 2>&1
echo x - mail/batv-milter/files/milter-batv.sh.in
sed 's/^X//' >mail/batv-milter/files/milter-batv.sh.in << '28039f808fe6934082b1c774b5382689'
X#!/bin/sh
X#
X# $FreeBSD: ports/mail/batv-milter/files/milter-batv.sh.in,v 1.17 2009/02/07 15:56:03 stefan Exp $
X#
X
X# PROVIDE: milter-batv
X# REQUIRE: DAEMON
X# BEFORE: mail
X# KEYWORD: shutdown
X
X# Define these milterbatv_* variables in one of these files:
X#	/etc/rc.conf
X#	/etc/rc.conf.local
X#	/etc/rc.conf.d/milterbatv
X#
X# milterbatv_enable (bool):   Set to "NO" by default.
X#                             Set it to "YES" to enable batv-milter
X# milterbatv_uid (str):       Set username to run milter.
X# milterbatv_profiles (list): Set to "" by default.
X#                             Define your profiles here.
X# milterbatv_cfgfile (str):   Configuration file.
X#
X# milterbatv_${profile}_* :   Variables per profile.
X#                             Sockets must be different from each other.
X#
X#  all parameters below can be set in batv-filter.conf(5).
X# milterbatv_socket (str):    Path to the milter socket.
X# milterbatv_domain (str):    Domainpart of From: in mails to sign.
X# milterbatv_allowlist (str):       Path to the allow list file.
X# milterbatv_key (str):       Path to the private key file to sign with.
X# milterbatv_flags (str):     Flags passed to start command.
X
X. %%RC_SUBR%%
X
Xname="milterbatv"
Xrcvar=`set_rcvar`
X
Xstart_precmd="batv_prepcmd"
Xstop_postcmd="batv_postcmd"
Xcommand="%%PREFIX%%/bin/batv-filter"
X_piddir="/var/run/milterbatv"
Xpidfile="${_piddir}/pid"
X
Xload_rc_config $name
X
X#
X# DO NOT CHANGE THESE DEFAULT VALUES HERE
X#
X: ${milterbatv_enable="NO"}
X: ${milterbatv_uid="mailnull"}
X: ${milterbatv_profiles=""}
X: ${milterbatv_cfgfile="%%PREFIX%%/etc/mail/batv-filter.conf"}
X
X: ${milterbatv_socket=""}
X: ${milterbatv_domain=""}
X: ${milterbatv_allowlist=""}
X: ${milterbatv_key=""}
X# Options other than above can be set with $milterbatv_flags.
X# see batv-milter documentation for detail.
X: ${milterbatv_flags=""}
X
Xif [ -n "$2" ]; then
X    profile="$2"
X    if [ "x${milterbatv_profiles}" != "x" ]; then
X	pidfile="${_piddir}/${profile}.pid"
X	eval milterbatv_enable="\${milterbatv_${profile}_enable:-${milterbatv_enable}}"
X	eval milterbatv_socket="\${milterbatv_${profile}_socket:-}"
X	if [ "x${milterbatv_socket}" = "x" ];then
X	    echo "You must define a socket (milterbatv_${profile}_socket)"
X	    exit 1
X	fi
X	eval milterbatv_cfgfile="\${milterbatv_${profile}_cfgfile:-${milterbatv_cfgfile}}"
X	eval milterbatv_domain="\${milterbatv_${profile}_domain:-${milterbatv_domain}}"
X	eval milterbatv_allowlist="\${milterbatv_${profile}_allowlist:-${milterbatv_allowlist}}"
X	eval milterbatv_key="\${milterbatv_${profile}_key:-${milterbatv_key}}"
X	eval milterbatv_flags="\${milterbatv_${profile}_flags:-${milterbatv_flags}}"
X	if [ -f "${milterbatv_cfgfile}" ];then
X	    milterbatv_cfgfile="-x ${milterbatv_cfgfile}"
X	else
X	    milterbatv_cfgfile=""
X	fi
X	if [ "x${milterbatv_socket}" != "x" ];then
X	    _socket_prefix="-p"
X	fi
X	if [ "x${milterbatv_uid}" != "x" ];then
X	    _uid_prefix="-u"
X	fi
X	if [ "x${milterbatv_domain}" != "x" ];then
X	    milterbatv_domain="-d ${milterbatv_domain}"
X	fi
X	if [ "x${milterbatv_allowlist}" != "x" ];then
X	    milterbatv_allowlist="-a ${milterbatv_allowlist}"
X	fi
X	if [ "x${milterbatv_key}" != "x" ];then
X	    milterbatv_key="-k ${milterbatv_key}"
X	fi
X	command_args="-l ${_socket_prefix} ${milterbatv_socket} ${_uid_prefix} ${milterbatv_uid} -P ${pidfile} ${milterbatv_cfgfile} ${milterbatv_domain} ${milterbatv_allowlist} ${milterbatv_key}"
X    else
X	echo "$0: extra argument ignored"
X    fi
Xelse
X    if [ "x${milterbatv_profiles}" != "x" -a "x$1" != "x" ]; then
X	if [ "x$1" != "xrestart" ]; then
X	    for profile in ${milterbatv_profiles}; do
X		echo "===> milterbatv profile: ${profile}"
X		%%RC_SCRIPT%% $1 ${profile}
X		retcode="$?"
X		if [ "0${retcode}" -ne 0 ]; then
X		    failed="${profile} (${retcode}) ${failed:-}"
X		else
X		    success="${profile} ${success:-}"
X		fi
X	    done
X	    exit 0
X	else
X	    restart_precmd=""
X	fi
X    else
X	if [ -f "${milterbatv_cfgfile}" ];then
X	    milterbatv_cfgfile="-x ${milterbatv_cfgfile}"
X	else
X	    milterbatv_cfgfile=""
X	fi
X	if [ "x${milterbatv_socket}" != "x" ];then
X	    _socket_prefix="-p"
X	fi
X	if [ "x${milterbatv_uid}" != "x" ];then
X	    _uid_prefix="-u"
X	fi
X	if [ "x${milterbatv_domain}" != "x" ];then
X	    milterbatv_domain="-d ${milterbatv_domain}"
X	fi
X	if [ "x${milterbatv_allowlist}" != "x" ];then
X	    milterbatv_allowlist="-a ${milterbatv_allowlist}"
X	fi
X	if [ "x${milterbatv_key}" != "x" ];then
X	    milterbatv_key="-k ${milterbatv_key}"
X	fi
X	command_args="-l ${_socket_prefix} ${milterbatv_socket} ${_uid_prefix} ${milterbatv_uid} -P ${pidfile} ${milterbatv_cfgfile} ${milterbatv_domain} ${milterbatv_allowlist} ${milterbatv_key}"
X    fi
Xfi
X
Xbatv_prepcmd ()
X{
X    if [ -S ${milterbatv_socket##local:} ] ; then
X        rm -f ${milterbatv_socket##local:}
X    elif [ -S ${milterbatv_socket##unix:} ] ; then
X        rm -f ${milterbatv_socket##unix:}
X    fi
X    if [ ! -d ${_piddir} ] ; then
X	mkdir -p ${_piddir}
X    fi
X    if [ -n "${milterbatv_uid}" ] ; then
X	chown ${milterbatv_uid} ${_piddir}
X    fi
X}
X
Xbatv_postcmd()
X{
X    if [ -S ${milterbatv_socket##local:} ] ; then
X        rm -f ${milterbatv_socket##local:}
X    elif [ -S ${milterbatv_socket##unix:} ] ; then
X        rm -f ${milterbatv_socket##unix:}
X    fi
X    # just if the directory is empty
X    rmdir ${_piddir} > /dev/null 2>&1
X}
X
Xrun_rc_command "$1"
28039f808fe6934082b1c774b5382689
echo x - mail/batv-milter/files/patch-batv-filter_batv-filter.c
sed 's/^X//' >mail/batv-milter/files/patch-batv-filter_batv-filter.c << 'e3f375bd80b754227a3d329d06d4e231'
X--- ./batv-filter/batv-filter.c.orig	2009-05-28 01:16:45.000000000 +0900
X+++ ./batv-filter/batv-filter.c	2009-06-04 07:30:43.000000000 +0900
X@@ -53,7 +53,12 @@
X #include <openssl/sha.h>
X 
X /* libsm includes */
X-#include <sm/string.h>
X+#ifdef WITHOUT_SMSTRING
X+# define sm_strlcat     strlcat
X+# define sm_strlcpy     strlcpy
X+#else /* WITHOUT_SMSTRING */
X+# include <sm/string.h>
X+#endif /* WITHOUT_SMSTRING */
X 
X /* libmilter includes */
X #ifndef DEBUG
X@@ -3461,10 +3466,11 @@
X 		pw = getpwnam(user);
X 		if (pw == NULL)
X 		{
X+			char *q;
X 			uid_t uid;
X 
X-			uid = atoi(user);
X-			if (uid != 0 && uid != LONG_MIN && uid != LONG_MAX)
X+			uid = (uid_t) strtol(user, &q, 10);
X+			if (*q == '\0')
X 				pw = getpwuid(uid);
X 
X 			if (pw == NULL)
e3f375bd80b754227a3d329d06d4e231
echo x - mail/batv-milter/files/patch-batv-filter_util.c
sed 's/^X//' >mail/batv-milter/files/patch-batv-filter_util.c << 'e2ddac052be113510490fdf76a4cb0d9'
X--- ./batv-filter/util.c.orig	2009-05-28 01:16:45.000000000 +0900
X+++ ./batv-filter/util.c	2009-06-04 07:31:03.000000000 +0900
X@@ -25,7 +25,13 @@
X #include <ctype.h>
X 
X /* libsm includes */
X-#include <sm/string.h>
X+#ifdef WITHOUT_SMSTRING
X+# define sm_strlcat     strlcat
X+# define sm_strlcpy     strlcpy
X+# include <sm/gen.h>
X+#else /* WITHOUT_SMSTRING */
X+# include <sm/string.h>
X+#endif /* WITHOUT_SMSTRING */
X 
X /* batv-filter includes */
X #include "batv-filter.h"
e2ddac052be113510490fdf76a4cb0d9
echo x - mail/batv-milter/files/patch-batv-filter_config.c
sed 's/^X//' >mail/batv-milter/files/patch-batv-filter_config.c << '6b06435e3ed6d099fc46a7cb6729ec59'
X--- ./batv-filter/config.c.orig	2009-04-22 02:43:48.000000000 +0900
X+++ ./batv-filter/config.c	2009-06-04 07:30:43.000000000 +0900
X@@ -17,7 +17,12 @@
X #include <assert.h>
X 
X /* libsm includes */
X-#include <sm/string.h>
X+#ifdef WITHOUT_SMSTRING
X+# define sm_strlcat     strlcat
X+# define sm_strlcpy     strlcpy
X+#else /* WITHOUT_SMSTRING */
X+# include <sm/string.h>
X+#endif /* WITHOUT_SMSTRING */
X 
X /* dkim-filter includes */
X #include "config.h"
6b06435e3ed6d099fc46a7cb6729ec59
echo x - mail/batv-milter/files/site.config.m4
sed 's/^X//' >mail/batv-milter/files/site.config.m4 << 'e3bfccbe4584301f3ccb3b7482b48ff1'
Xdefine(`confEBINDIR',`%%PREFIX%%/libexec')
Xdefine(`confMANROOT',`%%PREFIX%%/man/man')
Xdefine(`confMANROOTMAN',`%%PREFIX%%/man/man')
Xdefine(`confUBINDIR',`%%PREFIX%%/bin')
Xdefine(`confINCLUDEDIR',`%%PREFIX%%/include')
Xdefine(`confLIBDIR',`%%PREFIX%%/lib')
Xdefine(`confSHAREDLIBDIR',`%%PREFIX%%/lib')
Xdefine(`confDONT_INSTALL_CATMAN',`True')
XAPPENDDEF(`confLIBDIRS', `-L%%OPENSSLLIB%% ')
XAPPENDDEF(`confINCDIRS', `-I%%OPENSSLINC%% ')
Xdnl define(`confOPTIMIZE', `-g')
e3bfccbe4584301f3ccb3b7482b48ff1
echo x - mail/batv-milter/files/patch-batv-filter_Makefile.m4
sed 's/^X//' >mail/batv-milter/files/patch-batv-filter_Makefile.m4 << '82fbb08ddae6f92190bf9c3c02685a8a'
X--- ./batv-filter/Makefile.m4.orig	2009-04-24 06:11:09.000000000 +0900
X+++ ./batv-filter/Makefile.m4	2009-06-04 07:30:43.000000000 +0900
X@@ -3,6 +3,7 @@
X 
X define(`confMT', `TRUE')
X define(`confREQUIRE_LIBSM', `true')
X+define(`confENVDEF', `-DWITHOUT_SMSTRING ')
X 
X APPENDDEF(`confLIBS', `-lssl -lcrypto')
X dnl Enable and edit these paths as needed:
X@@ -20,7 +21,7 @@
X bldPRODUCT_START(`executable', `batv-filter')
X define(`bldSOURCES', `batv-filter.c config.c util.c ')
X dnl PREPENDDEF(`confLIBS', ifelse(index(confENVDEF, `-DCOMMERCIAL'), -1, `-lmilter ', `../libmilter/libmilter.a '))
X-PREPENDDEF(`confLIBS', `../libmilter/libmilter.a ')
X+PREPENDDEF(`confLIBS', `-lmilter ')
X bldPRODUCT_END
X 
X bldPRODUCT_START(`manpage', `batv-filter')
82fbb08ddae6f92190bf9c3c02685a8a
exit

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



More information about the freebsd-ports-bugs mailing list