- 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
This commit is contained in:
parent
a18e616bf2
commit
bdc8dde615
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=198741
14 changed files with 354 additions and 401 deletions
28
UPDATING
28
UPDATING
|
@ -6,6 +6,34 @@ You should get into the habit of checking this file for changes each
|
|||
time you update your ports collection, before attempting any port
|
||||
upgrades.
|
||||
|
||||
20070904:
|
||||
AFFECTS: users of mail/qmail-scanner
|
||||
AUTHOR: lippe@freebsdbrasil.com.br
|
||||
|
||||
qmail-scanner was updated to 2.x, and 1.x version was repocopied to
|
||||
mail/qmail-scanner1. There are some differences between these 2 versions:
|
||||
|
||||
quarantine-attachments.txt has been renamed to quarantine-events.txt, it is
|
||||
used to quarantine more than just attachments, and the format of that file
|
||||
has been changed.
|
||||
|
||||
Quarantine directory is now separated into THREE subdirs: "spam", "viruses"
|
||||
and "policy". This is so sites can arrange different auto-delete jobs to
|
||||
control the size of these areas if they so wish.
|
||||
|
||||
Some features that were hard-wired into the main body of Q-S have been moved
|
||||
into quarantine-events.txt where they should have been all along. This makes
|
||||
it possible to change settings without reconfiguring the main body of qmail-
|
||||
scanner-queue.pl. You will need to rewrite any rules you had in place within
|
||||
the old quarantine-attachments.txt into the new format quarantine-events.txt
|
||||
|
||||
Changed setuid to 6755 - ie it's now setuid and setgid. Forcing all files to
|
||||
be group qscand will allow those who wish to do so to keep their AV daemons
|
||||
running as other accounts. They just need to ensure those daemons are members
|
||||
of the qscand group - and as such should be able to read the necessary files.
|
||||
e.g. clamd could run as "clamav", but as long as account "clamav" is a member
|
||||
of group "qscand", clamd is able to read the mail enough to scan it.
|
||||
|
||||
20070903:
|
||||
AFFECTS: users of net/whois, net/gwhois
|
||||
AUTHOR: nivo+kw+ports.bfa274@is-root.com
|
||||
|
|
|
@ -492,6 +492,7 @@
|
|||
SUBDIR += qmail-rblchk
|
||||
SUBDIR += qmail-remove
|
||||
SUBDIR += qmail-scanner
|
||||
SUBDIR += qmail-scanner1
|
||||
SUBDIR += qmail-spamcontrol
|
||||
SUBDIR += qmail-tls
|
||||
SUBDIR += qmail-vida
|
||||
|
|
|
@ -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}"
|
||||
.endif
|
||||
.if defined(QMAILSCAN_LOGCRYPTO)
|
||||
CONFIGURE_ARGS+= --log-crypto yes
|
||||
.endif
|
||||
.if defined(QMAILSCAN_NOTUNZIP)
|
||||
CONFIGURE_ARGS+= --unzip no
|
||||
.else
|
||||
|
||||
.if defined(WITH_UNZIP)
|
||||
CONFIGURE_ARGS+= --unzip yes
|
||||
.if defined(QMAILSCAN_MAXZIPSIZE)
|
||||
CONFIGURE_ARGS+= --max-zip-size "${QMAILSCAN_MAXZIPSIZE}"
|
||||
.endif
|
||||
.if !defined(QMAILSCAN_NOTBLKZIPPW)
|
||||
BUILD_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
|
||||
CONFIGURE_ARGS+= --block-password-protected yes
|
||||
.endif
|
||||
.endif
|
||||
.if defined(QMAILSCAN_SCANNERS)
|
||||
CONFIGURE_ARGS+= --scanners "${QMAILSCAN_SCANNERS}"
|
||||
.else
|
||||
CONFIGURE_ARGS+= --scanners auto
|
||||
.endif
|
||||
QMAILSCAN_SILENTVIRUSES?= auto
|
||||
.if defined(QMAILSCAN_SPAMSREDIRECT)
|
||||
CONFIGURE_ARGS+= --spams-redirect "${QMAILSCAN_SPAMSREDIRECT}"
|
||||
.endif
|
||||
.if defined(QMAILSCAN_SPAMSTOSUFFIX)
|
||||
CONFIGURE_ARGS+= --spams-tosuffix "${QMAILSCAN_SPAMSTOSUFFIX}"
|
||||
.endif
|
||||
|
||||
RUN_DEPENDS= ${BUILD_DEPENDS}
|
||||
.if !defined(QS_USER)
|
||||
CONFIGURE_ARGS+= --qs-user "${QS_USER}"
|
||||
.endif
|
||||
|
||||
USE_QMAIL= yes
|
||||
.if !defined(QS_ADMIN)
|
||||
CONFIGURE_ARGS+= --admin "${QS_ADMIN}"
|
||||
.endif
|
||||
|
||||
SPOOLDIR= ${PREFIX}/qmailscan
|
||||
PLIST_SUB= SPOOLDIR="${SPOOLDIR:S,${PREFIX}/,,}"
|
||||
.if defined(QS_ADMIN_DESC)
|
||||
CONFIGURE_ARGS+= --admin-description "${QS_ADMIN_DESC}"
|
||||
.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_SCANNERS)
|
||||
CONFIGURE_ARGS+= --scanners "${QS_SCANNERS}"
|
||||
.endif
|
||||
|
||||
.if defined(QS_SKIP_MSGS)
|
||||
CONFIGURE_ARGS+= --skip-text-msgs "${QS_SKIP_MSGS}"
|
||||
.endif
|
||||
|
||||
.if !defined(QS_NOTIFY)
|
||||
CONFIGURE_ARGS+= --notify psender,precips
|
||||
.endif
|
||||
|
||||
.if defined(QS_LOCALDOMAINS) && !empty(QS_LOCALDOMAINS)
|
||||
CONFIGURE_ARGS+= --local-domains "${QS_LOCALDOMAINS}"
|
||||
.endif
|
||||
|
||||
.if defined(QS_SA_QUARANTINE)
|
||||
CONFIGURE_ARGS+= --sa-quarantine "${QS_SA_QUARANTINE}"
|
||||
.endif
|
||||
|
||||
.if defined(QS_LANG)
|
||||
CONFIGURE_ARGS+= --lang "${QS_LANG}"
|
||||
.endif
|
||||
|
||||
.if defined(QS_ARCHIVE)
|
||||
CONFIGURE_ARGS+= --archive "${QS_ARCHIVE}"
|
||||
.endif
|
||||
|
||||
.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} "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} "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} ""
|
||||
@${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>
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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;
|
||||
};
|
|
@ -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);
|
49
mail/qmail-scanner/files/pkg-install.in
Normal file
49
mail/qmail-scanner/files/pkg-install.in
Normal file
|
@ -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
|
22
mail/qmail-scanner/files/pkg-message.in
Normal file
22
mail/qmail-scanner/files/pkg-message.in
Normal file
|
@ -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.
|
||||
|
|
@ -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/
|
||||
|
|
|
@ -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
|
|
@ -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.
|
||||
****************************************************
|
|
@ -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 ""
|
||||
|
|
|
@ -14,14 +14,16 @@ MASTER_SITE_SUBDIR= ${PORTNAME}
|
|||
DISTNAME= ${PORTNAME}-${PORTVERSION:S/.r/rc/}
|
||||
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
|
||||
|
||||
MANUAL_PACKAGE_BUILD= Requires qmail built with non-standard setting
|
||||
|
||||
CONFLICTS= qmail-scanner-2.*
|
||||
|
||||
QMAIL_QUEUE= ${QMAIL_PREFIX}/bin/qmail-queue
|
||||
|
||||
USE_PERL5= yes
|
||||
|
|
Loading…
Reference in a new issue