From owner-freebsd-ports-bugs@FreeBSD.ORG Fri Oct 5 09:20:02 2007 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9D7F516A419 for ; Fri, 5 Oct 2007 09:20:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 6C32213C45D for ; Fri, 5 Oct 2007 09:20:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.1/8.14.1) with ESMTP id l959K2wh028193 for ; Fri, 5 Oct 2007 09:20:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.1/8.14.1/Submit) id l959K2kJ028192; Fri, 5 Oct 2007 09:20:02 GMT (envelope-from gnats) Resent-Date: Fri, 5 Oct 2007 09:20:02 GMT Resent-Message-Id: <200710050920.l959K2kJ028192@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Anton Lysenok Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2CC2D16A417 for ; Fri, 5 Oct 2007 09:18:17 +0000 (UTC) (envelope-from lysenok@mail.midland.com.ua) Received: from mail.metcentr.com.ua (mail.metcentr.com.ua [212.82.212.50]) by mx1.freebsd.org (Postfix) with ESMTP id 1968213C43E for ; Fri, 5 Oct 2007 09:18:15 +0000 (UTC) (envelope-from lysenok@mail.midland.com.ua) Received: from mail.midland.com.ua (localhost [127.0.0.1]) by mail.metcentr.com.ua (8.13.8/8.13.8) with ESMTP id l959HG5U059646 for ; Fri, 5 Oct 2007 12:17:52 +0300 (EEST) (envelope-from lysenok@mail.midland.com.ua) Received: (from root@localhost) by mail.midland.com.ua (8.13.8/8.13.8/Submit) id l959HGfB059645; Fri, 5 Oct 2007 12:17:16 +0300 (EEST) (envelope-from lysenok) Message-Id: <200710050917.l959HGfB059645@mail.midland.com.ua> Date: Fri, 5 Oct 2007 12:17:16 +0300 (EEST) From: Anton Lysenok To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/116948: [NEW PORT] mail/smfsav: Sendmail Sender Address Validator X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Anton Lysenok List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Oct 2007 09:20:02 -0000 >Number: 116948 >Category: ports >Synopsis: [NEW PORT] mail/smfsav: Sendmail Sender Address Validator >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: Fri Oct 05 09:20:02 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Anton Lysenok >Release: FreeBSD 6.2-RELEASE-p5 i386 >Organization: >Environment: System: FreeBSD xxxx 6.2-RELEASE-p5 FreeBSD 6.2-RELEASE-p5 #0: Mon May 28 13:36:21 EEST 2007 xxxx:xxxx i386 >Description: It's a lightweight, fast and reliable Sendmail milter that implements a real-time Sender e-Mail Address Verification technology. This technology can stop some kinds of SPAM with a spoofed sender's e-Mail address. Also it implements a real-time Recipient e-Mail Address Verification technology. It can be useful if your machine is a backup MX for the recipient's domains or if your machine forwards all e-Mail messages as a relay host for your domains to another internal or external e-Mail servers. It's a lite alternative for the spamilter, milter-sender and milter-ahead milters. WWW: http://smfs.sourceforge.net/ - Eugene Kurmanin me@kurmanin.info ------------------------------ SOME COMMENTS FROM MANTAINER: Bind package is required only for build, thats why I do not install bind to system. Port's Makefile only builds bind and includes needed libraries and then cleans bind's work folder. >How-To-Repeat: >Fix: --- smfsav.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: # # smfsav # smfsav/Makefile # smfsav/distinfo # smfsav/files # smfsav/files/patch-smf-sav.conf # smfsav/files/patch-smf-sav.c # smfsav/files/patch-Makefile # smfsav/files/patch-init # smfsav/files/patch-install.sh # smfsav/files/patch-readme # smfsav/pkg-message # smfsav/pkg-descr # smfsav/pkg-deinstall # echo c - smfsav mkdir -p smfsav > /dev/null 2>&1 echo x - smfsav/Makefile sed 's/^X//' >smfsav/Makefile << 'END-of-smfsav/Makefile' X# New ports collection makefile for: smfsav X# Date created: 05 October 2007 X# Whom: Anton Lysenok X# X# $FreeBSD$ X# X XPORTNAME= smfsav XPORTVERSION= 1.4.0 XCATEGORIES= mail XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} XMASTER_SITE_SUBDIR= smfs XDISTNAME= smf-sav-1.4.0 X XMAINTAINER= bart@tapolsky.net.ua XCOMMENT= Sendmail Sender Address Validator X XBUILD_DEPENDS= ${PORTSDIR}/dns/bind84/work/src/lib/libbind_r.a:${PORTSDIR}/dns/bind84:all \ X ${PORTSDIR}/dns/bind84/work/src/include/arpa/inet.h:${PORTSDIR}/dns/bind84:all \ X ${PORTSDIR}/dns/bind84/work/src/include/arpa/nameser.h:${PORTSDIR}/dns/bind84:all \ X ${PORTSDIR}/dns/bind84/work/src/include/netdb.h:${PORTSDIR}/dns/bind84:all \ X ${PORTSDIR}/dns/bind84/work/src/include/resolv.h:${PORTSDIR}/dns/bind84:all X XPLIST_FILES= sbin/smfsav \ X etc/smfsav.conf-dist X X.if !defined(NOPORTDOCS) XPLIST_FILES+= share/doc/${PORTNAME}/COPYING \ X share/doc/${PORTNAME}/CHANGES \ X share/doc/${PORTNAME}/README XPLIST_DIRS= share/doc/${PORTNAME} X.endif X Xdo-install: X @${WRKSRC}/install.sh X @${ECHO} X ${INSTALL_PROGRAM} ${WRKSRC}/smf-sav ${PREFIX}/sbin/smfsav X ${INSTALL_DATA} ${WRKSRC}/smf-sav.conf ${PREFIX}/etc/smfsav.conf-dist X ${INSTALL_SCRIPT} ${WRKSRC}/init/smfsav.freebsd ${PREFIX}/etc/rc.d/smfsav X ${MKDIR} /var/run/smfsav X ${CHOWN} smfsav:smfsav /var/run/smfsav X Xpost-install: X.if !defined(NOPORTDOCS) X ${MKDIR} ${DOCSDIR} X ${INSTALL_DATA} ${WRKSRC}/COPYING ${DOCSDIR}/COPYING X ${INSTALL_DATA} ${WRKSRC}/ChangeLog ${DOCSDIR}/CHANGES X ${INSTALL_DATA} ${WRKSRC}/readme ${DOCSDIR}/README X.endif X X @${CAT} ${PKGMESSAGE} X X.include END-of-smfsav/Makefile echo x - smfsav/distinfo sed 's/^X//' >smfsav/distinfo << 'END-of-smfsav/distinfo' XMD5 (smf-sav-1.4.0.tar.gz) = 7f3d0b66a2b940c86b47e94afe5f96a2 XSHA256 (smf-sav-1.4.0.tar.gz) = 77a28d012330581b5ecaf126a153f049731c399e294aab0ded53c1b0abab68cc XSIZE (smf-sav-1.4.0.tar.gz) = 21968 END-of-smfsav/distinfo echo c - smfsav/files mkdir -p smfsav/files > /dev/null 2>&1 echo x - smfsav/files/patch-smf-sav.conf sed 's/^X//' >smfsav/files/patch-smf-sav.conf << 'END-of-smfsav/files/patch-smf-sav.conf' X--- smf-sav.conf.orig Wed Oct 25 23:15:10 2006 X+++ smf-sav.conf Fri Oct 5 10:33:30 2007 X@@ -1,4 +1,4 @@ X-# /etc/mail/smfs/smf-sav.conf X+# /usr/local/etc/smfsav.conf X # X # smf-sav configuration file v1.4.0 (it's read at start) X # X@@ -103,9 +103,9 @@ X X # Socket used to communicate with a Sendmail daemon X # X-# Default: unix:/var/run/smfs/smf-sav.sock X+# Default: unix:/var/run/smfsav/smfsav.sock X # X-#Socket unix:/var/run/smfs/smf-sav.sock X+#Socket unix:/var/run/smfsav/smfsav.sock X X # Facility for logging via a Syslog daemon X # END-of-smfsav/files/patch-smf-sav.conf echo x - smfsav/files/patch-smf-sav.c sed 's/^X//' >smfsav/files/patch-smf-sav.c << 'END-of-smfsav/files/patch-smf-sav.c' X--- smf-sav.c.orig Wed Oct 25 23:15:10 2006 X+++ smf-sav.c Wed Aug 29 15:54:13 2007 X@@ -20,11 +20,7 @@ X #endif X X #include X-#if __linux__ || __sun__ X #include X-#else X-#include X-#endif X #include X #include X #include X@@ -33,20 +29,12 @@ X #endif X #include X #include X-#if __linux__ || __sun__ X #include X-#else X-#include X-#endif X #include X #include X #include X #include X-#if __linux__ || __sun__ X #include X-#else X-#include X-#endif X #include X #include X #include X@@ -68,7 +56,7 @@ X #define hash_size(x) ((unsigned long) 1 << x) X #define hash_mask(x) (hash_size(x) - 1) X X-#define CONFIG_FILE "/etc/mail/smfs/smf-sav.conf" X+#define CONFIG_FILE "/usr/local/etc/smfsav.conf" X #define PUBLIC_NAME "yourhost.yourdomain.tld" X #define SAFE_CALLBACK "postmaster@yourdomain.tld" X #define SYSLOG_FACILITY LOG_MAIL X@@ -81,9 +69,9 @@ X #define TO_PASS_TTL 3600 X #define TO_TEMPFAIL_TTL 300 X #define TO_FAIL_TTL 3600 X-#define WORK_SPACE "/var/run/smfs" X-#define OCONN "unix:" WORK_SPACE "/smf-sav.sock" X-#define USER "smfs" X+#define WORK_SPACE "/var/run/smfsav" X+#define OCONN "unix:" WORK_SPACE "/smfsav.sock" X+#define USER "smfsav" X X #define DNS_RETRANS 7 X #define DNS_RETRY 4 END-of-smfsav/files/patch-smf-sav.c echo x - smfsav/files/patch-Makefile sed 's/^X//' >smfsav/files/patch-Makefile << 'END-of-smfsav/files/patch-Makefile' X--- Makefile.orig Wed Oct 25 23:15:10 2006 X+++ Makefile Tue Aug 28 14:16:07 2007 X@@ -1,17 +1,17 @@ X CC = gcc X PREFIX = /usr/local X SBINDIR = $(PREFIX)/sbin X-DATADIR = /var/run/smfs X-CONFDIR = /etc/mail/smfs X-USER = smfs X-GROUP = smfs X-CFLAGS = -O2 -D_REENTRANT -fomit-frame-pointer -I/usr/local/include X+DATADIR = /var/run/smfsav X+CONFDIR = $(PREFIX)/etc X+USER = smfsav X+GROUP = smfsav X+CFLAGS = -O2 -D_REENTRANT -fomit-frame-pointer -I/usr/ports/dns/bind84/work/src/include X X # Linux X-LDFLAGS = -lmilter -lpthread -lresolv X+#LDFLAGS = -lmilter -lpthread -lresolv X X # FreeBSD (BIND v8 is required) X-#LDFLAGS = -lmilter -pthread -L/usr/local/lib -lbind_r X+LDFLAGS = -lmilter -pthread -L/usr/ports/dns/bind84/work/src/lib -lbind_r X X # Solaris X #LDFLAGS = -lmilter -lpthread -lsocket -lnsl -lresolv X@@ -30,20 +30,3 @@ X X clean: X rm -f smf-sav.o smf-sav X- X-install: X- @./install.sh X- @cp -f -p smf-sav $(SBINDIR) X- @if test ! -d $(DATADIR); then \ X- mkdir -m 700 $(DATADIR); \ X- chown $(USER):$(GROUP) $(DATADIR); \ X- fi X- @if test ! -d $(CONFDIR); then \ X- mkdir -m 755 $(CONFDIR); \ X- fi X- @if test ! -f $(CONFDIR)/smf-sav.conf; then \ X- cp -p smf-sav.conf $(CONFDIR)/smf-sav.conf; \ X- else \ X- cp -p smf-sav.conf $(CONFDIR)/smf-sav.conf.new; \ X- fi X- @echo Please, inspect and edit the $(CONFDIR)/smf-sav.conf file. END-of-smfsav/files/patch-Makefile echo x - smfsav/files/patch-init sed 's/^X//' >smfsav/files/patch-init << 'END-of-smfsav/files/patch-init' X--- init/smfsav.freebsd.orig Wed Oct 25 23:15:17 2006 X+++ init/smfsav.freebsd Fri Oct 5 10:27:36 2007 X@@ -1,12 +1,12 @@ X #!/bin/sh X X-# PROVIDE: smf-sav X+# PROVIDE: smfsav X # REQUIRE: NETWORKING X # BEFORE: sendmail X X # Written for FreeBSD. X # X-# Copy this file into /etc/rc.d as /etc/rc.d/smfsav X+# Copy this file into /usr/local/etc/rc.d as /usr/local/etc/rc.d/smfsav X # Add this line to /etc/rc.conf: X # X # smfsav_enable="YES" X@@ -15,7 +15,7 @@ X X name="smfsav" X rcvar=`set_rcvar` X-command="/usr/local/sbin/smf-sav" X+command="/usr/local/sbin/smfsav" X X load_rc_config ${name} X run_rc_command "$1" END-of-smfsav/files/patch-init echo x - smfsav/files/patch-install.sh sed 's/^X//' >smfsav/files/patch-install.sh << 'END-of-smfsav/files/patch-install.sh' X--- install.sh.orig Wed Oct 25 23:15:10 2006 X+++ install.sh Tue Aug 28 12:13:43 2007 X@@ -1,7 +1,7 @@ X #!/bin/sh X X-USER=smfs X-GROUP=smfs X+USER=smfsav X+GROUP=smfsav X UNAME=`uname` X PATH=$PATH:/sbin:/bin:/usr/sbin:/usr/bin X END-of-smfsav/files/patch-install.sh echo x - smfsav/files/patch-readme sed 's/^X//' >smfsav/files/patch-readme << 'END-of-smfsav/files/patch-readme' X--- readme.orig Wed Oct 25 23:15:10 2006 X+++ readme Wed Aug 29 16:07:27 2007 X@@ -38,18 +38,18 @@ X make X make install X X- Inspect and edit the /etc/mail/smfs/smf-sav.conf file. X+ Inspect and edit the /usr/local/etc/smfsav.conf file. X X-/usr/local/sbin/smf-sav X+/usr/local/sbin/smfsav X or X-/usr/local/sbin/smf-sav -c /etc/mail/smfs/smf-sav.conf X+/usr/local/sbin/smfsav -c /usr/local/etc/smfsav.conf X X Add this milter to start-up scripts before starting a Sendmail daemon. X Look at the contributed samples of start-up scripts. X X Add these lines to your Sendmail configuration file (usually sendmail.mc): X define(`confMILTER_MACROS_HELO', confMILTER_MACROS_HELO`, {verify}')dnl X-INPUT_MAIL_FILTER(`smf-sav', `S=unix:/var/run/smfs/smf-sav.sock, T=S:30s;R:4m')dnl X+INPUT_MAIL_FILTER(`smf-sav', `S=unix:/var/run/smfsav/smfsav.sock, T=S:30s;R:4m')dnl X X IMPORTANT: make sure that /var/run is not a group writable directory! If so, X or chmod 755 /var/run, or if it's impossible switch to another directory. END-of-smfsav/files/patch-readme echo x - smfsav/pkg-message sed 's/^X//' >smfsav/pkg-message << 'END-of-smfsav/pkg-message' X X===================================================================================== X1. Inspect and edit the /usr/local/etc/smfsav.conf file X2. Add these lines to your Sendmail configuration file (usually sendmail.mc): X define(`confMILTER_MACROS_HELO', confMILTER_MACROS_HELO`, {verify}')dnl X INPUT_MAIL_FILTER(`smfsav', `S=unix:/var/run/smfsav/smfsav.sock, T=S:30s;R:4m')dnl X3. Put line smfsav_enable="YES" to /etc/rc.conf file X4. Run /usr/local/etc/rc.d/smfsav start X===================================================================================== END-of-smfsav/pkg-message echo x - smfsav/pkg-descr sed 's/^X//' >smfsav/pkg-descr << 'END-of-smfsav/pkg-descr' X It's a lightweight, fast and reliable Sendmail milter that implements Xa real-time Sender e-Mail Address Verification technology. This technology Xcan stop some kinds of SPAM with a spoofed sender's e-Mail address. X Also it implements a real-time Recipient e-Mail Address Verification Xtechnology. It can be useful if your machine is a backup MX for the recipient's Xdomains or if your machine forwards all e-Mail messages as a relay host for your Xdomains to another internal or external e-Mail servers. X It's a lite alternative for the spamilter, milter-sender and milter-ahead Xmilters. X XWWW: http://smfs.sourceforge.net/ X X- Eugene Kurmanin Xme@kurmanin.info END-of-smfsav/pkg-descr echo x - smfsav/pkg-deinstall sed 's/^X//' >smfsav/pkg-deinstall << 'END-of-smfsav/pkg-deinstall' X#!/bin/sh X Xif [ "$2" = "POST-DEINSTALL" ]; then X if test -f /usr/local/etc/rc.d/smfsav; then X echo "[*] Removing init script" X rm /usr/local/etc/rc.d/smfsav X fi X X if /usr/sbin/pw group show "smfsav" 2>&1 >/dev/null; then X echo "[*] Removing group \"smfsav\"" X /usr/sbin/pw groupdel "smfsav" X fi X X if /usr/sbin/pw user show "smfsav" 2>&1 >/dev/null; then X echo "[*] Removing user \"smfsav\"" X /usr/sbin/pw userdel "smfsav" X fi X X if [ -d /var/run/smfsav ]; then X echo "[*] Removing directory \"/var/run/smfsav\"" X rmdir /var/run/smfsav X fi X Xfi END-of-smfsav/pkg-deinstall exit --- smfsav.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted: