diff options
author | garga <garga@FreeBSD.org> | 2007-09-04 21:18:39 +0800 |
---|---|---|
committer | garga <garga@FreeBSD.org> | 2007-09-04 21:18:39 +0800 |
commit | 1c98fdf95f6f45169f55707885f5814250edb2a8 (patch) | |
tree | 5e9994387df5cc3d48d728ec56f81c93c4325c6c /mail/qmail-scanner | |
parent | 1d4fac65ca67870b725c4b07aaa93c4f1cc07e3a (diff) | |
download | freebsd-ports-gnome-1c98fdf95f6f45169f55707885f5814250edb2a8.tar.gz freebsd-ports-gnome-1c98fdf95f6f45169f55707885f5814250edb2a8.tar.zst freebsd-ports-gnome-1c98fdf95f6f45169f55707885f5814250edb2a8.zip |
- Upgrade qmail-scanner to 2.01
- Repocopy qmail-scanner to mail/qmail-scanner1 to preserver 1.x version
I made a big confusion here, i forgot i have transfered maintainership of
qmail-scanner to jmelo@, and I took the PR and did all the job.
I explained to jmelo@ and he approved all these changes.
PR: ports/115877
Submitted by: Felippe de Meirelles Motta <lippe@freebsdbrasil.com.br>
Approved by: jmelo (maintainer)
Repocopied by: marcus
Diffstat (limited to 'mail/qmail-scanner')
-rw-r--r-- | mail/qmail-scanner/Makefile | 308 | ||||
-rw-r--r-- | mail/qmail-scanner/distinfo | 6 | ||||
-rw-r--r-- | mail/qmail-scanner/files/patch-configure | 138 | ||||
-rw-r--r-- | mail/qmail-scanner/files/patch-qmail-scanner-queue.template | 51 | ||||
-rw-r--r-- | mail/qmail-scanner/files/patch-sub-spamassassin.pl | 10 | ||||
-rw-r--r-- | mail/qmail-scanner/files/pkg-install.in | 49 | ||||
-rw-r--r-- | mail/qmail-scanner/files/pkg-message.in | 22 | ||||
-rw-r--r-- | mail/qmail-scanner/pkg-descr | 15 | ||||
-rw-r--r-- | mail/qmail-scanner/pkg-install | 45 | ||||
-rw-r--r-- | mail/qmail-scanner/pkg-message | 12 | ||||
-rw-r--r-- | mail/qmail-scanner/pkg-plist | 50 |
11 files changed, 314 insertions, 392 deletions
diff --git a/mail/qmail-scanner/Makefile b/mail/qmail-scanner/Makefile index 41cf2b648d9b..73e163953b65 100644 --- a/mail/qmail-scanner/Makefile +++ b/mail/qmail-scanner/Makefile @@ -6,165 +6,249 @@ # PORTNAME= qmail-scanner -PORTVERSION= 1.25 -PORTREVISION= 2 +PORTVERSION= 2.01 CATEGORIES= mail security -MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} -MASTER_SITE_SUBDIR= ${PORTNAME} -DISTNAME= ${PORTNAME}-${PORTVERSION:S/.r/rc/} +MASTER_SITES= SF EXTRACT_SUFX= .tgz -MAINTAINER= jmelo@FreeBSD.org +MAINTAINER= lippe@freebsdbrasil.com.br COMMENT= Content/Anti-virus Scanner for qmail MANUAL_PACKAGE_BUILD= Requires qmail built with non-standard setting -BUILD_DEPENDS= reformime:${PORTSDIR}/mail/maildrop \ - ${SITE_PERL}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes +BUILD_DEPENDS+= reformime:${PORTSDIR}/mail/maildrop \ + ${SITE_PERL}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \ + ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 QMAIL_QUEUE= ${QMAIL_PREFIX}/bin/qmail-queue USE_PERL5= yes NO_BUILD= yes -# Barely optionnal -.if !defined(WITHOUT_TNEF) +USE_QMAIL= yes + +CONFLICTS= qmail-scanner-1.* + +QS_USER?= qscand +QS_ADMIN?= postmaster +QS_ID?= 85 + +DOCS= logging_first_80_chars.eml patch_for_nod32_single_user.eml \ + reformime-test.eml spamc-nasty.eml spamc-nice.eml vpopmail-issues.eml +CONTRIB= mrtg-qmail-scanner.cfg check_AV_daemons logrotate.qmail-scanner \ + qs2mrtg.pl qs_config.sh qscan-spam-to-users.pl rbl_scanner.txt \ + sub-avpdaemon.pl sub-sender-cache.pl test-avgd.pl test-clamd.pl \ + test-sophie.pl test-trophie.pl test_installation.sh test_password.zip \ + qmail-scanner-queue.c + +SPOOLDIR?= /var/spool/qscand +PLIST_SUB= SPOOLDIR=${SPOOLDIR} + +OPTIONS= TNEF "Mark Simpson's Patch (Recommended)" on \ + FIX_MIME "Fix broken MIME messages" off \ + REDUNDANT "Scan attachments and body mails" on \ + NORMALIZE "Decode encoded headers per MIME Base64" off \ + UNZIP "Force UNZIP all zip files" off + +HAS_CONFIGURE= yes +CONFIGURE_ARGS+=--qmaildir "${QMAIL_PREFIX}" \ + --spooldir "${SPOOLDIR}" \ + --bindir "${PREFIX}/bin" \ + --qmail-queue-binary "${QMAIL_QUEUE}" \ + --mime-unpacker "reformime" \ + --batch + +SUB_FILES= pkg-message +SUB_LIST= SPOOLDIR="${SPOOLDIR}" \ + QS_USER=${QS_USER} \ + QS_ID=${QS_ID} + +PKGINSTALL?= ${WRKDIR}/pkg-install + +.include <bsd.port.pre.mk> + +.if defined(WITH_TNEF) BUILD_DEPENDS+= ${LOCALBASE}/bin/tnef:${PORTSDIR}/converters/tnef .endif -# Options -QMAILSCAN_ADMIN?= root -.if defined(QMAILSCAN_ADMINREALNAME) -CONFIGURE_ARGS+= --admin-realname "${QMAILSCAN_ADMINREALNAME}" +.if !defined(WITH_FIX_MIME) +CONFIGURE_ARGS+= --fix-mime no .endif -.if defined(QMAILSCAN_ARCHIVE) -CONFIGURE_ARGS+= --archive yes + +.if !defined(WITH_REDUNDANT) +CONFIGURE_ARGS+= --redundant no .endif -QMAILSCAN_NOTIFY?= psender,precips -.if defined(QMAILSCAN_LANG) -CONFIGURE_ARGS+= --lang "${QMAILSCAN_LANG}" + +.if !defined(WITH_NORMALIZE) +CONFIGURE_ARGS+= --normalize no .endif -.if defined(QMAILSCAN_LOCALDOMAINS) && !empty(QMAILSCAN_LOCALDOMAINS) -CONFIGURE_ARGS+= --local-domains "${QMAILSCAN_LOCALDOMAINS}" + +.if defined(WITH_UNZIP) +CONFIGURE_ARGS+= --unzip yes .endif -.if defined(QMAILSCAN_LOGCRYPTO) -CONFIGURE_ARGS+= --log-crypto yes + +.if !defined(QS_USER) +CONFIGURE_ARGS+= --qs-user "${QS_USER}" .endif -.if defined(QMAILSCAN_NOTUNZIP) -CONFIGURE_ARGS+= --unzip no -.else -CONFIGURE_ARGS+= --unzip yes -.if defined(QMAILSCAN_MAXZIPSIZE) -CONFIGURE_ARGS+= --max-zip-size "${QMAILSCAN_MAXZIPSIZE}" + +.if !defined(QS_ADMIN) +CONFIGURE_ARGS+= --admin "${QS_ADMIN}" .endif -.if !defined(QMAILSCAN_NOTBLKZIPPW) -BUILD_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip -CONFIGURE_ARGS+= --block-password-protected yes + +.if defined(QS_ADMIN_DESC) +CONFIGURE_ARGS+= --admin-description "${QS_ADMIN_DESC}" .endif + +.if defined(QS_SCANNERS) +CONFIGURE_ARGS+= --scanners "${QS_SCANNERS}" .endif -.if defined(QMAILSCAN_SCANNERS) -CONFIGURE_ARGS+= --scanners "${QMAILSCAN_SCANNERS}" -.else -CONFIGURE_ARGS+= --scanners auto + +.if defined(QS_SKIP_MSGS) +CONFIGURE_ARGS+= --skip-text-msgs "${QS_SKIP_MSGS}" .endif -QMAILSCAN_SILENTVIRUSES?= auto -.if defined(QMAILSCAN_SPAMSREDIRECT) -CONFIGURE_ARGS+= --spams-redirect "${QMAILSCAN_SPAMSREDIRECT}" + +.if !defined(QS_NOTIFY) +CONFIGURE_ARGS+= --notify psender,precips .endif -.if defined(QMAILSCAN_SPAMSTOSUFFIX) -CONFIGURE_ARGS+= --spams-tosuffix "${QMAILSCAN_SPAMSTOSUFFIX}" + +.if defined(QS_LOCALDOMAINS) && !empty(QS_LOCALDOMAINS) +CONFIGURE_ARGS+= --local-domains "${QS_LOCALDOMAINS}" .endif -RUN_DEPENDS= ${BUILD_DEPENDS} +.if defined(QS_SA_QUARANTINE) +CONFIGURE_ARGS+= --sa-quarantine "${QS_SA_QUARANTINE}" +.endif -USE_QMAIL= yes +.if defined(QS_LANG) +CONFIGURE_ARGS+= --lang "${QS_LANG}" +.endif -SPOOLDIR= ${PREFIX}/qmailscan -PLIST_SUB= SPOOLDIR="${SPOOLDIR:S,${PREFIX}/,,}" +.if defined(QS_ARCHIVE) +CONFIGURE_ARGS+= --archive "${QS_ARCHIVE}" +.endif -HAS_CONFIGURE= yes -CONFIGURE_ARGS+= \ - --qmaildir "${QMAIL_PREFIX}" --spooldir "${SPOOLDIR}" \ - --bindir "${PREFIX}/bin" --qmail-queue-binary "${QMAIL_QUEUE}" \ - --admin "${QMAILSCAN_ADMIN}" --notify "${QMAILSCAN_NOTIFY}" \ - --silent-viruses "${QMAILSCAN_SILENTVIRUSES}" \ - --redundant yes \ - --add-dscr-hdrs yes \ - --log-details syslog --debug no \ - --batch +.if defined(QS_MAX_SCAN_SIZE) +CONFIGURE_ARGS+= --max-scan-size "${QS_MAX_SCAN_SIZE}" +.endif + +.if defined(QS_LOGDETAILS) +CONFIGURE_ARGS+= --log-details "${QS_LOGDETAILS}" +.endif + +.if defined(QS_LOGCRYPTO) +CONFIGURE_ARGS+= --log-crypto "${QS_LOGCRYPTO}" +.endif + +.if defined(QS_EOLCHECK) +CONFIGURE_ARGS+= --ignore-eol-check "${QS_EOLCHECK}" +.endif + +.if defined(QS_HEADERS) +CONFIGURE_ARGS+= --add-dscr-hdrs "${QS_HEADERS}" +.endif + +.if defined(QS_DEBUG) +CONFIGURE_ARGS+= --debug "${QS_DEBUG}" +.endif + +.if defined(QS_MAX_ZIP_SIZE) +CONFIGURE_ARGS+= --max-zip-size "${QS_MAX_ZIP_SIZE}" +.endif pre-configure: @${ECHO_MSG} "" @${ECHO_MSG} "----------------------------------------" @${ECHO_MSG} "You may use the following build options:" @${ECHO_MSG} "" - @${ECHO_MSG} "QMAILSCAN_ADMIN email adress of qmail-scanner admin for alerts" - @${ECHO_MSG} "QMAILSCAN_ADMINREALNAME* name to use when sending alerts" - @${ECHO_MSG} "QMAILSCAN_LANG specify languages for QS mails (notify, etc..)" - @${ECHO_MSG} " supported languages are: af_ZA, cs_CZ, da_DK, de_DE," - @${ECHO_MSG} " en_GB, en_PL, enlt_LT, enlt_LT_short, es_ES, fr_FR," - @${ECHO_MSG} " it_IT, ja_JP.EUC, nl_NL, no_NO, pl_PL, pt_BR, pt_PT," - @${ECHO_MSG} " sk_SK, sv_SE, tr_TR, tr_TR_ascii and tw_BIG5" - @${ECHO_MSG} " default depends on your LANG variable" - @${ECHO_MSG} " (en_GB if LANG is not set)" - @${ECHO_MSG} "QMAILSCAN_LOCALDOMAINS domains classified as local domains preventing alerts" - @${ECHO_MSG} " of externals users (and mailing-lists...)" - @${ECHO_MSG} "QMAILSCAN_LOGCRYPTO simply notes in the log record if the message" - @${ECHO_MSG} " contained any form of digital signing or encryption" - @${ECHO_MSG} " (S/MIME, PGP and password protected files)" - @${ECHO_MSG} " default is disabled" - @${ECHO_MSG} "QMAILSCAN_MAXZIPSIZE zip that would have unpacked into more diskspace" - @${ECHO_MSG} " than this value will be blocked (prevent DoS)" - @${ECHO_MSG} " default is 1000000000" - @${ECHO_MSG} "QMAILSCAN_NOTBLKZIPPW zip password protected are blocked by default" - @${ECHO_MSG} " setting this variable to disable this function" - @${ECHO_MSG} "QMAILSCAN_NOTIFY who has to be notify of viruses/spams" - @${ECHO_MSG} " defaults to 'psender,precips'" - @${ECHO_MSG} "QMAILSCAN_SCANNERS list of installed content scanner" - @${ECHO_MSG} " default is automatic, so you do not need to set this" - @${ECHO_MSG} "QMAILSCAN_SILENTVIRUSES viruses that qs shoud not notify about" - @${ECHO_MSG} "QMAILSCAN_SPAMSREDIRECT* set this if you want to redirect all spams to a" - @${ECHO_MSG} " specific email address" - @${ECHO_MSG} "QMAILSCAN_SPAMSTOSUFFIX* suffix to alter spams recipients with" - @${ECHO_MSG} "" - @${ECHO_MSG} "When you set the last option to 'spam', a detected spam will be delivered to" - @${ECHO_MSG} "'user-spam@domain' instead of 'user@domain'." + @${ECHO_MSG} "QS_USER User to run Q-S" + @${ECHO_MSG} " (Default: qscand)" + @${ECHO_MSG} "QS_ADMIN Administrator Q-S Address" + @${ECHO_MSG} " (Default: postmaster)" + @${ECHO_MSG} "QS_ADMIN_DESC Real Name of Administrator Q-S" + @${ECHO_MSG} " (Default: System Anti-Virus Administrator)" + @${ECHO_MSG} "QS_SCANNERS List of scanners installed, e.g. bitdefender,nod32" + @${ECHO_MSG} " (Default: auto)" + @${ECHO_MSG} "QS_SKIP_MSGS Q-S will skip running any anti-virus scanners on" + @${ECHO_MSG} " any messages it works out are text-only." + @${ECHO_MSG} " (Default: yes|no)" + @${ECHO_MSG} "QS_NOTIFY Who has to be notify of viruses/spams" + @${ECHO_MSG} " (Default: 'psender|precips')" + @${ECHO_MSG} "QS_LOCALDOMAINS Domains classified as local domains preventing alerts" + @${ECHO_MSG} " of externals users (and mailing-lists...)" + @${ECHO_MSG} "QS_SA_QUARANTINE If SA tags a message as having a score higher than" + @${ECHO_MSG} " 'required_hits', then that message will be quarantined" + @${ECHO_MSG} " into a new maildir '/.spam/' and not delivered to end-user" + @${ECHO_MSG} " (Default: disabled, Options: Any positive number)" + @${ECHO_MSG} "QS_LANG Specify languages for Q-S mails alerts" + @${ECHO_MSG} " Supported languages are: af_ZA, cs_CZ, da_DK, de_DE," + @${ECHO_MSG} " en_GB, en_PL, enlt_LT, enlt_LT_short, es_ES, fr_FR," + @${ECHO_MSG} " it_IT, ja_JP.EUC, nl_NL, no_NO, pl_PL, pt_BR, pt_PT," + @${ECHO_MSG} " sk_SK, sv_SE, tr_TR, tr_TR_ascii and tw_BIG5" + @${ECHO_MSG} " Default depends on your LANG variable" + @${ECHO_MSG} " (Default: en_GB if LANG is not set)" + @${ECHO_MSG} "QS_ARCHIVE If "yes", all copies of processed mail will be moved into the" + @${ECHO_MSG} " maildir '$SPOOLDIR/$ARCHIVEDIR/'. Any other string besides 'yes'" + @${ECHO_MSG} " and 'no' will be treated as a REGEX. Only mail from or to an" + @${ECHO_MSG} " address that contains that regex will be archived." + @${ECHO_MSG} " e.g. 'jhaar|harry'" + @${ECHO_MSG} " (Default: no, Options: yes|no|regex)" + @${ECHO_MSG} "QS_LOGDETAILS Whether or not to log to mailstats.csv/via syslog the attachment" + @${ECHO_MSG} " structure of every Email message. Logs to "syslog" by default." + @${ECHO_MSG} " (Default: syslog, Options: yes|syslog|no)" + @${ECHO_MSG} "QS_LOGCRYPTO Simply notes in the log record if the message" + @${ECHO_MSG} " contained any form of digital signing or encryption" + @${ECHO_MSG} " (S/MIME, PGP and password protected files)" + @${ECHO_MSG} " (Default: no, Options: yes|no)" + @${ECHO_MSG} "QS_MAXSCANSIZE Email messages (raw size) larger than this number (in bytes)" + @${ECHO_MSG} " will skip all AV and Spam scanning checks. It's to stop Q-S" + @${ECHO_MSG} " scanning 300Mbyte TIFF file messages and the like." + @${ECHO_MSG} " (Default: 100Mbytes)" + @${ECHO_MSG} "QS_MAXZIPSIZE Zip that would have unpacked into more diskspace" + @${ECHO_MSG} " than this value will be blocked (prevent DoS)" + @${ECHO_MSG} " (Default: 1Gbytes)" + @${ECHO_MSG} "QS_EOLCHECK Making this "yes" stops Qmail-Scanner from treating '\r' or '\0'" + @${ECHO_MSG} " chars in the headers of MIME mail messages as being suspicious" + @${ECHO_MSG} " enough to quarantine mail over." + @${ECHO_MSG} " (Default: no, Options: yes|no)" + @${ECHO_MSG} "QS_HEADERS This adds the now old-fashion X-Qmail-Scanner headers to the message." + @${ECHO_MSG} " "all" adds the "rcpt to" headers too - this is a privacy hole." + @${ECHO_MSG} " (Default: no, Options: yes|no|all)" + @${ECHO_MSG} "QS_DEBUG Whether or not debugging is turned on. Can be also set to a number." + @${ECHO_MSG} " NOTE: Numbers over 100 cause Q-S to not cleanup working files" + @${ECHO_MSG} " (Default: yes, Options: yes|no|number)" @${ECHO_MSG} "" - @${ECHO_MSG} "* Please note these options are only available with FreeBSD ports " - @${ECHO_MSG} "So please, do not report relatives bugs to qmail-scanner team, but maintainer." - @${ECHO_MSG} "----------------------------------------" - @${ECHO_MSG} "" - @PKG_PREFIX=${PREFIX} ${SH} ${PKGDIR}/pkg-install ${PKGNAME} PRE-INSTALL - @if ! ${TEST} -f ${QMAIL_QUEUE}; then \ - ${ECHO_MSG} "Unable to found qmail-queue binary trying '${QMAIL_QUEUE}'."; \ - ${ECHO_MSG} "Please set QMAIL_PREFIX to your qmail installation directory !"; \ - exit 1; \ - fi -post-configure: - ${TEST} -f ${WRKSRC}/qmail-scanner-queue.pl +do-configure: + @${SED} -e 's,%%SPOOLDIR%%,${SPOOLDIR},g; s,%%QS_USER%%,${QS_USER},g; \ + s,%%QS_ID%%,${QS_ID},g; s,%%PREFIX%%,${PREFIX},g' \ + ${FILESDIR}/pkg-install.in > ${WRKDIR}/pkg-install + @PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL do-install: - -${TEST} -f ${PREFIX}/bin/qmail-scanner-queue.pl && \ - ${MV} ${PREFIX}/bin/qmail-scanner-queue.pl \ - ${PREFIX}/bin/qmail-scanner-queue.pl.old - ${INSTALL_SCRIPT} ${WRKSRC}/qmail-scanner-queue.pl ${PREFIX}/bin - ${INSTALL_SCRIPT} ${WRKSRC}/contrib/qs2mrtg.pl ${PREFIX}/bin - ${INSTALL_DATA} ${WRKSRC}/quarantine-attachments.txt \ - ${SPOOLDIR}/quarantine-attachments.sample - ${TEST} -f ${SPOOLDIR}/quarantine-attachments.txt || \ - ${INSTALL_DATA} ${WRKSRC}/quarantine-attachments.txt ${SPOOLDIR} - ${INSTALL_DATA} ${WRKSRC}/contrib/mrtg-qmail-scanner.cfg \ - ${PREFIX}/share/examples/qs2mrtg - @PKG_PREFIX=${PREFIX} ${SH} ${PKGDIR}/pkg-install ${PKGNAME} POST-INSTALL +.if !defined(NOPORTDOCS) + @${MKDIR} ${DOCSDIR}/contrib +. for i in ${DOCS} + ${INSTALL_DATA} ${WRKSRC}/contrib/${i} ${DOCSDIR}/contrib +. endfor +. for j in ${CONTRIB} + ${INSTALL_SCRIPT} ${WRKSRC}/contrib/${j} ${DOCSDIR}/contrib +. endfor +.endif + @${MKDIR} ${SPOOLDIR} + @${INSTALL_DATA} ${WRKSRC}/quarantine-events.txt ${SPOOLDIR}/quarantine-events.txt.sample + @${INSTALL_SCRIPT} ${WRKSRC}/qmail-scanner-queue.template ${PREFIX}/bin/qmail-scanner-queue.pl + @${ECHO_MSG} "" @${CAT} ${PKGMESSAGE} +post-install: + @PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL + post-deinstall: - @${ECHO_MSG} + @${ECHO_MSG} "" @${ECHO_MSG} "If you're not updating this port, you can delete directory '${SPOOLDIR}'." @${ECHO_MSG} "" test: @${WRKSRC}/contrib/test_installation.sh -doit -.include <bsd.port.mk> +.include <bsd.port.post.mk> diff --git a/mail/qmail-scanner/distinfo b/mail/qmail-scanner/distinfo index fe3e81817c66..eb9974ee7930 100644 --- a/mail/qmail-scanner/distinfo +++ b/mail/qmail-scanner/distinfo @@ -1,3 +1,3 @@ -MD5 (qmail-scanner-1.25.tgz) = 0117c425efb75208682fabcba4e1dd24 -SHA256 (qmail-scanner-1.25.tgz) = 6fa5743a0d180bc4d1a626c4bf56c06a29ec3c0d7cb2ce834add8faceefb9c01 -SIZE (qmail-scanner-1.25.tgz) = 221156 +MD5 (qmail-scanner-2.01.tgz) = 3fa95fb2e6bcea5adf450b6f1497ff5e +SHA256 (qmail-scanner-2.01.tgz) = 4bf69d3581c23b552deffafcfca49f325c5fe6c5ee6012055f201b8535243472 +SIZE (qmail-scanner-2.01.tgz) = 226699 diff --git a/mail/qmail-scanner/files/patch-configure b/mail/qmail-scanner/files/patch-configure index 6c2bfd5adfac..ca893218013a 100644 --- a/mail/qmail-scanner/files/patch-configure +++ b/mail/qmail-scanner/files/patch-configure @@ -1,5 +1,5 @@ ---- ./configure.orig Mon Oct 18 21:26:55 2004 -+++ ./configure Mon Jan 31 09:07:22 2005 +--- configure.old Tue Aug 14 13:03:10 2007 ++++ configure Tue Aug 14 13:04:29 2007 @@ -1,13 +1,6 @@ #!/bin/sh # @@ -14,132 +14,12 @@ umask 007 OLD_LANG="$LANG" -@@ -51,6 +44,12 @@ - #reset all English to en_GB - QSLANG="en_GB" - fi -+ -+QSLANG=`echo $QSLANG|sed 's/\..*//'` -+if [ "$QSLANG" = "ja_JP" ]; then -+ #reset all Japanese to ja_JP.EUC -+ QSLANG="ja_JP.EUC" -+fi +@@ -73,7 +66,7 @@ + LANGUAGES="`ls -d locale/[a-z]*|sed 's?^locale\/??g'`" + LANGUAGES=`echo $LANGUAGES` - if [ ! -d "./locale/$QSLANG" ]; then - echo " -@@ -87,7 +86,8 @@ - QUARANTINE_PASSWORD_PROTECTED="0" - DESCRIPTIVE_HEADERS="0" - NOTIFY_ADDRESSES="psender,nmlvadm" --USERNAME="$USER" -+ADMIN_MAIL="$USER" -+ADMIN_REALNAME="System Anti-Virus Administrator" - MANUAL_INSTALL="0" - INSTALLIT="0" - DONOTCONFIRM="0" -@@ -100,13 +100,17 @@ +-SPOOLDIR="/var/spool/qscan" ++SPOOLDIR="/var/spool/qscand" + QMAILDIR="/var/qmail" - while [ -n "$1" ] - do -+ -+ - case $1 in - --qs-user) if [ "$2" != "" ] ; then shift ; fi ; QS_USER="$1" ;; - --spooldir) if [ "$2" != "" ] ; then shift ; fi ; AS_QQ="$1" ;; - --qmaildir) if [ "$2" != "" ]; then shift ; fi ; QMAILDIR="$1" ;; - --bindir) if [ "$2" != "" ] ; then shift ; fi ; BINDIR="$1" ;; -- --user|--admin) if [ "$2" != "" ] ; then shift ; fi ; USERNAME="$1" ;; -- --domain) if [ "$2" != "" ] ; then shift ; fi ; MAILDOMAIN="$1" ;; -+ --admin|--user) if [ "$2" != "" ] ; then shift ; fi ; ADMIN_MAIL=`echo $1 | sed 's/@/\\\\@/'` ;; -+ --admin-realname) if [ "$2" != "" ] ; then shift ; fi ; ADMIN_REALNAME="$1" ;; -+ --spams-redirect) if [ "$2" != "" ] ; then shift ; fi ; SPAMS_REDIRECT=`echo $1 | sed 's/@/\\\\@/'` ;; -+ --spams-tosuffix) if [ "$2" != "" ] ; then shift ; fi ; SPAMS_TOSUFFIX="$1" ;; - --notify) if [ "$2" != "" ]; then shift ; fi ; NOTIFY_ADDRESSES="$1" ;; - --batch) DONOTCONFIRM="1" ; if [ "$2" != "" -a "`echo $2|grep '\-'`" = "" ] ; then shift ; fi ;; - --silent-viruses) if [ "$2" != "" ]; then shift ; fi ; FIND_SILENT_VIRUSES="$1" ;; -@@ -138,9 +142,17 @@ - --spooldir <spooldir> defaults to $AS_QQ/ - --bindir <installdir> where to install qmail-scanner-queue.pl - Defaults to /var/qmail/bin/ -- --admin <username> user to Email alerts to (default: $USERNAME) -- --domain <domain name> "user"@"domain" makes up Email address -- to Email alerts to. -+ --admin <email> email to send alerts to (default: $ADMIN_MAIL) -+ --admin-realname <...> realname for sending alerts -+ Defaults to "$ADMIN_REALNAME" -+ nb: use '_' instead of ' ' (sorry for inconvenience) -+ --spams-redirect <email> email to redirect detected spams to -+ Defaults to empty (no redirection) -+ --spams-tosuffix <suffix> suffix to alter recipient with -+ i.e. recipient user@domain -+ will be transform into user-suffix@domain -+ Defaults to empty (do not alter recipients) -+ nb: 'spams-admin' option has precedence on this - --scanners <list of installed content scanners> - Defaults to "auto" - will use - whatever scanners are found on system. -@@ -910,7 +922,7 @@ - #Test to see if spamc is calling Unix sockets instead of TCP - SPAMD_SOCKET=`ps -ef 2>/dev/null|egrep 'spamd.*socket'|grep -v grep|sed -e 's/^.*socketpath=//'|awk '{print $1}'` - if [ "$SPAMD_SOCKET" = "" ]; then -- SPAMD_SOCKET=`ps aux 2>/dev/null|egrep 'spamd.*socket'|grep -v grep|sed -e 's/^.*socketpath=//'|awk '{print $1}'` -+ SPAMD_SOCKET=`ps auxwww 2>/dev/null|egrep 'spamd.*socket'|grep -v grep|sed -e 's/^.*socketpath[\ |=]//'|awk '{print $1}'` - fi - if [ "$SPAMD_SOCKET" != "" -a -S "$SPAMD_SOCKET" ]; then - SPAMC_BINARY="$SPAMC_BINARY -U $SPAMD_SOCKET" -@@ -1005,9 +1017,14 @@ - - MAILDOMAIN=${MAILDOMAIN:-$FQDN} - LOCAL_DOMAINS_ARRAY=${LOCAL_DOMAINS_ARRAY:-$MAILDOMAIN} --CMDLINE="$0 --spooldir $AS_QQ --qmaildir $QMAILDIR --bindir $BINDIR --qmail-queue-binary $QMAILQUEUE_BIN --admin $USERNAME --domain $MAILDOMAIN --notify $NOTIFY_ADDRESSES --local-domains $LOCAL_DOMAINS_ARRAY --silent-viruses $SILENT_VIRUSES --lang $QSLANG --debug $DEBUG_LEVEL --unzip $FORCE_UNZIP --block-password-protected $QUARANTINE_PASSWORD_PROTECTED --add-dscr-hdrs $DESCRIPTIVE_HEADERS --archive $ARCHIVEIT --redundant $REDUNDANT --log-details $LOG_DETAILS --log-crypto $LOG_CRYPTO --fix-mime $FIX_MIME --ignore-eol-check $DISABLE_EOL_CHECK --scanners \"$SCANNERS\"" -- -+CMDLINE="$0 --spooldir $AS_QQ --qmaildir $QMAILDIR --bindir $BINDIR --qmail-queue-binary $QMAILQUEUE_BIN --admin $ADMIN_MAIL --admin-realname \"$ADMIN_REALNAME\" --domain $MAILDOMAIN --notify $NOTIFY_ADDRESSES --local-domains $LOCAL_DOMAINS_ARRAY --silent-viruses $SILENT_VIRUSES --lang $QSLANG --debug $DEBUG_LEVEL --unzip $FORCE_UNZIP --block-password-protected $QUARANTINE_PASSWORD_PROTECTED --add-dscr-hdrs $DESCRIPTIVE_HEADERS --archive $ARCHIVEIT --redundant $REDUNDANT --log-details $LOG_DETAILS --log-crypto $LOG_CRYPTO --fix-mime $FIX_MIME --ignore-eol-check $DISABLE_EOL_CHECK --scanners \"$SCANNERS\"" - -+if [ -n "$SPAMS_REDIRECT" ]; then -+ CMDLINE="$CMDLINE --spams-redirect $SPAMS_REDIRECT" -+fi -+if [ -n "$SPAMS_TOSUFFIX" ]; then -+ CMDLINE="$CMDLINE --spams-tosuffix $SPAMS_TOSUFFIX" -+fi - if [ "$MANUAL_INSTALL" = "1" ]; then - CMDLINE="$CMDLINE --no-QQ-check $MANUAL_INSTALL" - fi -@@ -1381,7 +1398,7 @@ - fi - fi - --USERNAME=${USERNAME:-$LOGNAME} -+ADMIN_MAIL=${ADMIN_MAIL:-$LOGNAME} - - SCANNER_ARRAY=`echo $SCANNER_ARRAY|sed 's/^,//g'` - -@@ -1461,7 +1478,13 @@ - fi - echo "archiving $ASTRING into $AS_QQ/$ARCHIVEDIR/" - fi --echo "virus-admin=$USERNAME@$MAILDOMAIN" -+echo "admin=$ADMIN_MAIL" -+if [ -n "$SPAMS_REDIRECT" ]; then -+ echo "spams-admin=$SPAMS_REDIRECT" -+fi -+if [ -n "$SPAMS_TOSUFFIX" ]; then -+ echo "spams-suffix=$SPAMS_TOSUFFIX" -+fi - echo "local-domains=$LOCAL_DOMAINS_ARRAY" - echo "silent-viruses=$FIND_SILENT_VIRUSES_ARRAY" - echo "scanners=$SCANNER_ARRAY" -@@ -1623,10 +1646,12 @@ - s?SPAMC_BINARY?$SPAMC_BINARY?g; - s?SPAMC_OPTIONS?$SPAMC_OPTIONS?g; - s?SPAMC_SUBJECT?$SPAMC_SUBJECT?g; --s?USERNAME?$USERNAME?g; -+s?ADMIN_MAIL?$ADMIN_MAIL?g; -+s?ADMIN_REALNAME?$ADMIN_REALNAME?g; -+s?SPAMS_REDIRECT?$SPAMS_REDIRECT?g; -+s?SPAMS_TOSUFFIX?$SPAMS_TOSUFFIX?g; - s?SKIP_TEXT_MSGS?$SKIP_TEXT_MSGS?g; - s?FQDN?$FQDN?g; --s?MAILDOMAIN?$MAILDOMAIN?g; - s?LOCAL_DOMAINS_ARRAY?$LOCAL_DOMAINS_ARRAY?g; - s?NOTIFY_ADDRESSES?$NOTIFY_ADDRESSES?g; - s?FIND?$FIND?g; + BINDIR="$QMAILDIR/bin" diff --git a/mail/qmail-scanner/files/patch-qmail-scanner-queue.template b/mail/qmail-scanner/files/patch-qmail-scanner-queue.template deleted file mode 100644 index ad2728979032..000000000000 --- a/mail/qmail-scanner/files/patch-qmail-scanner-queue.template +++ /dev/null @@ -1,51 +0,0 @@ ---- qmail-scanner-queue.template.orig Wed Mar 10 21:02:05 2004 -+++ qmail-scanner-queue.template Mon Mar 15 01:26:52 2004 -@@ -85,11 +85,17 @@ - - - #From: line information used when making reports --my $V_FROM='USERNAME@MAILDOMAIN'; --my $V_FROMNAME='System Anti-Virus Administrator'; -+my $V_FROM='ADMIN_MAIL'; -+my $V_FROMNAME='ADMIN_REALNAME'; - - # Address carbon-copied on any virus reports --my $QUARANTINE_CC='USERNAME@MAILDOMAIN'; -+my $QUARANTINE_CC='ADMIN_MAIL'; -+ -+# Address to where spams are redirected -+my $SPAMSADMIN='SPAMS_REDIRECT'; -+ -+# Suffix to alter recipients with (when spam detected) -+my $SPAMSSUFFIX='SPAMS_TOSUFFIX'; - - #Array of local domains that are checked against for - #deciding whether or not to send recipient alerts to -@@ -302,6 +308,7 @@ - } - - my ($quarantine_event,$quarantine_event_tmp,$quarantine_DOS)=0; -+my $spam_event=0; - - my $file_id = &uniq_id(); - -@@ -424,7 +431,18 @@ - &email_quarantine_report; - } else { - &qmail_parent_check; -- &qmail_requeue($env_returnpath,$env_recips,"$scandir/$wmaildir/new/$file_id"); -+ if ($spam_event) { -+ if ($SPAMSADMIN) { -+ &qmail_requeue($env_returnpath,"T$SPAMSADMIN\0\0","$scandir/$wmaildir/new/$file_id"); -+ } elsif ($SPAMSSUFFIX) { -+ $env_recips =~ s/\@/\-$SPAMSSUFFIX\@/g; -+ &qmail_requeue($env_returnpath,$env_recips,"$scandir/$wmaildir/new/$file_id"); -+ } else { -+ &qmail_requeue($env_returnpath,$env_recips,"$scandir/$wmaildir/new/$file_id"); -+ } -+ } else { -+ &qmail_requeue($env_returnpath,$env_recips,"$scandir/$wmaildir/new/$file_id"); -+ } - } - alarm 0; - }; diff --git a/mail/qmail-scanner/files/patch-sub-spamassassin.pl b/mail/qmail-scanner/files/patch-sub-spamassassin.pl deleted file mode 100644 index 8daf87ded5c2..000000000000 --- a/mail/qmail-scanner/files/patch-sub-spamassassin.pl +++ /dev/null @@ -1,10 +0,0 @@ ---- sub-spamassassin.pl.orig Thu Dec 4 22:17:55 2003 -+++ sub-spamassassin.pl Mon Mar 15 01:27:28 2004 -@@ -61,6 +61,7 @@ - $tag_score .= "SA:1($sa_score/$sa_max):"; - $sa_comment = "Yes, hits=$sa_score required=$sa_max" if ($sa_fast); - &debug("SA: yup, this smells like SPAM"); -+ $spam_event = 1; - } - if ($sa_score > 0) { - $sa_score=int($sa_score); diff --git a/mail/qmail-scanner/files/pkg-install.in b/mail/qmail-scanner/files/pkg-install.in new file mode 100644 index 000000000000..523db6e5b97d --- /dev/null +++ b/mail/qmail-scanner/files/pkg-install.in @@ -0,0 +1,49 @@ +#!/bin/sh + +PREFIX=%%PREFIX%% + +PW="/usr/sbin/pw" +CHOWN="/usr/sbin/chown" +CHMOD="/bin/chmod" +MKDIR="/bin/mkdir -p" +NOLOGIN="/usr/sbin/nologin" + +QS_USER=%%QS_USER%% +QS_ID=%%QS_ID%% + +SPOOLDIR=%%SPOOLDIR%% + +case "$1" in +PRE-INSTALL) + # User and group + ${PW} groupshow -n ${QS_USER} >/dev/null 2>&1 \ + || ${PW} groupadd -n ${QS_USER} -g ${QS_ID} + ${PW} usershow -n ${QS_USER} >/dev/null 2>&1 \ + || ${PW} useradd ${QS_USER} -g ${QS_USER} -u ${QS_ID} -s ${NOLOGIN} + ;; +POST-INSTALL) + # Directories + for i in working archives; do + for j in tmp cur new; do + [ ! -d ${SPOOLDIR}/${i}/${j} ] && (${MKDIR} ${SPOOLDIR}/${i}/${j} || exit 1) + done + done + for i in viruses policy spam; do + for j in tmp cur new; do + [ ! -d ${SPOOLDIR}/quarantine/${i}/${j} ] && (${MKDIR} ${SPOOLDIR}/quarantine/${i}/${j} || exit 1) + done + done + + # Mod and owner + ${CHOWN} -R ${QS_USER}:${QS_USER} ${SPOOLDIR} + ${CHOWN} ${QS_USER}:${QS_USER} ${PREFIX}/bin/qmail-scanner-queue.pl + ${CHMOD} 4755 ${PREFIX}/bin/qmail-scanner-queue.pl + + # Initialize + ${PREFIX}/bin/qmail-scanner-queue.pl -z + ${PREFIX}/bin/qmail-scanner-queue.pl -g + + # Mod and owner (final) + ${CHOWN} -R ${QS_USER}:${QS_USER} ${SPOOLDIR} + ;; +esac diff --git a/mail/qmail-scanner/files/pkg-message.in b/mail/qmail-scanner/files/pkg-message.in new file mode 100644 index 000000000000..685b1856f907 --- /dev/null +++ b/mail/qmail-scanner/files/pkg-message.in @@ -0,0 +1,22 @@ +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= +Congratulations! Qmail-Scanner is now installed! +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + + - Please, configure correctly your anti-virus and anti-spam; + - You HAVE to reinstall this port each time you add or remo-; +ve one; + - Now configure the environment variable to use qmail-scanner: + + You just need to add for your tcpserver file (generally called +as: tcp.smtp): + QMAILQUEUE="%%PREFIX%%/bin/qmail-scanner-queue.pl" + + Or create an new file in /service/smtpd/env, with the following +content and called as "QMAILQUEUE": + %%PREFIX%%/bin/qmail-scanner-queue.pl + +NOTE: always you change anything in your environment dir, you just +need to restart your smtpd, for it use: "svc -k /service/smtpd". + +You can test your installation by running 'make test' in port dir. + diff --git a/mail/qmail-scanner/pkg-descr b/mail/qmail-scanner/pkg-descr index e1a3e30d6f0e..d2635e69e0ea 100644 --- a/mail/qmail-scanner/pkg-descr +++ b/mail/qmail-scanner/pkg-descr @@ -1,11 +1,10 @@ -Qmail-Scanner is e-mail content scanner that enables a qmail server to -scan all messages it receives for certain characteristics (normally viruses), -and react accordingly. +Qmail-Scanner is an add-on that enables a Qmail email server to scan gatewayed +email for certain characteristics (i.e. a content scanner). It is typically used +for its anti-virus and anti-spam protection functions, in which case it is used +in conjunction with external scanners. -If you have a commercial virus scanner (eg, Sophos sweep, McAfee -uvscan, etc) installed when you build qmail-scanner, qmail-scanner -will configure itself to use that. Otherwise, it will only use its -internal content filter which only allows you to block mail based -on text in the subject/body, general types of attachments, etc. +It also enables a site (at a server/site level) to create "Policy blocks": +i.e. react to email that contains specific strings in particular headers, or +particular attachment filenames or types (e.g. *.VBS attachments). WWW: http://qmail-scanner.sourceforge.net/ diff --git a/mail/qmail-scanner/pkg-install b/mail/qmail-scanner/pkg-install deleted file mode 100644 index e42be90badcb..000000000000 --- a/mail/qmail-scanner/pkg-install +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh - -CHMOD=/bin/chmod -CHOWN=/usr/sbin/chown -MKDIR=/bin/mkdir -PW=/usr/sbin/pw - -GU_ID=98 -GU_NAME=qscand - -PREFIX=${PKG_PREFIX} -SPOOLDIR=${PREFIX}/qmailscan - -case "$2" in -PRE-INSTALL) - # User and group - ${PW} groupshow -n ${GU_NAME} >/dev/null 2>&1 \ - || ${PW} groupadd -n ${GU_NAME} -g ${GU_ID} - ${PW} usershow -n ${GU_NAME} >/dev/null 2>&1 \ - || ${PW} useradd ${GU_NAME} -g ${GU_NAME} -u ${GU_ID} -s /sbin/nologin - ${MKDIR} -p ${SPOOLDIR} - ${MKDIR} -p ${PREFIX}/share/examples/qs2mrtg - ;; -POST-INSTALL) - # Directories - for i in quarantine working archives; do - for j in tmp cur new; do - ${MKDIR} -p ${SPOOLDIR}/$i/$j - done - done - ${MKDIR} -p ${SPOOLDIR}/tmp - - # Mod and owner - ${CHOWN} -R ${GU_NAME}:${GU_NAME} ${SPOOLDIR} - ${CHOWN} ${GU_NAME}:${GU_NAME} ${PREFIX}/bin/qmail-scanner-queue.pl - ${CHMOD} 4755 ${PREFIX}/bin/qmail-scanner-queue.pl - - # Initialize - ${PREFIX}/bin/qmail-scanner-queue.pl -z - ${PREFIX}/bin/qmail-scanner-queue.pl -g - - # Mod and owner (final) - ${CHOWN} -R ${GU_NAME}:${GU_NAME} ${SPOOLDIR} - ;; -esac diff --git a/mail/qmail-scanner/pkg-message b/mail/qmail-scanner/pkg-message deleted file mode 100644 index e61b55935bea..000000000000 --- a/mail/qmail-scanner/pkg-message +++ /dev/null @@ -1,12 +0,0 @@ -**************************************************** -NOTES: - - You have to configure your anti-virus and anti-spams products! - - You HAVE to reinstall this port each time you add or remove one! - -Now, you have to modify your qmail startup files to call qmail-scanner. -In most case, you just need to add: - export QMAILQUEUE="${PREFIX}/bin/qmail-scanner-queue.pl" -to your tcpserver startup file. - -You can test installation by running 'make test' in port dir. -**************************************************** diff --git a/mail/qmail-scanner/pkg-plist b/mail/qmail-scanner/pkg-plist index bbc89c5de733..37d5ae6b1529 100644 --- a/mail/qmail-scanner/pkg-plist +++ b/mail/qmail-scanner/pkg-plist @@ -1,23 +1,29 @@ -@comment $FreeBSD$ bin/qmail-scanner-queue.pl -bin/qs2mrtg.pl -share/examples/qs2mrtg/mrtg-qmail-scanner.cfg -@dirrm share/examples/qs2mrtg -@unexec if cmp -s %D/%%SPOOLDIR%%/quarantine-attachments.txt %D/%%SPOOLDIR%%/quarantine-attachments.sample; then rm -f %D/%%SPOOLDIR%%/quarantine-attachments.txt && rm -f %D/%%SPOOLDIR%%/quarantine-attachments.db; fi -%%SPOOLDIR%%/quarantine-attachments.sample -@exec [ ! -f %D/%%SPOOLDIR%%/quarantine-attachments.txt ] && cp %D/%%SPOOLDIR%%/quarantine-attachments.sample %D/%%SPOOLDIR%%/quarantine-attachments.txt -%%SPOOLDIR%%/qmail-scanner-queue-version.txt -@dirrmtry %%SPOOLDIR%%/archives/cur -@dirrmtry %%SPOOLDIR%%/archives/new -@dirrmtry %%SPOOLDIR%%/archives/tmp -@dirrmtry %%SPOOLDIR%%/archives -@dirrmtry %%SPOOLDIR%%/quarantine/cur -@dirrmtry %%SPOOLDIR%%/quarantine/new -@dirrmtry %%SPOOLDIR%%/quarantine/tmp -@dirrmtry %%SPOOLDIR%%/quarantine -@dirrmtry %%SPOOLDIR%%/working/cur -@dirrmtry %%SPOOLDIR%%/working/new -@dirrmtry %%SPOOLDIR%%/working/tmp -@dirrmtry %%SPOOLDIR%%/working -@dirrmtry %%SPOOLDIR%%/tmp -@dirrmtry %%SPOOLDIR%% +%%PORTDOCS%%%%DOCSDIR%%/contrib/logging_first_80_chars.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/patch_for_nod32_single_user.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/reformime-test.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/spamc-nasty.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/spamc-nice.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/vpopmail-issues.eml +%%PORTDOCS%%%%DOCSDIR%%/contrib/check_AV_daemons +%%PORTDOCS%%%%DOCSDIR%%/contrib/logrotate.qmail-scanner +%%PORTDOCS%%%%DOCSDIR%%/contrib/mrtg-qmail-scanner.cfg +%%PORTDOCS%%%%DOCSDIR%%/contrib/qmail-scanner-queue.c +%%PORTDOCS%%%%DOCSDIR%%/contrib/qs2mrtg.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/qs_config.sh +%%PORTDOCS%%%%DOCSDIR%%/contrib/qscan-spam-to-users.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/rbl_scanner.txt +%%PORTDOCS%%%%DOCSDIR%%/contrib/sub-avpdaemon.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/sub-sender-cache.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/test-avgd.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/test-clamd.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/test-sophie.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/test-trophie.pl +%%PORTDOCS%%%%DOCSDIR%%/contrib/test_installation.sh +%%PORTDOCS%%%%DOCSDIR%%/contrib/test_password.zip +%%PORTDOCS%%@dirrm %%DOCSDIR%%/contrib +%%PORTDOCS%%@dirrm %%DOCSDIR%% +@unexec echo "" +@unexec echo "If you are permanently removing qmail-scanner, you should also:" | /usr/bin/fmt +@unexec echo "'rm -rf %%SPOOLDIR%%' and remove user/group 'qscand'." | /usr/bin/fmt +@unexec echo "" |