Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Feb 2005 14:22:11 +0500
From:      SeaD <sead@mail.ru>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        sead@mail.ru
Subject:   ports/77380: new port: mail/clamfilter - small efficient clamav filter for Postfix
Message-ID:  <E1CzX07-000EDp-BG@newcom.perm.ws>
Resent-Message-ID: <200502110930.j1B9UHFB080206@freefall.freebsd.org>

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

>Number:         77380
>Category:       ports
>Synopsis:       new port: mail/clamfilter - small efficient clamav filter for Postfix
>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 Feb 11 09:30:17 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     SeaD
>Release:        FreeBSD 5.2.1-RELEASE-p13 i386
>Organization:
none
>Environment:
System: FreeBSD newcom.perm.ws 5.2.1-RELEASE-p13 FreeBSD 5.2.1-RELEASE-p13 #2: Mon Jan 17 19:04:49 YEKT 2005 sead@newcom.perm.ws:/usr/obj/usr/src/sys/KNEWCOM i386


	
>Description:
	This is a small, efficient clamav content filter for Postfix
>How-To-Repeat:
	
>Fix:

	

--- clamfilter.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:
#
#	/usr/ports/mail/clamfilter/
#	/usr/ports/mail/clamfilter/Makefile
#	/usr/ports/mail/clamfilter/distinfo
#	/usr/ports/mail/clamfilter/pkg-descr
#	/usr/ports/mail/clamfilter/pkg-plist
#	/usr/ports/mail/clamfilter/files
#	/usr/ports/mail/clamfilter/files/patch-ab
#	/usr/ports/mail/clamfilter/files/patch-aa
#
echo c - /usr/ports/mail/clamfilter/
mkdir -p /usr/ports/mail/clamfilter/ > /dev/null 2>&1
echo x - /usr/ports/mail/clamfilter/Makefile
sed 's/^X//' >/usr/ports/mail/clamfilter/Makefile << 'END-of-/usr/ports/mail/clamfilter/Makefile'
X# New ports collection makefile for:    clamfilter
X# Date created:        11 Feb 2005
X# Whom:                SeaD
X#
X# $FreeBSD$
X#
X
XPORTNAME=	clamfilter
XPORTVERSION=	0.5
XCATEGORIES=	mail
XMASTER_SITES=	http://www.ensita.net/products/clamfilter/
X
XMAINTAINER=	sead@mail.ru
XCOMMENT=	This is a small, efficient clamav content filter for Postfix
X
Xpost-install:
X	@${ECHO} "======================================================================"
X	@${ECHO} "  Edit master.cf and put there:"
X	@${ECHO} "  filter  unix  -  n  n  -  -  pipe  flags=R user=postfix \\"
X	@${ECHO} "      argv=${PREFIX}/bin/clamfilter -F admin@domain.com \\"
X	@${ECHO} "      -f \$${sender} -- \$${recipient}"
X	@${ECHO} "  And add the content_filter option to smtpd binary:"
X	@${ECHO} "  smtp  inet  n  -  n  -  -  smtpd -o content_filter=filter:dummy"
X	@${ECHO} "  Restart Postfix."
X	@${ECHO} "======================================================================"
X
X.include <bsd.port.mk>
END-of-/usr/ports/mail/clamfilter/Makefile
echo x - /usr/ports/mail/clamfilter/distinfo
sed 's/^X//' >/usr/ports/mail/clamfilter/distinfo << 'END-of-/usr/ports/mail/clamfilter/distinfo'
XMD5 (clamfilter-0.5.tar.gz) = 27047253d5eda132f93d276a31798e08
XSIZE (clamfilter-0.5.tar.gz) = 13975
END-of-/usr/ports/mail/clamfilter/distinfo
echo x - /usr/ports/mail/clamfilter/pkg-descr
sed 's/^X//' >/usr/ports/mail/clamfilter/pkg-descr << 'END-of-/usr/ports/mail/clamfilter/pkg-descr'
XThis is a small, efficient clamav content filter for Postfix. What is does
Xis just a content filtering of messages passing via Postfix MTA thru clamav.
X
XThis version will fork and run clamdscan binary. Next version will connect
Xto clamd directly via libclamav.
X
XClamfilter was designed to be the only content filter in Postfix installation,
Xand this is why this software appeared. All other content filters for Postfix
Xare designed to be flexible; clamfilter is not. It is just designed to perform
Xa single task - filtering thru clamav.
X
XAuthor Egor Egorov <egor@ensita.net>
XWWW: http://www.ensita.net/products/clamfilter/
END-of-/usr/ports/mail/clamfilter/pkg-descr
echo x - /usr/ports/mail/clamfilter/pkg-plist
sed 's/^X//' >/usr/ports/mail/clamfilter/pkg-plist << 'END-of-/usr/ports/mail/clamfilter/pkg-plist'
Xbin/clamfilter
END-of-/usr/ports/mail/clamfilter/pkg-plist
echo c - /usr/ports/mail/clamfilter/files
mkdir -p /usr/ports/mail/clamfilter/files > /dev/null 2>&1
echo x - /usr/ports/mail/clamfilter/files/patch-ab
sed 's/^X//' >/usr/ports/mail/clamfilter/files/patch-ab << 'END-of-/usr/ports/mail/clamfilter/files/patch-ab'
X--- clamfilter.c.orig	Thu Dec  2 23:50:42 2004
X+++ clamfilter.c	Fri Feb 11 13:44:35 2005
X@@ -11,6 +11,7 @@
X #include <sys/wait.h>
X #include <unistd.h>
X #include <stdlib.h>
X+#include <stdio.h>
X #include <syslog.h>
X #include <stdarg.h>
X #include <errno.h>
X@@ -63,7 +64,7 @@
X 		//skip header, move to header content
X 		*result += strlen(header);
X 		//search for header content end
X-		if (!(tmp = strstr(*result,"\n")))
X+		if (!(tmp = (char *) strstr(*result,"\n")))
X 		{
X 			//not found - all header
X 			tmp = *result+strlen(*result);
X@@ -77,7 +78,7 @@
X 			//skip header, move to header content
X 			*result += strlen(header);
X 			//search for header content end
X-			if (!(tmp = strstr(*result,"\n")))
X+			if (!(tmp = (char *) strstr(*result,"\n")))
X 			{
X 				//not found - all header
X 				tmp = *result+strlen(*result);
X@@ -291,7 +292,7 @@
X 	int readfd,writefd;
X 	int status;
X 	char buffer[102401];
X-	int size;
X+	int size, res;
X 
X 	if (pipe(childread)) { 
X 		syslog(LOG_MAIL|LOG_ERR, "check_file: " \
X@@ -314,7 +315,7 @@
X 		dup2(open("/dev/null","w"),2);
X 		dup2(readfd,0);
X 		dup2(open("/dev/null","w"),1);
X-		int res=execl(CLAMDSCAN, CLAMDSCAN, "--quiet", temporalfile, NULL);
X+		res=execl(CLAMDSCAN, CLAMDSCAN, "--quiet", temporalfile, NULL);
X 		syslog(LOG_MAIL|LOG_ERR, "check_file: " \
X 			"child: cannot exec, return code %d", res);
X 		return(EX_TEMPFAIL);
X@@ -339,8 +340,8 @@
X }
X 
X 
X-void read_args(int argc, char** argv, const char** returnpath, 
X-		const char** receipent, const char ** fromemail) {
X+void read_args(int argc, char** argv, char** returnpath, 
X+		char** receipent, char ** fromemail) {
X 	int opt, i, j; int restlen;
X 
X 	while(-1 != (opt = getopt(argc, argv, "f:F:D"))) {
X@@ -433,9 +434,9 @@
X 	int exitcode = 0;
X 	int len = 0;
X 	int virusresult = 0;
X-	const char *returnpath = NULL;
X-	const char *receipent = NULL;
X-	const char *fromemail = NULL;
X+	char *returnpath = NULL;
X+	char *receipent = NULL;
X+	char *fromemail = NULL;
X 
X 	read_args(argc, argv, &returnpath, &receipent, &fromemail);
X 
END-of-/usr/ports/mail/clamfilter/files/patch-ab
echo x - /usr/ports/mail/clamfilter/files/patch-aa
sed 's/^X//' >/usr/ports/mail/clamfilter/files/patch-aa << 'END-of-/usr/ports/mail/clamfilter/files/patch-aa'
X--- Makefile.orig	Thu Dec  2 23:50:42 2004
X+++ Makefile	Mon Feb  7 21:27:15 2005
X@@ -1,7 +1,7 @@
X # clamfilter makefile
X # $Id: Makefile,v 1.4 2004/12/02 18:50:28 egor Exp $
X 
X-PREFIX=/usr/
X+PREFIX=/usr/local/
X VERSION=0.5
X 
X all: clamfilter
END-of-/usr/ports/mail/clamfilter/files/patch-aa
exit
--- clamfilter.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1CzX07-000EDp-BG>