ports/116867: port upgrade: mail/assp 1.2.6 -> 1.3.3.1

J.R. Oldroyd fbsd at opal.com
Wed Oct 3 12:30:09 UTC 2007


>Number:         116867
>Category:       ports
>Synopsis:       port upgrade: mail/assp 1.2.6 -> 1.3.3.1
>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:   Wed Oct 03 12:30:08 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     J.R. Oldroyd
>Release:        FreeBSD 6.2-STABLE i386
>Organization:
>Environment:
System: FreeBSD hbx.opal.com 6.2-STABLE FreeBSD 6.2-STABLE #34: Tue Jul 31 11:38:49 EDT 2007 root at hbx.opal.com:/usr/src/sys/i386/compile/hbx i386
>Description:
update of port from 1.2.6 to 1.3.3.1
>How-To-Repeat:
n/a
>Fix:
diff -ruN /usr/ports/mail/assp/Makefile mail/assp/Makefile
--- /usr/ports/mail/assp/Makefile	Wed Jan 31 11:45:06 2007
+++ mail/assp/Makefile	Wed Aug 22 04:31:19 2007
@@ -6,7 +6,7 @@
 #
 
 PORTNAME=	assp
-PORTVERSION=	1.2.6
+PORTVERSION=	1.3.3.1
 CATEGORIES=	mail
 MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
 MASTER_SITE_SUBDIR=	${PORTNAME}
@@ -22,20 +22,28 @@
 USE_DOS2UNIX=	addservice.pl \
 		assp.pl \
 		changelog.txt \
-		helpreport.txt \
+		files/URIBLCCTLDS.txt \
+		files/blackdomains.txt \
+		files/bombre.txt \
+		files/invalidptr.txt \
+		files/ipnp.txt \
+		files/ipwl.txt \
+		files/nodelay.txt \
+		files/rbl-service.txt \
+		files/redre.txt \
+		files/whitedomains.txt \
 		move2num.pl \
-		nodelay.txt \
-		notspamreport.txt \
 		rebuildspamdb.pl \
-		redre.txt \
-		redremovereport.txt \
-		redreport.txt \
 		repair.pl \
-		spamreport.txt \
+		reports/helpreport.txt \
+		reports/notspamreport.txt \
+		reports/redremovereport.txt \
+		reports/redreport.txt \
+		reports/spamreport.txt \
+		reports/whiteremovereport.txt \
+		reports/whitereport.txt \
 		stat.pl \
-		stats.sh \
-		whiteremovereport.txt \
-		whitereport.txt
+		stats.sh
 
 MAN8=		assp.8 assplog.8
 
@@ -62,7 +70,7 @@
 		DNSBL	"DNS block list checking" on \
 		MYSQL	"Use MySQL db to store white/red/delaylists" off
 
-WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}/${PORTNAME:U}
+WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}/${PORTNAME:U}_${PORTVERSION}-Install/${PORTNAME:U}
 
 .include <bsd.port.pre.mk>
 
@@ -117,10 +125,10 @@
 	${MKDIR} ${PREFIX}/lib/assp
 	${INSTALL_SCRIPT} ${WRKSRC}/*.pl ${PREFIX}/lib/assp
 	${INSTALL_SCRIPT} ${WRKSRC}/stats.sh ${PREFIX}/lib/assp
-	${INSTALL_DATA} ${WRKSRC}/nodelay.txt ${PREFIX}/lib/assp
-	${INSTALL_DATA} ${WRKSRC}/redre.txt ${PREFIX}/lib/assp
+	${MKDIR} ${PREFIX}/lib/assp/files
+	${INSTALL_DATA} ${WRKSRC}/files/* ${PREFIX}/lib/assp/files
 	${MKDIR} ${PREFIX}/lib/assp/reports
-	${INSTALL_DATA} ${WRKSRC}/*report.txt ${PREFIX}/lib/assp/reports
+	${INSTALL_DATA} ${WRKSRC}/reports/* ${PREFIX}/lib/assp/reports
 	${MKDIR} ${PREFIX}/lib/assp/images
 	${INSTALL_DATA} ${WRKSRC}/images/* ${PREFIX}/lib/assp/images
 
@@ -135,7 +143,7 @@
 
 .if !defined(NOPORTDOCS)
 	${MKDIR} ${DOCSDIR}
-	${INSTALL_DATA} ${WRKSRC}/*.htm ${DOCSDIR}
+	${INSTALL_DATA} ${WRKSRC}/docs/*.htm ${DOCSDIR}
 .endif
 
 post-install:
diff -ruN /usr/ports/mail/assp/distinfo mail/assp/distinfo
--- /usr/ports/mail/assp/distinfo	Thu Dec 21 14:14:10 2006
+++ mail/assp/distinfo	Wed Aug 22 04:28:04 2007
@@ -1,3 +1,3 @@
-MD5 (ASSP_1.2.6-Install.zip) = 94c22168b5013d3869136dccbd1c283c
-SHA256 (ASSP_1.2.6-Install.zip) = 0eea1a645305c16916593fb3e2580401122de5f7c36534e2200df36766aca3fd
-SIZE (ASSP_1.2.6-Install.zip) = 245745
+MD5 (ASSP_1.3.3.1-Install.zip) = 9ce0cc17ee9c8d8cb03d258b69812a11
+SHA256 (ASSP_1.3.3.1-Install.zip) = 810bebed2f48a480c7e7458fb9b6e2fbe3f39c441d74aa8471b458aa0e33e47b
+SIZE (ASSP_1.3.3.1-Install.zip) = 362975
diff -ruN /usr/ports/mail/assp/files/assplog.8.in mail/assp/files/assplog.8.in
--- /usr/ports/mail/assp/files/assplog.8.in	Mon Jul 17 23:08:23 2006
+++ mail/assp/files/assplog.8.in	Wed Aug 22 04:26:22 2007
@@ -39,10 +39,13 @@
 .RS
 .TP
 Cyan
-Message to assp-{notspam,spam,white}@ address
+Message to assp{notspam,spam,white}@ address
 .TP
 Yellow
 Admin change from web interface
+.TP
+Grey
+Messages about ASSP's operation
 .RE
 .PP
 Entries from the log are reformatted to a consistent format and
@@ -66,24 +69,36 @@
 IR
 Invalid recipient, failed LDAP or flat list test
 .TP
+IS
+Invalid sender
+.TP
 LW
 Local or Whitelisted emails
 .TP
 MA
 Malformed RFC822 recipient address
 .TP
+ME
+Maximum number of other errors exceeded
+.TP
 NS
-assp-notspam@ report submission
+asspnotspam@ report submission
 .TP
 Ok
 Email that fully passed all tests
 .TP
+PB
+Penalty Box counter was incremented
+.TP
 RB
 Blocked Relay attempt
 .TP
 SP
 SPF check failed
 .TP
+VI
+Virus detected
+.TP
 WA+
 Whitelist addition by local user
 .TP
@@ -91,11 +106,14 @@
 Whitelist addition of address CC'd in whitelisted email
 .TP
 SR
-assp-spam@ report submission
+asspspam@ report submission
 .SH BUGS
 Note that
 .I assplog
-does not display anywhere near all the log messages; for a complete view of
+suppresses some of the messages in the log (those that appear
+to duplicate information in other messages).
+Unknown/new log messages are not colorized.
+For an accurate view of
 the log, use
 .B "tail -f"
 directly on the log file.
diff -ruN /usr/ports/mail/assp/files/patch-assp.pl mail/assp/files/patch-assp.pl
--- /usr/ports/mail/assp/files/patch-assp.pl	Thu Dec 21 14:14:10 2006
+++ mail/assp/files/patch-assp.pl	Wed Aug 22 04:33:02 2007
@@ -1,29 +1,37 @@
---- assp.pl.orig	Wed Dec 13 11:53:29 2006
-+++ assp.pl	Wed Dec 13 11:58:31 2006
-@@ -86,7 +86,7 @@
-   'The address:port of your message handling system\'s smtp server. If only the port is entered, or the keyword <b>__INBOUND__</b>:<i>port</i> is used, then the connection will be established to the same IP where the connection was received. This is usefull when you have several IPs with different domains/profiles in your MTA.<br /> Examples: "127.0.0.1:125","127.0.0.1:125|127.0.0.5:125", "10.0.1.3", "10.0.1.3:1025", "__INBOUND__:125", "125", etc.'],
- [AsAService,'As a Service',0,checkbox,0,'(.*)',undef,
-   'In Windows 2000 / NT you can run it as a service; requires <a href="http://www.roth.net/perl/Daemon/" rel="external">win32::daemon</a>. Requires start from the service control panel.'],
--[AsADaemon,'As a Daemon',0,checkbox,0,'(.*)',undef,
-+[AsADaemon,'As a Daemon',0,checkbox,1,'(.*)',undef,
-  'In Linux/BSD/Unix/OSX fork and close file handles, kinda like "perl assp.pl &" but better. Requires restart.'],
- [myName,'My Name',40,textinput,'ASSP.nospam','(\S+)',undef,
-   'What the program calls itself in the email "received by" header. Usually ASSP.nospam.'],
-@@ -692,7 +692,7 @@
-   'SMTP error message to reject attachments.'],
- [UseAvClamd,'Use Av Clamd',0,checkbox,1,'(.*)',undef,
-   'If activated, the message is checked by Av Clamd, this requires an installed <a href="http://search.cpan.org/~cfaber/File-Scan-ClamAV-1.06/lib/File/Scan/ClamAV.pm" rel="external">File::Scan::ClamAV</a> Perl module. '],
--[AvClamdPort,'Port or file socket for local Av Clamd',20,textinput,'3310','(\S+)',undef,
-+[AvClamdPort,'Port or file socket for local Av Clamd',20,textinput,'/var/run/clamav/clamd','(\S+)',undef,
-   'A port or socket to connect to. If the socket has been setup as a TCP/IP socket (see the TCPSocket option in the clamav.conf file), then specifying in a number will cause File::Scan::ClamAV to use a TCP socket. For example 3310 or /tmp/clamd '],
- [AvClamdBufSize,'Size of buffer for Av Clamd',7,textinput,'512','(\d+)',undef,
-   'Buffer size for stream check, must be more than max length of virus signature'],
-@@ -862,7 +862,7 @@
-   '<span class="negative"> 0 = no report, 1 = to user, 2 = to TO address, 3 = both</span>'],
+--- assp.pl.orig	Fri Aug  3 14:10:49 2007
++++ assp.pl	Fri Aug  3 14:12:21 2007
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!/usr/local/bin/perl
+ 
+ use File::Copy;
+ use Encode;
+@@ -803,8 +803,8 @@
+ [ScanWL,'Scan Whitelisted Senders',0,checkbox,'1','(.*)',undef,''],
+ [ScanNP,'Scan No Processing Senders',0,checkbox,'','(.*)',undef,''],
+ [ScanLocal,'Scan Local Senders',0,checkbox,'','(.*)',undef,''],
+-[AvClamdPort,'Port or file socket for ClamAV',20,textinput,'/tmp/clamd','(\S+)',undef,
+-  'A socket specified in the clamav.conf file - LocalSocket. For example /tmp/clamd. If the socket has been setup as a TCP/IP socket (see the TCPSocket option in the clamav.conf file), then specify the TCP socket. For example 3310 '],
++[AvClamdPort,'Port or file socket for ClamAV',20,textinput,'/var/run/clamav/clamd','(\S+)',undef,
++  'A socket specified in the clamav.conf file - LocalSocket. For example /var/run/clamav/clamd. If the socket has been setup as a TCP/IP socket (see the TCPSocket option in the clamav.conf file), then specify the TCP socket. For example 3310 '],
+ [AvError,'Reply Message to Refuse Infected E<!--get rid of google autofill-->mail',80,textinput,'554 5.7.1 Mail appears infected with \'$infection\'.','(5\d\d .*)',undef,
+   'Reply message to refuse infected mail. The string $infection is replaced with the name of the detected virus.<br />
+   For example: 554 5.7.1 Mail appears infected with \'$infection\' -- disinfect and resend.'],
+@@ -959,7 +959,7 @@
+   '<span class="negative"> 0 = no report, 1 = to SENDER, 2 = to TO address (below), 3 = BOTH</span>'],
  [EmailRedlistTo,'To Address for Redlist-Reports',40,textinput,'','(.+)',undef,
    'Email sent from ASSP acknowledging your submissions will be sent to this address. For example: admin at domain.com'],
 -[EmailFrom,'From Address for Reports',40,textinput,'<spammaster at yourdomain.com>','(.+)',undef,
 +[EmailFrom,'From Address for Reports',40,textinput,'<postmaster at yourdomain.com>','(.+)',undef,
-   'Email sent from ASSP acknowledging your submissions will be sent from this address.<br />
- For example: <> or mailadmin at mydomain.com.'],
- [NoHaiku,'Don\'t reply to messages to the Email Interface',0,checkbox,0,'(.*)',undef,
+   'Email sent from ASSP acknowledging your submissions will be sent from this address.'],
+ [NoHaiku,'Legacy: Don\'t reply to messages to the Email Interface',0,checkbox,0,'([01]?)',undef,
+   'Check this option to suppress email reports for spam and not-spam reports, whitelist and redlist additions/deletions via the email interface.<br /><hr />
+@@ -1168,7 +1168,7 @@
+ [0,0,0,'heading','Server Setup'],
+ [AsAService,'Run ASSP as a Windows Service**',0,checkbox,0,'([01]?)',undef,
+   'In Windows NT/2000/XP/2003 ASSP can be installed as a service. This setting tells ASSP that this has been done -- it does not install the Windows service for you. Installing ASSP as a service requires several steps which are detailed in the <a href="http://www.asspsmtp.org/wiki/Quick_Start_for_Win32">Quick Start for Win32</a> wiki page.','Basic'],
+-[AsADaemon,'Run ASSP as a Daemon**',0,checkbox,0,'([01]?)',undef,
++[AsADaemon,'Run ASSP as a Daemon**',0,checkbox,1,'([01]?)',undef,
+  'In Linux/BSD/Unix/OSX fork and close file handles. Similar to the command "perl assp.pl &", but better.','Basic'],
+ [runAsUser,'Run as UID**',20,textinput,'','(\S*)',undef,
+   'The *nix user name to assume after startup (*nix only).<p><small><i>Examples:</i> assp, nobody</small>','Basic'],
diff -ruN /usr/ports/mail/assp/files/patch-stats.sh mail/assp/files/patch-stats.sh
--- /usr/ports/mail/assp/files/patch-stats.sh	Mon Jul 17 23:08:23 2006
+++ mail/assp/files/patch-stats.sh	Wed Aug 22 04:26:22 2007
@@ -1,6 +1,17 @@
---- stats.sh.orig	Thu Jul 13 11:50:02 2006
-+++ stats.sh	Thu Jul 13 11:55:05 2006
-@@ -4,12 +4,12 @@
+--- stats.sh.orig	Fri Aug  3 23:48:56 2007
++++ stats.sh	Fri Aug  3 23:49:15 2007
+@@ -1,15 +1,23 @@
+ #!/bin/sh
+ 
++# This version of the script is heavily modified from the now
++# unsupported original.
++#
++# This version by:
++#	J.R. Oldroyd <fbsd at opal.com>
++#	FreeBSD port maintained for ASSP
++#
++
+ # As a shell script (running on Unix...) it expects to find the local
  # copy of your standard Unix shell, the 'tail' utility and a working 'awk'
  # interpreter.
  
@@ -16,21 +27,23 @@
  # be patient. As things happen - the logger will reveal it in COLOR!
  # ------------------------------------ KRL -------------------------
  
-@@ -30,8 +30,11 @@
- # BS (in Red) lines are those caught by the Bayesian filter !!
- # LW (in White .. mostly) are those Local or Whitelisted eMails
- # Ok (in Green) are eMail that fully pass alltests without exceptions.
+@@ -27,14 +35,7 @@
+ #  order to give you a full screen on startup. Also, it assumes
+ #  ANSI Color mode for your screen to display the lines in color.
+ #
+-# BS (in Red) lines are those caught by the Bayesian filter !!
+-# LW (in White .. mostly) are those Local or Whitelisted eMails
+-# Ok (in Green) are eMail that fully pass alltests without exceptions.
 -# RB (in Cyan) .. Blocked Relay attempt
 -# WL+  Whitelist ADDITION by an authorized local user
-+# RB (in Magenta) .. Blocked Relay attempt
-+# HL (in Magenta) .. Blocked due to spam HELO
-+# SP (in Magenta) .. Blocked by failed SPF lookup
-+# WA+  Whitelist ADDITION by an authorized local user
-+# WL+  Whitelist ADDITION of address CC'd in whitelisted email
- # BA (in Cyan) .. Bad ATTACHEMENT rejected
- # SR (in Cyan) .. spam@ report submission
- # NS (in Cyan) .. notspam@ report submission
-@@ -46,91 +49,144 @@
+-# BA (in Cyan) .. Bad ATTACHEMENT rejected
+-# SR (in Cyan) .. spam@ report submission
+-# NS (in Cyan) .. notspam@ report submission
++# See "man assplog" for a description of the fields and coloring.
+ #
+ # I got the idea for this script from Mark Constable. He submitted
+ #  a similar script to follow the Courier-MTA /var/log/maillog
+@@ -46,91 +47,279 @@
  # Some fields are truncated (with a hard-coded length value, usually 40)
  #   to keep each line more or less intact on your screen as things scroll by
  # Colors are coded with ANSI Color coding, your mileage may vary ...
@@ -42,8 +55,7 @@
  #  ASSP when you roll the log so it starts afresh..KRL
  
 -tail -300 -f /usr/local/assp/maillog.log | \
-+tail -300 -f /var/db/assp/maillog.txt | \
-  awk  ' \
+- awk  ' \
 -  /whitelisted/ { \
 -  printf("%s %s \033[1;32m%-15s L\033[0mW  %s \033[1;32m->\033[0m %s\n", \
 -        substr($1,1,length($1)), \
@@ -57,78 +69,43 @@
 -        substr($1,1,length($1)), \
 -        substr($2,1,length($2)), \
 -        "+email address+", \
-+  /local or whitelisted/ { \
-+  printf("%s %s \033[1;32m%-15s\033[0m \033[1;37mLW  %s\033[0m \033[1;32m->\033[0m \033[1;37m%s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-         substr($4,1,40), \
+-        substr($4,1,40), \
 -        substr($6,1,length($6)) )\
-+        $6 )\
-+        } \
-+  /Email whitelist addition/ { \
-+  printf("%s %s \033[1;36m%-15s WA+ %s\033[0m \033[1;37m%s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        "+email address+", \
-+        "-adds-", \
-+        $6 )\
-         } \
+-        } \
 -  /whitelist addition/ && !/email/ { \
 -  printf("%s %s \033[1;32m%-15s W\033[0mL+ %s \033[1;32m %s %s\033[0m\n", \
 -        substr($1,1,length($1)), \
 -        substr($2,1,length($2)), \
 -        substr($3,1,length($3)), \
-+  /whitelist addition:/ && !/[Ee]mail/ { \
-+  printf("%s %s \033[1;32m%-15s\033[0m \033[1;37mWL+ %s\033[0m \033[1;32m%s\033[0m \033[1;37m%s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-         substr($4,1,40), \
-         "-adds-", \
+-        substr($4,1,40), \
+-        "-adds-", \
 -        substr($9,1,length($9)) )\
-+        $9 )\
-         } \
+-        } \
 -  /Bayesian spam/ { \
-+  /Bayesian [Ss]pam/ { \
-   printf("%s %s \033[1;31m%-15s BS  %s -> %s\033[0m\n", \
+-  printf("%s %s \033[1;31m%-15s BS  %s -> %s\033[0m\n", \
 -          substr($1,1,length($1)), \
 -          substr($2,1,length($2)), \
 -          substr($3,1,length($3)), \
 -          substr($4,1,40), \
 -        substr($6,1,length($6)) )\
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $6 )\
-         } \
-   /message ok/ { \
-   printf("%s %s \033[1;32m%-15s Ok  %s -> %s\033[0m\n", \
+-        } \
+-  /message ok/ { \
+-  printf("%s %s \033[1;32m%-15s Ok  %s -> %s\033[0m\n", \
 -        substr($1,1,length($1)), \
 -        substr($2,1,length($2)), \
 -        substr($3,1,length($3)), \
-+        $1, \
-+        $2, \
-+        $3, \
-         substr($4,1,40), \
+-        substr($4,1,40), \
 -        substr($6,1,length($6)) )\
-+        $6 )\
-         } \
+-        } \
 -  /bad attachment/ { \
-+  /bad attachment/ && !/no bad/ { \
-         printf("%s %s \033[1;35m%-15s BA  %s -> %s\033[0m\n", \
+-        printf("%s %s \033[1;35m%-15s BA  %s -> %s\033[0m\n", \
 -        substr($1,1,length($1)), \
 -        substr($2,1,length($2)), \
 -        substr($3,1,length($3)), \
-+        $1, \
-+        $2, \
-+        $3, \
-         substr($4,1,40), \
+-        substr($4,1,40), \
 -        substr($6,1,length($6)) )\
-+        $6 )\
-         } \
-   /relay attempt blocked/ { \
+-        } \
+-  /relay attempt blocked/ { \
 -        printf("%s %s \033[1;35m%-15s RB  %s -> %s %s %s %s %s\033[0m\n", \
 -        substr($1,1,length($1)), \
 -        substr($2,1,length($2)), \
@@ -156,86 +133,274 @@
 -        substr($2,1,length($2)), \
 -        substr($3,1,length($3)), \
 -        substr($4,1,length($4)) ) \
-+        printf("%s %s \033[1;35m%-15s RB  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        ($9 ~ /^(.*):$/) ? $10 : $9 )\
-+        } \
-+  /[Ii]nvalid address rejected/ { \
-+  printf("%s %s \033[1;34m%-15s IR  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $NF )\
-+        } \
-+  /malformed address/ { \
-+  printf("%s %s \033[1;35m%-15s MA  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $7 )\
-+        } \
-+  /failed RBL checks|Received-RBL: fail/ { \
-+  printf("%s %s \033[1;35m%-15s BL  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $6 )\
-+        } \
-+  /failed SPF checks|Received-SPF: fail/ { \
-+  printf("%s %s \033[1;35m%-15s SP  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $6 )\
-+        } \
-+  /has spam helo/ { \
-+  printf("%s %s \033[1;35m%-15s HL  %s -> %s %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $6, \
-+        $10 )\
-+        } \
-+  /Sender Validation:blocked:/ { \
-+  printf("%s %s \033[1;35m%-15s HL  %s %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $9 )\
-+        } \
-+  /recipient delayed/ { \
-+  printf("%s %s \033[1;35m%-15s DL  %s -> %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        substr($4,1,40), \
-+        $7 ) \
-+        } \
-+  /Admin (update:|connection from )/ { \
-+  printf("\033[1;33m%s\033[0m\n", $0) \
-+        } \
-+  /[Ee]mail spamreport/ { \
-+  printf("%s %s\033[1;36m %-15s SR  %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        $4 ) \
-+        } \
-+  /[Ee]mail hamreport/ { \
-+  printf("%s %s\033[1;36m %-15s NS  %s\033[0m\n", \
-+        $1, \
-+        $2, \
-+        $3, \
-+        $4 ) \
-  }'
+- }'
++tail -300 -f /var/db/assp/maillog.txt | awk  '
++  {
++    # look for $3 ~ [reason]
++    p=0
++    if ($3 ~ /\[.*\]/) p=1
++  }
++  /local or whitelisted/ {
++    printf("%s %s \033[1;32m%-15s\033[0m \033[1;37mLW  %s\033[0m \033[1;32m->\033[0m \033[1;37m%s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /[Ee]mail whitelist addition/ {
++    if ($3 != "Email") {
++	email_wa_ip = $4
++	email_wa_name = $5
++    }
++    else {
++	printf("%s %s \033[1;36m%-15s\033[0m \033[1;36mWA+ %s\033[0m \033[1;32m%s\033[0m \033[1;36m%s\033[0m\n",
++	    $1,
++	    $2,
++	    email_wa_ip,
++	    substr(email_wa_name,1,40),
++	    "-adds-",
++	    $(p+6) )
++    }
++    next
++  }
++  /whitelist addition:/ && !/[Ee]mail/ {
++    printf("%s %s \033[1;32m%-15s\033[0m \033[1;37mWL+ %s\033[0m \033[1;32m%s\033[0m \033[1;37m%s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        "-adds-",
++        $(p+10) )
++    next
++  }
++  /Bayesian Check Prob/ {
++    # suppress
++    next
++  }
++  /Bayesian [Ss]pam/ {
++    printf("%s %s \033[1;31m%-15s BS  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /recipient accepted/ {
++    # suppress
++    next
++  }
++  /message ok/ {
++    printf("%s %s \033[1;32m%-15s Ok  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /bad attachment/ && !/no bad/ {
++        printf("%s %s \033[1;35m%-15s BA  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /relay attempt blocked/ {
++        printf("%s %s \033[1;35m%-15s RB  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        ($(p+10) ~ /^(.*):$/) ? $(p+11) : $(p+10) )
++    next
++  }
++  /no recipients left -- dropping connection/ {
++    # suppress
++    next
++  }
++  /[Ii]nvalid address rejected/ {
++    printf("%s %s \033[1;34m%-15s IR  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $NF )
++    next
++  }
++  /malformed address/ {
++    printf("%s %s \033[1;35m%-15s MA  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+8) )
++    next
++  }
++  /Unknown Sender with Local Domain/ {
++    printf("%s %s \033[1;34m%-15s IS  %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40) )
++    next
++  }
++  /(Commencing|Completed) (R|DNS|URI)BL checks/ {
++    # suppress
++    next
++  }
++  /((DNS|URI)BL )?Received-(R|DNS|URI)BL: (pass|neutral|fail)/ {
++    # suppress
++    next
++  }
++  /failed DNSBL|failed (R|URI)BL checks|Received-RBL: fail|\[DNSBL].* rejected by / {
++    printf("%s %s \033[1;35m%-15s BL  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /Received-SPF: (pass|neutral)| SPF: fail/ {
++    # suppress
++    next
++  }
++  /failed SPF checks|Received-SPF: ((soft)?fail|error)/ {
++    printf("%s %s \033[1;35m%-15s SP  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7) )
++    next
++  }
++  /has spam helo|HELO-Blacklist:/ {
++    printf("%s %s \033[1;35m%-15s HL  %s -> %s %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+7),
++        $(p+11) )
++    next
++  }
++  /Forged HELO:/ {
++    printf("%s %s \033[1;35m%-15s HL  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+8) )
++    next
++  }
++  /Sender Validation:blocked:/ {
++    printf("%s %s \033[1;35m%-15s HL  %s %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+10) )
++    next
++  }
++  /(adding new|embargoing|accepting|whitelisting) triplet|(renewing|renewing whitelisted|deleting spamming whitelisted) tuplet/ {
++    # suppress
++    next
++  }
++  /recipient delayed/ {
++    printf("%s %s \033[1;35m%-15s DL  %s -> %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        substr($(p+5),1,40),
++        $(p+8) )
++    next
++  }
++  /Admin (update:|connection from )/ {
++    printf("\033[1;33m%s\033[0m\n", $0)
++    next
++  }
++  /[Ee]mail spamreport/ {
++    printf("%s %s\033[1;36m %-15s SR  %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        $(p+5) )
++    next
++  }
++  /[Ee]mail hamreport/ {
++    printf("%s %s\033[1;36m %-15s NS  %s\033[0m\n",
++        $1,
++        $2,
++        $(p+4),
++        $(p+5) )
++    next
++  }
++  /ClamAV: scanning/ {
++    # suppress
++    next
++  }
++  /virus detected/ {
++    printf("%s %s\033[1;35m %-15s VI  %s -> %s (%s)\033[0m\n",
++	$1,
++	$2,
++	$(p+4),
++	$(p+5), $(p+7), $(p+10) )
++    next
++  }
++  /Message-Score:/ {
++    # suppress
++    next
++  }
++  /\[VIRUS].*PB:.*score:.*reason:/ {
++    # suppress
++    next
++    printf("%s %s\033[1;35m %-15s PB  %s %s %s %s (%s)\033[0m\n",
++	$1,
++	$2,
++	$(p+4),
++	$(p+10), $(p+11), $(p+12), $(p+13),
++	substr($(p+14),8,40) )
++    next
++  }
++  /PB:.*score:.*reason:/ {
++    # suppress
++    next
++    printf("%s %s\033[1;34m %-15s PB  %s %s %s %s (%s)\033[0m\n",
++	$1,
++	$2,
++	$(p+4),
++	$(p+8), $(p+9), $(p+10), $(p+11),
++	substr($(p+12),8,40) )
++    next
++  }
++  /Message Limit/ {
++    printf("%s %s\033[1;35m %-15s PB  %s -> %s\033[0m\n",
++	$1,
++	$2,
++	$(p+4),
++	substr($(p+5),1,40),
++	substr($(p+7),1,40) )
++    next
++  }
++  /max errors \([0-9]+\) exceeded/ {
++    printf("%s %s\033[1;35m %-15s ME  %s\033[0m\n",
++	$1,
++	$2,
++	$(p+4),
++	substr($(p+5),1,40) )
++    next
++  }
++  {
++    printf("%s %s ", $1, $2)
++    for (i=3; i<=NF; i++)
++	printf("\033[1;30m%s\033[0m ", $i)
++    printf("\n")
++  }
++ '
  # end of script
  
diff -ruN /usr/ports/mail/assp/files/pkg-install.in mail/assp/files/pkg-install.in
--- /usr/ports/mail/assp/files/pkg-install.in	Fri Dec  1 03:10:20 2006
+++ mail/assp/files/pkg-install.in	Wed Aug 22 04:26:22 2007
@@ -2,8 +2,7 @@
 
 if [ "$2" = "POST-INSTALL" ]; then
     install -d -m 0700 -o %%ASSP_USER%% -g %%ASSP_GROUP%% %%ASSP_HOME%%
-    ln -s $PKG_PREFIX/lib/assp/nodelay.txt %%ASSP_HOME%%
-    ln -s $PKG_PREFIX/lib/assp/redre.txt %%ASSP_HOME%%
+    ln -s $PKG_PREFIX/lib/assp/files %%ASSP_HOME%%
     ln -s $PKG_PREFIX/lib/assp/images %%ASSP_HOME%%
     ln -s $PKG_PREFIX/lib/assp/reports %%ASSP_HOME%%
 fi
diff -ruN /usr/ports/mail/assp/pkg-plist mail/assp/pkg-plist
--- /usr/ports/mail/assp/pkg-plist	Fri Dec  1 03:10:19 2006
+++ mail/assp/pkg-plist	Wed Aug 22 04:26:22 2007
@@ -3,10 +3,21 @@
 @dirrmtry etc/periodic
 lib/assp/addservice.pl
 lib/assp/assp.pl
+lib/assp/files/URIBLCCTLDS.txt
+lib/assp/files/blackdomains.txt
+lib/assp/files/bombre.txt
+lib/assp/files/invalidptr.txt
+lib/assp/files/ipnp.txt
+lib/assp/files/ipwl.txt
+lib/assp/files/nodelay.txt
+lib/assp/files/rbl-service.txt
+lib/assp/files/redre.txt
+lib/assp/files/whitedomains.txt
 lib/assp/images/assp.css
 lib/assp/images/dropShadow.gif
 lib/assp/images/editor.css
 lib/assp/images/favicon.ico
+lib/assp/images/info.png
 lib/assp/images/logo.jpg
 lib/assp/images/minusIcon.png
 lib/assp/images/noIcon.png
@@ -18,9 +29,7 @@
 lib/assp/images/village.gif
 lib/assp/images/xml-pill.gif
 lib/assp/move2num.pl
-lib/assp/nodelay.txt
 lib/assp/rebuildspamdb.pl
-lib/assp/redre.txt
 lib/assp/repair.pl
 lib/assp/reports/helpreport.txt
 lib/assp/reports/notspamreport.txt
@@ -33,6 +42,7 @@
 lib/assp/stats.sh
 @dirrm lib/assp/reports
 @dirrm lib/assp/images
+ at dirrm lib/assp/files
 @dirrm lib/assp
 sbin/assp
 sbin/assplog
@@ -41,7 +51,6 @@
 %%PORTDOCS%%@dirrm %%DOCSDIR%%
 @unexec rm -f %%ASSP_HOME%%/reports 2>/dev/null || true
 @unexec rm -f %%ASSP_HOME%%/images 2>/dev/null || true
- at unexec rm -f %%ASSP_HOME%%/nodelay.txt 2>/dev/null || true
- at unexec rm -f %%ASSP_HOME%%/redre.txt 2>/dev/null || true
+ at unexec rm -f %%ASSP_HOME%%/files 2>/dev/null || true
 @unexec rmdir %%ASSP_HOME%% 2>/dev/null || true
 @unexec if [ -d %%ASSP_HOME%% ]; then echo "If you are deinstalling ASSP completely, remove the %%ASSP_HOME%% directory."; fi
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list