diff options
author | Markus Ullmann <jokey@gentoo.org> | 2008-03-20 15:34:15 +0000 |
---|---|---|
committer | Markus Ullmann <jokey@gentoo.org> | 2008-03-20 15:34:15 +0000 |
commit | c973e9fa1b102492542f0b0b62ce6105cd3f58b9 (patch) | |
tree | aee94eda7e823ee5f6bab98bd9c2ceabc6a0a370 /mail-filter | |
parent | Initial import as dep for mail-filter/MailScanner (diff) | |
download | gentoo-2-c973e9fa1b102492542f0b0b62ce6105cd3f58b9.tar.gz gentoo-2-c973e9fa1b102492542f0b0b62ce6105cd3f58b9.tar.bz2 gentoo-2-c973e9fa1b102492542f0b0b62ce6105cd3f58b9.zip |
Initial import for bug #36060
(Portage version: 2.1.4.4)
Diffstat (limited to 'mail-filter')
-rw-r--r-- | mail-filter/MailScanner/ChangeLog | 47 | ||||
-rw-r--r-- | mail-filter/MailScanner/MailScanner-4.67.6.1.ebuild | 298 | ||||
-rw-r--r-- | mail-filter/MailScanner/Manifest | 6 | ||||
-rw-r--r-- | mail-filter/MailScanner/files/confd.mailscanner | 4 | ||||
-rw-r--r-- | mail-filter/MailScanner/files/initd.mailscanner | 44 | ||||
-rw-r--r-- | mail-filter/MailScanner/metadata.xml | 9 |
6 files changed, 408 insertions, 0 deletions
diff --git a/mail-filter/MailScanner/ChangeLog b/mail-filter/MailScanner/ChangeLog new file mode 100644 index 000000000000..f6f7e073c9d8 --- /dev/null +++ b/mail-filter/MailScanner/ChangeLog @@ -0,0 +1,47 @@ +# ChangeLog for mail-filter/MailScanner +# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/mail-filter/MailScanner/ChangeLog,v 1.1 2008/03/20 15:34:14 jokey Exp $ + +*MailScanner-4.67.6.1 (20 Mar 2008) + + 20 Mar 2008; Markus Ullmann <jokey@gentoo.org> +files/confd.mailscanner, + +files/initd.mailscanner, +metadata.xml, +MailScanner-4.67.6.1.ebuild: + Initial import for bug #36060 + + 31 Jan 2008; Markus Ullmann <jokey@gentoo.org> MailScanner-4.66.5.3: + Add docs link + + 31 Jan 2008; Markus Ullmann <jokey@gentoo.org> -confd.mailscanner-mta, + initd.mailscanner, -initd.mailscanner-mta, MailScanner-4.66.5.3: + Mailscanner-mta is no longer needed + + 27 Jan 2008; Markus Ullmann <jokey@gentoo.org> Manifest: + Version bump -- try me first before killing old version + + 06 Jan 2007; Jakub Moc <jakub@gentoo.org> MailScanner-4.57.6.1.ebuild: + Nuke bogus sendmail use flag and fix dependencies + + 12 Dec 2006; Markus Ullmann <jokey@gentoo.org> + -MailScanner-4.55.10.3.ebuild, +MailScanner-4.57.6.1.ebuild: + Version bump + + 09 Dec 2006; Jakub Moc <jakub@gentoo.org> MailScanner-4.55.10.3.ebuild: + User proper perl virtuals in depend, instead of perl-core packages + + 19 Oct 2006; Markus Ullmann <jokey@gentoo.org> + -MailScanner-4.54.6.1.ebuild: + Dropping old version + + 10 Oct 2006; David Shakaryan <d@ompty.org> MailScanner-4.55.10.3.ebuild: + Major cleanup. + + 05 Oct 2006; Chan Min Wai (dcmwai) <dcmwai@gmail.com> + +MailScanner-4.55.10.3.ebuild: + Version Pumb 4.55.10.3 + + 02 Jul 2006; Markus Ullmann <jokey@gentoo.org> ChangeLog: + Minor QA fix + + 02 Jul 2006; Markus Ullmann <jokey@gentoo.org> ChangeLog: + Initial import -- thanks to various people in bug #36060 + diff --git a/mail-filter/MailScanner/MailScanner-4.67.6.1.ebuild b/mail-filter/MailScanner/MailScanner-4.67.6.1.ebuild new file mode 100644 index 000000000000..e419fe288a39 --- /dev/null +++ b/mail-filter/MailScanner/MailScanner-4.67.6.1.ebuild @@ -0,0 +1,298 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/mail-filter/MailScanner/MailScanner-4.67.6.1.ebuild,v 1.1 2008/03/20 15:34:14 jokey Exp $ + +inherit eutils versionator + +MY_PV=$(get_version_component_range 1-3 ) +MY_PVR=$(replace_version_separator 3 '-' ) + +DESCRIPTION="Free Anti-Virus and Anti-Spam Filter" +HOMEPAGE="http://www.mailscanner.info/" +SRC_URI="http://www.mailscanner.info/files/4/tar/${PN}-install-${MY_PVR}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86" +IUSE="bitdefender clamav doc exim f-prot postfix spamassassin" + +DEPEND="dev-lang/perl" +RDEPEND="${DEPEND} + dev-perl/Archive-Zip + dev-perl/Compress-Zlib + dev-perl/Convert-BinHex + dev-perl/Convert-TNEF + dev-perl/DBD-SQLite + dev-perl/DBI + >=dev-perl/HTML-Parser-3.45 + dev-perl/HTML-Tagset + dev-perl/IO-stringy + >=dev-perl/MIME-tools-5.417 + dev-perl/MailTools + dev-perl/Net-CIDR + dev-perl/Net-DNS + dev-perl/TimeDate + dev-perl/Sys-Hostname-Long + dev-perl/Filesys-Df + >=net-mail/tnef-1.4.3 + virtual/perl-File-Spec + virtual/perl-File-Temp + virtual/perl-Getopt-Long + >=virtual/perl-Sys-Syslog-0.18 + >=virtual/perl-MIME-Base64-3.05 + virtual/cron + postfix? ( mail-mta/postfix ) + exim? ( !postfix? ( mail-mta/exim ) ) + !postfix? ( !exim? ( mail-mta/sendmail ) ) + bitdefender? ( app-antivirus/bitdefender-console ) + clamav? ( >=app-antivirus/clamav-0.88.4 ) + f-prot? ( app-antivirus/f-prot ) + spamassassin? ( >=mail-filter/spamassassin-3.1.5 )" + +S="${WORKDIR}/${PN}-${MY_PVR}" +BASE="/usr" + +src_unpack() { + unpack ${A} + unpack ./${PN}-install-${MY_PV}/perl-tar/${PN}-${MY_PVR}.tar.gz + + # setup MTA + if use postfix ; then + RUNASUSER='postfix' + RUNASGROUP='postfix' + INQUEUE='/var/spool/postfix.in/deferred' + OUTQUEUE='/var/spool/postfix/incoming' + MTA='postfix' + SENDMAIL='/usr/lib/sendmail' + SENDMAIL2='/usr/lib/sendmail' + elif use exim ; then + RUNASUSER='mail' + RUNASGROUP='mail' + INQUEUE='/var/spool/exim.in/input' + OUTQUEUE='/var/spool/exim/input' + MTA='exim' + SENDMAIL='/usr/sbin/exim -oMr MailScanner' + SENDMAIL2='/usr/sbin/exim -C /etc/exim/exim_out.conf -oMr MailScanner' + else + # use sendmail as default, but we should add more as needed + # RUNASUSER='mail' + # RUNASGROUP='mail' + INQUEUE='/var/spool/mqueue.in' + OUTQUEUE='/var/spool/mqueue' + MTA='sendmail' + SENDMAIL='/usr/lib/sendmail' + SENDMAIL2='/usr/lib/sendmail' + fi + + # setup virus scanner(s) + VIRUS_SCANNERS="" + use bitdefender && VIRUS_SCANNERS="bitdefender ${VIRUS_SCANNERS}" + use clamav && VIRUS_SCANNERS="clamav ${VIRUS_SCANNERS}" + use f-prot && VIRUS_SCANNERS="f-prot ${VIRUS_SCANNERS}" + + if [ "$VIRUS_SCANNERS" == "" ]; then + VIRUS_SCANNERS="none" + VIRUS_SCANNING="no" + else + VIRUS_SCANNING="yes" + fi + + sed -i \ + -e "s/^\(Virus Scanning[ \t]*=\).*/\1 ${VIRUS_SCANNING}/" \ + -e "s/^\(Virus Scanners[ \t]*=\).*/\1 ${VIRUS_SCANNERS}/" \ + "${S}/etc/MailScanner.conf" + + # setup spamassassin + if use spamassassin ; then + sed -i \ + -e "s/^\(Use SpamAssassin[ \t]*=\).*$/\1 yes/" \ + "${S}/etc/MailScanner.conf" + else + sed -i \ + -e "s/^\(Use SpamAssassin[ \t]*=\).*$/\1 no/" \ + "${S}/etc/MailScanner.conf" + fi + + # update bin files + sed -i \ + -e "s#msbindir=/opt/MailScanner/bin#msbindir=/usr/sbin#g" \ + -e "s#config=/opt/MailScanner/etc/MailScanner.conf#config=/etc/MailScanner/MailScanner.conf#g" \ + "${S}/bin/check_mailscanner" + sed -i \ + -e "s#/opt/MailScanner/etc#/etc/MailScanner#g" \ + "${S}/bin/update_virus_scanners" + sed -i \ + -e "s#/opt/MailScanner/etc#/etc/MailScanner#g" \ + -e "s#/opt/MailScanner/lib#/usr/lib/MailScanner#g" \ + "${S}/bin/MailScanner" + + # update cron files + sed -i \ + -e "s#/opt/MailScanner/bin/check_mailscanner#/usr/sbin/check_MailScanner#g" \ + "${S}/bin/cron/check_MailScanner.cron" + for cronfile in update_virus_scanners.cron update_{,bad_}phishing_sites.cron; do + sed -i \ + -e "s#/etc/sysconfig/MailScanner#/etc/conf.d/mailscanner#g" \ + -e "s#/opt/MailScanner/bin#/usr/sbin#g" \ + "${S}/bin/cron/${cronfile}" + done + + # Determine some things that may need to be changed in conf file + # (need to arrive at sensible replacement for yoursite) + YOURSITE=`dnsdomainname | sed -e "s/\./-/g"` + BASEBIN="${BASE}/sbin" + + # ClamAV requires some specific changes to MailScanner.conf + # when mailscanner is running as root (i.e. sendmail) + if use clamav ; then + if [ "$MTA" == "sendmail" ] ; then + WORKGRP="clamav" + WORKPERM="0640" + else + WORKGRP="" + WORKPERM="0600" + fi + else + WORKGRP="" + WORKPERM="0600" + fi + + # update conf files + sed -i \ + -e "s#/opt/MailScanner/etc#/etc/MailScanner#g" \ + -e "s#/opt/MailScanner/bin#$BASEBIN#g" \ + -e "s#/opt/MailScanner/lib#/usr/lib/MailScanner#g" \ + -e "s#^\(Run As User[ \t]*=\).*#\1 $RUNASUSER#" \ + -e "s#^\(Run As Group[ \t]*=\).*#\1 $RUNASGROUP#" \ + -e "s#^\(Incoming Queue Dir[ \t]*=\).*#\1 $INQUEUE#" \ + -e "s#^\(Outgoing Queue Dir[ \t]*=\).*#\1 $OUTQUEUE#" \ + -e "s#^\(MTA[ \t]*=\).*#\1 $MTA#" \ + -e "s/^#\(TNEF.*internal\)$/\1/" \ + -e "s/^\(TNEF.*0000\)$/#\1/" \ + -e "s#^\(PID file[ \t]=\).*#\1 /var/run/mailscanner.pid#" \ + -e "s#^\(%org-name%\)[ \t]*=.*#\1 = ${YOURSITE}#" \ + -e "s#^\(Sendmail[ \t]*=\).*#\1 ${SENDMAIL}#" \ + -e "s#^\(Sendmail2[ \t]*=\).*#\1 ${SENDMAIL2}#" \ + -e "s#^\(Incoming Work Group[ \t]*=\).*#\1 ${WORKGRP}#" \ + -e "s#^\(Incoming Work Permissions[ \t]*=\).*#\1 ${WORKPERM}#" \ + "${S}/etc/MailScanner.conf" + + # net-mail/clamav net-mail/f-prot package compatibility + sed -i \ + -e "s#/opt/MailScanner/lib#/usr/lib/MailScanner#" \ + -e 's#^\(clamav\t.*/usr\)/local$#\1#' \ + -e 's#^\(f-prot.*\)/usr/local/f-prot$#\1/opt/f-prot#' \ + "${S}/etc/virus.scanners.conf" + + # update lib files + sed -i \ + -e "s#/opt/MailScanner/bin#$BASEBIN#g" \ + -e "s#/opt/MailScanner/etc#/etc/MailScanner#g" \ + -e "s#/opt/MailScanner/lib#/usr/lib/MailScanner#g" \ + "${S}/lib/MailScanner/ConfigDefs.pl" + sed -i \ + -e "s#/etc/MailScanner#/etc/MailScanner#g" \ + "${S}/lib/MailScanner/CustomConfig.pm" + + # finally, change MailScanner.conf into MailScanner.conf.sample + cp "${S}/etc/MailScanner.conf" "${S}/etc/MailScanner.conf.${MY_PV}" + mv "${S}/etc/MailScanner.conf" "${S}/etc/MailScanner.conf.sample" + +} + +src_install() { + exeinto ${BASE}/sbin + doexe bin/MailScanner + newexe bin/check_mailscanner check_MailScanner + doexe bin/d2mbox bin/df2mbox + doexe bin/update_virus_scanners + doexe bin/upgrade_MailScanner_conf + doexe bin/update_bad_phishing_sites bin/update_phishing_sites + newexe bin/Sophos.install.linux Sophos.install + + insinto /etc/MailScanner + doins etc/*.conf + doins etc/mailscanner.conf.with.mcp + doins etc/MailScanner.conf.${MY_PV} + doins etc/MailScanner.conf.sample + + insinto /etc/MailScanner/rules + doins etc/rules/* + insinto /etc/MailScanner/mcp + doins etc/mcp/* + + insinto /etc/MailScanner + doins -r etc/reports + + insinto ${BASE}/$(get_libdir)/MailScanner + doins lib/*.prf + + exeinto ${BASE}/$(get_libdir)/MailScanner + doexe lib/*-wrapper + doexe lib/*-autoupdate + doexe lib/*-autoupdate.old + doexe lib/*.pm + + exeinto ${BASE}/$(get_libdir)/MailScanner/MailScanner + doexe lib/MailScanner/*.pm + doexe lib/MailScanner/*.pl + + insinto ${BASE}/$(get_libdir)/MailScanner/MailScanner + doins lib/MailScanner/*.txt + + exeinto ${BASE}/$(get_libdir)/MailScanner/MailScanner/CustomFunctions + doexe lib/MailScanner/CustomFunctions/MyExample.pm + + newinitd "${FILESDIR}"/initd.mailscanner MailScanner + newconfd "${FILESDIR}"/confd.mailscanner MailScanner + + #Set up cron jobs + exeinto /etc/cron.hourly + newexe "${S}/bin/cron/check_MailScanner.cron" check_MailScanner + for cronfile in update_{virus_scanners,{bad_,}phishing_sites}; do + newexe "${S}/bin/cron/${cronfile}.cron" ${cronfile} + done + + exeinto /etc/cron.daily + newexe "${S}/bin/cron/clean.quarantine.cron" clean.quarantine + + dodoc README + insinto /usr/share/doc/${PF} + doins MailScanner.conf.index.html + + keepdir /var/spool/MailScanner/incoming + keepdir /var/spool/MailScanner/quarantine + keepdir /var/spool/MailScanner/spamassassin + keepdir /var/spool/MailScanner/archive + keepdir ${BASE}/var + + if use postfix ; then + chown -R postfix:postfix "${D}/var/spool/MailScanner/" + elif use exim ; then + chown -R mail:mail "${D}/var/spool/MailScanner/" + else + keepdir /var/spool/mqueue.in + fi +} + +pkg_postinst() { + if use postfix; then + elog "Note that postfix 2.4 now supports HOLD of messages" + elog "and reinjection without second postfix instance" + elog "Inbound path is now ${ROOT}var/spool/postfix/hold" + elog + elog "See http://mailscanner.info/postfix.html for details" + elog "or check (english) gentoo-wiki.com page which has been updated" + fi + + if [ -f "/etc/MailScanner/MailScanner.conf" ]; then + einfo "Upgrading the MailScanner.conf file" + cp /etc/MailScanner/MailScanner.conf /etc/MailScanner/MailScanner.conf.pre_upgrade.${MY_PV} + /usr/sbin/upgrade_MailScanner_conf \ + /etc/MailScanner/MailScanner.conf.pre_upgrade.${MY_PV} \ + /etc/MailScanner/MailScanner.conf.${MY_PV} \ + > /etc/MailScanner/MailScanner.conf 2> /dev/null + else + cp /etc/MailScanner/MailScanner.conf.sample /etc/MailScanner/MailScanner.conf + fi +} diff --git a/mail-filter/MailScanner/Manifest b/mail-filter/MailScanner/Manifest new file mode 100644 index 000000000000..1d4556733b60 --- /dev/null +++ b/mail-filter/MailScanner/Manifest @@ -0,0 +1,6 @@ +AUX confd.mailscanner 147 RMD160 2472095d115d136498f93a6dca3ce540e335222f SHA1 377447317cf1354b4e377912d18a459b12f7a8d6 SHA256 d0ef32a53c83a2c2938d970f30b3765676fe4669b2ec98407c39ca070cd24bbb +AUX initd.mailscanner 756 RMD160 f75589025bbe9e7a3bc2f10a4a5eadab11f8d36a SHA1 cb4c505b3c9f4f993b656b6c96c6992ae00be5e0 SHA256 ba63aec0dae9c820b533d467c3325ada70a4b73761bed2207d10814f82f31b65 +DIST MailScanner-install-4.67.6-1.tar.gz 8128173 RMD160 6a38ba6dd02cd90ebb887c6146485cbc771a3643 SHA1 51d08b364566bc902a1d3d91386c479b5f6e68ef SHA256 e0c803a6c3b243aa19b7e6bbac009617c02a308bc394eb64615e2148ac5d72e1 +EBUILD MailScanner-4.67.6.1.ebuild 8934 RMD160 313fdf3e2811156751d1b7f7c1f9dabad0bc7faf SHA1 d293eaa876474823c057596adaa90c44bfedf075 SHA256 92b087522f46230fe85e0047b005e3dbb390149d9a8040aa0a4df51d8d65c107 +MISC ChangeLog 1634 RMD160 fd9e1e05e16de5157b21c617408ac2baaf5ed07d SHA1 c6b980a5db8f09523bb0ce75fa259a001c2ec707 SHA256 1d46a569bcab3b42f44ab94417c72ba7ab47529287a8a59aa849d022f25e203a +MISC metadata.xml 251 RMD160 f98b79c78c9a648314ee514bc8521a31a8018b3d SHA1 f58b9ae8d4a67e568288a4cf7d0037f228ba3fc4 SHA256 2ecb6b4fcce7435885895d82f44bd288b8ab797c7d6476eaac494d44a56f8886 diff --git a/mail-filter/MailScanner/files/confd.mailscanner b/mail-filter/MailScanner/files/confd.mailscanner new file mode 100644 index 000000000000..144d0d478fc8 --- /dev/null +++ b/mail-filter/MailScanner/files/confd.mailscanner @@ -0,0 +1,4 @@ +# + +UPDATEMAXDELAY=600 # Maximum delay before running cron job to avoid server peaks +RESTART_DELAY=10 # time to wait before restarting mailscanner diff --git a/mail-filter/MailScanner/files/initd.mailscanner b/mail-filter/MailScanner/files/initd.mailscanner new file mode 100644 index 000000000000..3883ee99d549 --- /dev/null +++ b/mail-filter/MailScanner/files/initd.mailscanner @@ -0,0 +1,44 @@ +#!/sbin/runscript + +opts="${opts} reload" + +depend() { + need net mta + use logger dns +} + +start() { + ebegin "Starting MailScanner" + /usr/sbin/check_MailScanner >/dev/null + RETVAL=$? + [ ${RETVAL} -eq 0 ] && touch /var/lock/subsys/MailScanner + [ ${RETVAL} -eq 0 ] && rm -f /var/lock/subsys/MailScanner.off + eend ${RETVAL} +} + +stop() { + ebegin "Stopping MailScanner" + killall -15 MailScanner + RETVAL=$? + [ ${RETVAL} -eq 0 ] && rm -f /var/lock/subsys/MailScanner + [ ${RETVAL} -eq 0 ] && touch /var/lock/subsys/MailScanner.off + eend ${RETVAL} +} + +reload() { + ebegin "Reloading MailScanner workers:" + pid=`pidof -x MailScanner` + if [ -n "$pid" ] ; + then + /bin/kill -HUP $pid + eend $? + else + eend 1 + fi +} + +restart() { + svc_stop + sleep ${RESTART_DELAY} + svc_start +} diff --git a/mail-filter/MailScanner/metadata.xml b/mail-filter/MailScanner/metadata.xml new file mode 100644 index 000000000000..88bdb4223fff --- /dev/null +++ b/mail-filter/MailScanner/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>no-herd</herd> +<maintainer> + <email>jokey@gentoo.org</email> + <name>Markus Ullmann</name> +</maintainer> +</pkgmetadata> |