summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCtibor Brančík <ctibor@brancik.cz>2018-07-02 11:50:03 +0200
committerCtibor Brančík <ctibor@brancik.cz>2018-07-02 11:50:03 +0200
commit9862be25a8ba006517ceb0a017e684d8ffebca97 (patch)
tree796abf2e53d9879f8fe6cbdfc01fde42472ba101
parentda69f9882245e515b358f96495209771d8041e09 (diff)
downloadbrancik-overlay-9862be25a8ba006517ceb0a017e684d8ffebca97.tar.gz
brancik-overlay-9862be25a8ba006517ceb0a017e684d8ffebca97.tar.bz2
Add mail-filter/qmail-scanner from funtoo
-rw-r--r--mail-filter/qmail-scanner/Manifest2
-rw-r--r--mail-filter/qmail-scanner/qmail-scanner-2.08.ebuild193
2 files changed, 195 insertions, 0 deletions
diff --git a/mail-filter/qmail-scanner/Manifest b/mail-filter/qmail-scanner/Manifest
new file mode 100644
index 0000000..e5cd100
--- /dev/null
+++ b/mail-filter/qmail-scanner/Manifest
@@ -0,0 +1,2 @@
+DIST q-s-2.08st-20091012.patch.gz 103757 SHA256 609992f877d8784f74a3006db963c850f1bac6b112c530d4f5e3a50fbbeb37af SHA512 6f9e7567e16dcc1c16f34aa9a64e60776b35bd2a1a38d0f490cbbc56ece1f7894645bd8dd20eb08e054fac1bf17244e8666d085a48a5ba300b0c36cc4bb79fbe WHIRLPOOL ca301e2dc616912391f0ee448ae897c4c7f765b01aed34f300ebf858fdd3429182b88b6200020f877b7293365ff6e49fde5765833977c0c09e8dc388e7dab183
+DIST qmail-scanner-2.08.tgz 239667 SHA256 d5db0ac6fccc8febaffb9f66bc2b926323f52247036d3754e7e38ed5977d6ca4 SHA512 52f09cc70fdf4f53f358d80d6dfd52851f3cb81e10dae1f7132c6c5c01fd8fc1395f709e24f0f7031073c29c951bdd4b09863f65f53954198b2c3ec15d78fdd9 WHIRLPOOL 7f6d0e3554aabf9c8c8891401a5be9b3b2326a05ef6cafd789f5cb24562bab672b24b02a7a661209f4d87bd469ef0fb352e58f882466bc21c606a5e1b060aac3
diff --git a/mail-filter/qmail-scanner/qmail-scanner-2.08.ebuild b/mail-filter/qmail-scanner/qmail-scanner-2.08.ebuild
new file mode 100644
index 0000000..e6f38cf
--- /dev/null
+++ b/mail-filter/qmail-scanner/qmail-scanner-2.08.ebuild
@@ -0,0 +1,193 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=2
+
+inherit fixheadtails toolchain-funcs eutils user
+
+Q_S_DATE=20091012
+DESCRIPTION="E-Mail virus scanner for qmail"
+HOMEPAGE="http://qmail-scanner.sourceforge.net/
+ http://toribio.apollinare.org/qmail-scanner/"
+SRC_URI="mirror://sourceforge/${PN}/${PV}/${P}.tgz
+ http://toribio.apollinare.org/qmail-scanner/download/q-s-${PV}st-${Q_S_DATE}.patch.gz"
+
+IUSE="clamav spamassassin"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+RESTRICT="userpriv"
+
+RDEPEND="dev-lang/perl
+ virtual/perl-Time-HiRes
+ net-mail/tnef
+ virtual/perl-DB_File
+ mail-filter/maildrop
+ virtual/qmail
+ app-arch/unzip
+ virtual/daemontools
+ clamav? ( app-antivirus/clamav )
+ spamassassin? ( mail-filter/spamassassin )"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ enewgroup qscand 210
+ enewuser qscand 210 -1 /var/spool/qscan qscand
+ use clamav && usermod -a -G qscand,nofiles clamav
+}
+
+pkg_preinst() {
+ local oldname="/var/qmail/bin/qmail-scanner-queue.pl"
+ if [ -f ${oldname} ]; then
+ newname=${oldname}.`date +%Y%m%d%H%M%S`
+ elog "Backing up old qmail-scanner as $newname in case of modifications."
+ cp ${oldname} ${newname}
+ chmod 600 ${newname}
+ fi
+}
+
+src_prepare() {
+ epatch "${DISTDIR}"/q-s-${PV}st-${Q_S_DATE}.patch.gz
+ epatch "${FILESDIR}"/${PN}-2.08-disable-suid-check.patch #364123
+ ht_fix_file autoupdaters/* configure
+ sed -i \
+ -e "s:/var/spool/qscand:/var/spool/qscan:g" \
+ README-st-patch.html \
+ README-st-patch.txt || die "Fixing doc with sed failed"
+
+ EXTRA_VIRII="bagle,beagle,mydoom,sco,maldal,mimail,novarg,shimg,bugler,cissi,cissy,dloade,netsky,qizy"
+ elog "Adding items to the SILENT_VIRUSES list (${EXTRA_VIRII})"
+ sed -i \
+ -e "/^SILENT_VIRUSES/s/\"$/,${EXTRA_VIRII}\"/g" \
+ -e '/DD/s/1\\.0/ 1\\.0/' \
+ configure
+}
+
+src_configure() {
+ local myconf
+
+ addpredict /var/log/kav/kavscan.log
+ addpredict /opt/bdc/plugins.htm
+
+ use spamassassin && myconf="--virus-to-delete yes --sa-quarantine 2.1 --sa-delete 4.2 --sa-reject no --sa-subject SPAM: --sa-delta 0.5 --sa-alt yes"
+
+ PATH=${PATH}:/opt/f-prot:/opt/vlnx ./configure \
+ --domain localhost \
+ --batch \
+ --log-details yes \
+ --skip-setuid-test \
+ ${myconf} \
+ || die "./configure failed!"
+
+ # build for qmail-scanner-queue wrapper, so we don't need suidperl
+ cd contrib
+ $(tc-getCC) ${CFLAGS} -o qmail-scanner-queue qmail-scanner-queue.c || die
+}
+
+src_install () {
+ # Create Directory Structure
+ diropts -m 755 -o qscand -g qscand
+ dodir /var/spool/qscan
+ keepdir /var/spool/qscan
+ diropts -m 750 -o qscand -g qscand
+ dodir /var/spool/qscan/quarantine
+ for i in quarantine/{viruses,policy,spam} working archives; do
+ for j in tmp new cur; do
+ dodir /var/spool/qscan/${i}/${j}
+ keepdir /var/spool/qscan/${i}/${j}
+ done
+ done
+ dodir /var/spool/qscan/tmp
+ keepdir /var/spool/qscan/tmp
+
+ # Install standard quarantine events file
+ insinto /var/spool/qscan
+ insopts -m 644 -o qscand -g qscand
+ doins quarantine-events.txt
+
+ # create quarantine.log and viruses.log
+ touch quarantine.log
+ insinto /var/spool/qscan
+ insopts -m 644 -o qscand -g qscand
+ doins quarantine.log
+ dosym quarantine.log ${DESTDIR}/var/spool/qscan/viruses.log
+
+ # Install qmail-scanner wrapper
+ insinto /var/qmail/bin
+ insopts -m 4755 -o qscand -g qscand
+ doins contrib/qmail-scanner-queue
+
+ # Install qmail-scanner script
+ insinto /var/qmail/bin
+ insopts -m 0755 -o qscand -g qscand
+ doins qmail-scanner-queue.pl
+
+ insinto /etc/logrotate.d/
+ insopts -m 644 -o root -g root
+ newins "${FILESDIR}"/${P}.logrotate qmail-scanner
+
+ exeinto /etc/cron.daily/
+ newexe "${FILESDIR}"/qmailscanner.cronjob qmail-scanner
+
+ # Install documentation
+ dodoc README CHANGES
+ dohtml README.html FAQ.php TODO.php configure-options.php manual-install.php perlscanner.php
+
+ docinto contrib
+ cd "${S}"/contrib
+ dodoc spamc-nice.eml \
+ test-trophie.pl \
+ logrotate.qmail-scanner \
+ sub-avpdaemon.pl \
+ logging_first_80_chars.eml \
+ spamc-nasty.eml \
+ avpdeamon.init \
+ test_installation.sh \
+ test-sophie.pl \
+ reformime-test.eml \
+ sub-sender-cache.pl \
+ rbl_scanner.txt \
+ test-clamd.pl \
+ qs2mrtg.pl \
+ mrtg-qmail-scanner.cfg \
+ check_AV_daemons \
+ patch_for_nod32_single_user.eml \
+ qmail-delay \
+ qs-scanner-report.sh \
+ qs_config.sh \
+ qscan-spam-to-users.pl \
+ test-avgd.pl \
+ test_password.zip \
+ vpopmail-issues.eml
+}
+
+pkg_postinst () {
+ einfo "Fixing ownerships"
+ chown -R qscand:qscand /var/spool/qscan
+ touch /var/qmail/bin/qmail-scanner-queue.pl
+
+ # Setup perlscanner + Version Info
+ chmod -s "${ROOT}"/var/qmail/bin/qmail-scanner-queue.pl
+ "${ROOT}"/var/qmail/bin/qmail-scanner-queue -z
+ "${ROOT}"/var/qmail/bin/qmail-scanner-queue -g
+
+ elog "To activate qmail-scanner, please edit your"
+ elog "/var/qmail/control/conf-common file and set:"
+ elog "export QMAILQUEUE=/var/qmail/bin/qmail-scanner-queue"
+ elog "Or place it in your tcprules file."
+ ewarn "Please note that it was a call to qmail-scanner-queue.pl before,"
+ ewarn "but this is now changed to use a wrapper to improve security!"
+ ewarn "Once you have changed to the wrapper, you can remove the setuid "
+ ewarn "bit on qmail-scanner-queue.pl"
+
+ ewarn "If this is an upgrade from <=2.0.1 the home directory of the qscand"
+ ewarn "user is changed. Please update it manually to /var/spool/qscan"
+ ewarn "or remove the user and emerge again this package"
+
+ if use clamav; then
+ ewarn "To allow clamav integration comment-out in /etc/clamd.conf:"
+ ewarn "AllowSupplementaryGroups putting yes."
+ ewarn "After that, restart clamd with"
+ ewarn "/etc/init.d/clamd restart"
+ fi
+}