Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Mar 2012 19:10:39 GMT
From:      Kevin Kobb <kkobb@skylinecorp.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/166254: [PATCH] mail/mailscanner: Update to correct TNEF bug.
Message-ID:  <201203191910.q2JJAd1O003165@red.freebsd.org>
Resent-Message-ID: <201203191920.q2JJK95U092053@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         166254
>Category:       ports
>Synopsis:       [PATCH] mail/mailscanner: Update to correct TNEF bug.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Mar 19 19:20:08 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Kevin Kobb
>Release:        FreeBSD 9.0-RELEASE amd64
>Organization:
>Environment:
FreeBSD mail.skylinecorp.com 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
Recent MailScanner update introduce a bug in the TNEF.pm module that made unpacking MS TNEF attachments produce errors. This is due the process used to create the temp directories.
>How-To-Repeat:
Install the MailScanner port and send a message with a MS TNEF attachment.
>Fix:
Apply the attached patch.

Patch attached with submission follows:

diff -urN mailscanner.orig/Makefile mailscanner/Makefile
--- mailscanner.orig/Makefile	2012-03-14 14:38:56.000000000 -0400
+++ mailscanner/Makefile	2012-03-19 14:34:30.000000000 -0400
@@ -7,6 +7,7 @@
 
 PORTNAME=	MailScanner
 PORTVERSION=	4.84.5
+PORTREVISION=	1
 CATEGORIES=	mail
 MASTER_SITES=	http://www.mailscanner.info/files/4/tar/
 DISTNAME=	${PORTNAME}-install-${PORTVERSION}-${PATCHLEVEL}
@@ -51,10 +52,11 @@
 USE_PERL5=	yes
 
 WRKSRC=		${WRKDIR}/${PORTNAME}-install-${PORTVERSION}
-SUB_FILES=	pkg-message pkg-install pkg-deinstall
+SUB_FILES=	MailScanner.8 pkg-message pkg-install pkg-deinstall
 SUB_LIST=	DATADIR=${DATADIR} \
 		PERL=${PERL} \
 		PKGVERSION=${PKGVERSION} \
+		PORTVERSION=${PORTVERSION} \
 		ETC_FILES="${ETC_FILES}" \
 		MCP_FILES="${MCP_FILES}"
 
@@ -272,7 +274,7 @@
 .else
 	@${ECHO_MSG} -n ">> Installing manpage..."
 .endif
-	@cd ${FILESDIR} && \
+	@cd ${WRKDIR} && \
 		${INSTALL_MAN} ${MAN8} ${MAN5PREFIX}/man/man8
 	@${ECHO_MSG} " [DONE]"
 
diff -urN mailscanner.orig/files/CHANGES.port mailscanner/files/CHANGES.port
--- mailscanner.orig/files/CHANGES.port	2012-03-10 05:30:07.000000000 -0500
+++ mailscanner/files/CHANGES.port	2012-03-19 14:34:30.000000000 -0400
@@ -1,3 +1,9 @@
+Version 4.84.5_1
+================
+- Added patch for TNEF.pm bug
+- Fixed creation of mailscanner.cf symlink
+- Minor doc updates
+
 Version 4.84.5
 ==============
 - Upgrade to 4.84.5
diff -urN mailscanner.orig/files/MailScanner.8 mailscanner/files/MailScanner.8
--- mailscanner.orig/files/MailScanner.8	2006-08-11 16:10:30.000000000 -0400
+++ mailscanner/files/MailScanner.8	1969-12-31 19:00:00.000000000 -0500
@@ -1,12 +0,0 @@
-.TH "MailScanner" "8" "4.52.2" "Julian Field" "Mail"
-.SH "NAME"
-.LP 
-MailScanner \- Virus/Spam Scanner for Sendmail, Exim and Postfix
-.SH "SEE ALSO"
-.LP 
-Please see http://www.mailscanner.info for current documentation. All current configuration options can be found at 
-.br 
-
-.br 
-http://www.mailscanner.info/MailScanner.conf.index.html
-
diff -urN mailscanner.orig/files/MailScanner.8.in mailscanner/files/MailScanner.8.in
--- mailscanner.orig/files/MailScanner.8.in	1969-12-31 19:00:00.000000000 -0500
+++ mailscanner/files/MailScanner.8.in	2012-03-19 14:34:30.000000000 -0400
@@ -0,0 +1,12 @@
+.TH "MailScanner" "8" "%%PORTVERSION%%" "Julian Field" "Mail"
+.SH "NAME"
+.LP 
+MailScanner \- Virus/Spam Scanner for Sendmail, Exim and Postfix
+.SH "SEE ALSO"
+.LP 
+Please see http://www.mailscanner.info for current documentation. All current configuration options can be found at 
+.br 
+
+.br 
+http://www.mailscanner.info/MailScanner.conf.index.html
+
diff -urN mailscanner.orig/files/README.FreeBSD.port mailscanner/files/README.FreeBSD.port
--- mailscanner.orig/files/README.FreeBSD.port	2006-02-16 11:34:56.000000000 -0500
+++ mailscanner/files/README.FreeBSD.port	2012-03-19 14:35:24.000000000 -0400
@@ -1,7 +1,7 @@
 The MailScanner port is using the original MailScanner tarball from 
-www.mailscanner.info. Unfortunatly the tarball consists of MailScanner
-and perl modules etc. MailScanner depends on. The port is not using
-Julians install.sh or the provided modules. All modules that MailScanner
+www.mailscanner.info. Unfortunately the tarball consists of MailScanner
+and perl modules etc, MailScanner depends on. The port is not using
+Julian's install.sh or the provided modules. All modules that MailScanner
 depends on are installed via ports as well.
 
 In order to make the installation FreeBSD compliant the port installs files
@@ -17,10 +17,10 @@
 
 The port installs two start/stop scripts in /usr/local/etc/rc.d:
 
-mailscanner.sh
-mta.sh
+mailscanner
+mta
 
-My suggestion is to use mta.sh instead of the usual FreeBSD MTA startup
+My suggestion is to use mta instead of the usual FreeBSD MTA startup
 process. This of course means that you will have to disable MTA startup 
 in rc.conf completely. Put this in your rc.conf:
 
@@ -36,11 +36,4 @@
 port will try to update all your languages conf files.
 
 
-If you have suggestions for this port please let me know and drop me an e-mail at
-
-j.koopmann@seceidos.de
-
-
-Thanks,
-  Jan-Peter Koopmann
-
+If you have suggestions for this port please contact the port maintainer.
diff -urN mailscanner.orig/files/mailscanner.in mailscanner/files/mailscanner.in
--- mailscanner.orig/files/mailscanner.in	2012-01-15 15:35:29.000000000 -0500
+++ mailscanner/files/mailscanner.in	2012-03-19 14:34:30.000000000 -0400
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 
 # PROVIDE: mailscanner
 # REQUIRE: mta
diff -urN mailscanner.orig/files/mta.in mailscanner/files/mta.in
--- mailscanner.orig/files/mta.in	2012-01-15 15:35:29.000000000 -0500
+++ mailscanner/files/mta.in	2012-03-19 14:34:30.000000000 -0400
@@ -23,7 +23,7 @@
 #			  to "/var/run/sendmail.pid" or "/var/run/exim.pid"
 #
 #
-# ATTENTION: All of the above entries are necessary in order for mta.sh to work correctly!
+# ATTENTION: All of the above entries are necessary in order for mta to work correctly!
 #
 
 #
diff -urN mailscanner.orig/files/patch-lib__MailScanner__TNEF.pm mailscanner/files/patch-lib__MailScanner__TNEF.pm
--- mailscanner.orig/files/patch-lib__MailScanner__TNEF.pm	1969-12-31 19:00:00.000000000 -0500
+++ mailscanner/files/patch-lib__MailScanner__TNEF.pm	2012-03-19 14:34:30.000000000 -0400
@@ -0,0 +1,20 @@
+--- ./lib/MailScanner/TNEF.pm.orig	2011-08-20 08:32:02.000000000 -0400
++++ ./lib/MailScanner/TNEF.pm	2012-03-15 11:28:31.000000000 -0400
+@@ -229,15 +229,14 @@
+ 
+   # Create the subdir to unpack it into
+   #my $unpackdir = "tnef.$$";
+-  my ($tmpfh, $unpackdir) = tempfile("tnefXXXXXX", TMPDIR => $dir, UNLINK => 0);
+-  $dir =~ s,^.*/,,;
++  my $unpackdir = tempdir("tnefXXXXXX");
+   $unpackdir = $message->MakeNameSafe($unpackdir, $dir);
+   unless (mkdir "$dir/$unpackdir", 0777) {
+     MailScanner::Log::WarnLog("Trying to unpack %s in message %s, could not create subdirectory %s, failed to unpack TNEF message", $tnefname, $message->{id},
+                               "$dir/$unpackdir");
+     return 0;
+   }
+-  chmod 0700, "$dir/$unpackdir";
++  chmod 0770, "$dir/$unpackdir";
+ 
+   my $cmd = MailScanner::Config::Value('tnefexpander') .
+             " -f $dir/$tnefname -C $dir/$unpackdir --overwrite";
diff -urN mailscanner.orig/files/pkg-install.in mailscanner/files/pkg-install.in
--- mailscanner.orig/files/pkg-install.in	2011-06-18 12:35:08.000000000 -0400
+++ mailscanner/files/pkg-install.in	2012-03-19 14:34:30.000000000 -0400
@@ -102,7 +102,7 @@
 
 case $2 in
 POST-INSTALL)
-	[ ! -z "${WITHOUT_SPAMASSASSIN_SYMLINK}" ] \
+	[ -z "${WITHOUT_SPAMASSASSIN_SYMLINK}" ] \
 	    && [ ! -r ${PKG_PREFIX}/etc/mail/spamassassin/mailscanner.cf ] \
 	    && ${LN} -s ${PKG_PREFIX}/etc/MailScanner/spam.assassin.prefs.conf \
 		${PKG_PREFIX}/etc/mail/spamassassin/mailscanner.cf


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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201203191910.q2JJAd1O003165>