summaryrefslogtreecommitdiff
path: root/mail/sid-milter
diff options
context:
space:
mode:
authorpettai <pettai@pkgsrc.org>2010-03-12 22:42:55 +0000
committerpettai <pettai@pkgsrc.org>2010-03-12 22:42:55 +0000
commit435636b1ae6c217075999170f88b87d90e67a277 (patch)
treebae4694534692e02b26d986477cb20c1a7b045b3 /mail/sid-milter
parentc6cb10e5ae39a9a7d937dfc5ece3db565b379106 (diff)
downloadpkgsrc-435636b1ae6c217075999170f88b87d90e67a277.tar.gz
The sid-milter package is an open source implementation of the Sender-ID and
SPF sender authentication systems. Sender-ID and SPF have both been published by the IETF (RFC4406 and RFC4408, respectively) as experimental proposals. This package consists of a library that implements the record parsers needed to provide the authentication service, and a milter-based filter application that can plug in to the sendmail MTA to provide that service to sufficiently recent sendmail and postfix MTAs. An optional asynchronous resolver library is also provided to work around limitations of the basic BIND resolver which comes installed on most systems.
Diffstat (limited to 'mail/sid-milter')
-rw-r--r--mail/sid-milter/DESCR14
-rw-r--r--mail/sid-milter/MESSAGE17
-rw-r--r--mail/sid-milter/Makefile69
-rw-r--r--mail/sid-milter/PLIST17
-rw-r--r--mail/sid-milter/distinfo7
-rw-r--r--mail/sid-milter/files/sid-filter.m438
-rwxr-xr-xmail/sid-milter/files/sid-milter.sh24
-rw-r--r--mail/sid-milter/patches/patch-aa24
-rw-r--r--mail/sid-milter/patches/patch-ab27
9 files changed, 237 insertions, 0 deletions
diff --git a/mail/sid-milter/DESCR b/mail/sid-milter/DESCR
new file mode 100644
index 00000000000..dbced81595c
--- /dev/null
+++ b/mail/sid-milter/DESCR
@@ -0,0 +1,14 @@
+The sid-milter package is an open source implementation of the Sender-ID and
+SPF sender authentication systems.
+
+Sender-ID and SPF have both been published by the IETF (RFC4406 and RFC4408,
+respectively) as experimental proposals.
+
+This package consists of a library that implements the record parsers needed
+to provide the authentication service, and a milter-based filter application
+that can plug in to the sendmail MTA to provide that service to sufficiently
+recent sendmail and postfix MTAs.
+
+An optional asynchronous resolver library is also provided to work around
+limitations of the basic BIND resolver which comes installed on most
+systems.
diff --git a/mail/sid-milter/MESSAGE b/mail/sid-milter/MESSAGE
new file mode 100644
index 00000000000..59c3a7bedc4
--- /dev/null
+++ b/mail/sid-milter/MESSAGE
@@ -0,0 +1,17 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+
+sid-milter is now installed.
+The documentation can be found at ${PREFIX}/share/doc/sid-milter/
+
+Please read the instructions in ${PREFIX}/share/doc/sid-milter/INSTALL
+for setting up sid-milter.
+
+At a minmium you will need to specify:
+
+ sidmilter_flags="-p socketfile -d domain"
+
+in your /etc/rc.conf.
+
+For security you may also wish to investigate the use of "-u userid".
+===========================================================================
diff --git a/mail/sid-milter/Makefile b/mail/sid-milter/Makefile
new file mode 100644
index 00000000000..f743b647573
--- /dev/null
+++ b/mail/sid-milter/Makefile
@@ -0,0 +1,69 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+#
+
+DISTNAME= sid-milter-1.0.0
+CATEGORIES= mail
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=sid-milter/}
+
+MAINTAINER= pettai@NetBSD.org
+HOMEPAGE= http://sid-milter.sourceforge.net/
+COMMENT= Open source SPF/SenderID filter software from Sendmail, Inc
+LICENSE= sendmail-open-source-license
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+BUILDLINK_API_DEPENDS.libmilter+= libmilter>=8.13.0
+DEPENDS+= sendmail>=8.13.0:../../mail/sendmail
+
+USE_BUILTIN.libmilter= NO
+USE_TOOLS+= gm4
+MAKE_ENV+= M4=${M4:Q}
+PTHREAD_OPTS+= require
+RCD_SCRIPTS= sid-milter
+
+SIDDOC= ${PREFIX}/share/doc/sid-milter
+
+SUBST_CLASSES+= libs
+SUBST_STAGE.libs= pre-build
+SUBST_FILES.libs= sid-filter/Makefile.m4
+SUBST_SED.libs= -e "s|@LMBASE@|${BUILDLINK_PREFIX.libmilter}|g"
+SUBST_MESSAGE.libs= Fixing paths.
+
+INSTALLATION_DIRS= bin include lib ${PKGMANDIR}/cat3 ${PKGMANDIR}/cat8
+
+post-extract:
+ ${CP} ${FILESDIR}/sid-filter.m4 ${WRKSRC}/sid-filter/Makefile.m4
+
+do-build:
+ (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./Build)
+
+do-install:
+ ${INSTALL_DATA_DIR} ${DESTDIR}${SIDDOC}
+ ${INSTALL_LIB} ${WRKSRC}/${SIDWORK}/libmarid/sm-marid.h \
+ ${DESTDIR}${PREFIX}/include
+ ${INSTALL_LIB} ${WRKSRC}/${SIDWORK}/libar/libar.a \
+ ${DESTDIR}${PREFIX}/lib
+ ${INSTALL_MAN} ${WRKSRC}/${SIDWORK}/libar/ar.0 \
+ ${DESTDIR}${PREFIX}/${PKGMANDIR}/cat3/
+ ${INSTALL_PROGRAM} ${WRKSRC}/${SIDWORK}/sid-filter/sid-filter \
+ ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKSRC}/${SIDWORK}/sid-filter/sid-filter.0 \
+ ${DESTDIR}${PREFIX}/${PKGMANDIR}/cat8/
+ ${INSTALL_DATA} ${WRKSRC}/FEATURES ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/INSTALL ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/KNOWNBUGS ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/LICENSE ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/README-SenderID ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/RELEASE_NOTES ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/rfc4406.txt ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/rfc4407.txt ${DESTDIR}${SIDDOC}
+ ${INSTALL_DATA} ${WRKSRC}/rfc4408.txt ${DESTDIR}${SIDDOC}
+
+.include "../../security/openssl/buildlink3.mk"
+.include "../../mail/libmilter/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
+
+# Has to be below include for bsd.pkg.mk, else substition fails
+SIDWORK!= ${ECHO} obj.`${UNAME} -srm | ${TR} \ . | ${TR} \/ -`
diff --git a/mail/sid-milter/PLIST b/mail/sid-milter/PLIST
new file mode 100644
index 00000000000..0344a68c99e
--- /dev/null
+++ b/mail/sid-milter/PLIST
@@ -0,0 +1,17 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+bin/sid-filter
+include/sm-marid.h
+lib/libar.a
+man/cat3/ar.0
+man/cat8/sid-filter.0
+share/doc/sid-milter/FEATURES
+share/doc/sid-milter/INSTALL
+share/doc/sid-milter/KNOWNBUGS
+share/doc/sid-milter/LICENSE
+share/doc/sid-milter/README
+share/doc/sid-milter/README-SenderID
+share/doc/sid-milter/RELEASE_NOTES
+share/doc/sid-milter/rfc4406.txt
+share/doc/sid-milter/rfc4407.txt
+share/doc/sid-milter/rfc4408.txt
+share/examples/rc.d/sid-milter
diff --git a/mail/sid-milter/distinfo b/mail/sid-milter/distinfo
new file mode 100644
index 00000000000..1a6418e6c38
--- /dev/null
+++ b/mail/sid-milter/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+
+SHA1 (sid-milter-1.0.0.tar.gz) = dd6517b36933083923c3094cf7f09e74825e7dcb
+RMD160 (sid-milter-1.0.0.tar.gz) = 7aca88c5d1c18581a17a779c87e7dda3d0091e0e
+Size (sid-milter-1.0.0.tar.gz) = 351161 bytes
+SHA1 (patch-aa) = 4c47aeb2dc12851703ffdc8a0e7239fd5f673af2
+SHA1 (patch-ab) = c8d6294625d698e8eea0e23a3b9fcbe448dabcae
diff --git a/mail/sid-milter/files/sid-filter.m4 b/mail/sid-milter/files/sid-filter.m4
new file mode 100644
index 00000000000..e3d51ff6300
--- /dev/null
+++ b/mail/sid-milter/files/sid-filter.m4
@@ -0,0 +1,38 @@
+# $NetBSD: sid-filter.m4,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+
+include(confBUILDTOOLSDIR`/M4/switch.m4')
+
+define(`confMT', `TRUE')
+define(`confREQUIRE_LIBSM', `true')
+
+dnl Sometimes enabling this next line clears up some load-time warnings
+dnl APPENDDEF(`confLIBS', `-lcipher ')
+
+bldPUSH_SMLIB(`sm')
+bldPUSH_SMLIB(`marid')
+
+PREPENDDEF(`confINCDIRS', `-I../../sendmail ')
+PREPENDDEF(`confINCDIRS', `-I../../libmarid ')
+
+dnl Disable these three lines if you want to use the OS-provided resolver
+dnl instead of the provided asynchronous resolver library.
+bldPUSH_SMLIB(`ar')
+PREPENDDEF(`confINCDIRS', `-I../../libar ')
+APPENDDEF(`confENVDEF', `-DUSE_ARLIB ')
+
+dnl Enable these next line if needed to specify the locations of libmilter.a
+dnl and the libmilter include files:
+APPENDDEF(`confINCDIRS', `-I@LMBASE@/include')
+APPENDDEF(`confLIBDIRS', `-L@LMBASE@/lib')
+
+
+bldPRODUCT_START(`executable', `sid-filter')
+define(`bldSOURCES', `sid-filter.c rfc2822.c util.c ')
+PREPENDDEF(`confLIBS', `-lmilter -lpthread')
+bldPRODUCT_END
+
+bldPRODUCT_START(`manpage', `sid-filter')
+define(`bldSOURCES', `sid-filter.8')
+bldPRODUCT_END
+
+bldFINISH
diff --git a/mail/sid-milter/files/sid-milter.sh b/mail/sid-milter/files/sid-milter.sh
new file mode 100755
index 00000000000..006eee3b5a5
--- /dev/null
+++ b/mail/sid-milter/files/sid-milter.sh
@@ -0,0 +1,24 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: sid-milter.sh,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+#
+# PROVIDE: sidfilter
+# REQUIRE: DAEMON
+
+if [ -f /etc/rc.subr ]; then
+ . /etc/rc.subr
+fi
+
+name="sidfilter"
+rcvar=$name
+command="@PREFIX@/bin/sid-filter"
+pidfile="/var/run/sid-filter.pid"
+command_args="-l -P ${pidfile}"
+
+if [ -f /etc/rc.subr ]; then
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ echo -n " ${name}"
+ ${command} ${sidfilter_flags} ${command_args}
+fi
diff --git a/mail/sid-milter/patches/patch-aa b/mail/sid-milter/patches/patch-aa
new file mode 100644
index 00000000000..3d0582db510
--- /dev/null
+++ b/mail/sid-milter/patches/patch-aa
@@ -0,0 +1,24 @@
+$NetBSD: patch-aa,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+--- devtools/OS/NetBSD.orig Sun Jun 27 00:19:35 2004
++++ devtools/OS/NetBSD Sun Jun 27 00:24:11 2004
+@@ -7,13 +7,14 @@
+ define(`confLIBS', `-lutil')
+ define(`confENVDEF', ` -DNETISO')
++define(`confSM_OS_HEADER', `sm_os_netbsd')
+ define(`confDEPEND_TYPE', `CC-M')
+-define(`confSBINGRP', `wheel')
+-define(`confUBINOWN', `root')
+-define(`confUBINGRP', `wheel')
+-define(`confMANOWN', `root')
+-define(`confMANGRP', `wheel')
++define(`confSBINGRP', `${BSD_BINGRP}')
++define(`confUBINOWN', `${BSD_BINOWN}')
++define(`confUBINGRP', `${BSD_BINGRP}')
++define(`confMANOWN', `${BSD_MANOWN}')
++define(`confMANGRP', `${BSD_MANGRP}')
+ define(`confMAN1EXT', `0')
+ define(`confMAN3EXT', `0')
+ define(`confMAN4EXT', `0')
+ define(`confMAN5EXT', `0')
+ define(`confMAN8EXT', `0')
++define(`confLDOPTS', `${LDFLAGS}')
diff --git a/mail/sid-milter/patches/patch-ab b/mail/sid-milter/patches/patch-ab
new file mode 100644
index 00000000000..739212f2e29
--- /dev/null
+++ b/mail/sid-milter/patches/patch-ab
@@ -0,0 +1,27 @@
+$NetBSD: patch-ab,v 1.1.1.1 2010/03/12 22:42:55 pettai Exp $
+--- /dev/null 2008-10-16 17:49:30.000000000 +1300
++++ include/sm/os/sm_os_netbsd.h
+@@ -0,0 +1,23 @@
++/*
++ */
++
++/*
++** sm_os_netbsd.h -- platform definitions for NetBSD
++*/
++
++#define SM_OS_NAME "netbsd"
++
++#define SM_CONF_SYS_CDEFS_H 1
++
++#if defined(__NetBSD__)
++# include <sys/param.h> /* defines __NetBSD_Version__ */
++# if __NetBSD_Version__ >= 104030000
++ /* 1.4.3 and later have strlcpy()/strlcat() */
++# ifndef SM_CONF_STRL
++# define SM_CONF_STRL 1
++# endif
++# endif
++# if __NetBSD_Version__ >= 499006500
++# define SM_CONF_STDBOOL_H 1
++# endif
++#endif