diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /mail-filter/assp | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'mail-filter/assp')
-rw-r--r-- | mail-filter/assp/Manifest | 5 | ||||
-rw-r--r-- | mail-filter/assp/assp-1.8.5.9.ebuild | 177 | ||||
-rw-r--r-- | mail-filter/assp/assp-1.9.4.7.ebuild | 178 | ||||
-rw-r--r-- | mail-filter/assp/assp-1.9.4.8.ebuild | 178 | ||||
-rw-r--r-- | mail-filter/assp/assp-1.9.4.9.ebuild | 178 | ||||
-rw-r--r-- | mail-filter/assp/assp-1.9.8.13030.ebuild | 178 | ||||
-rw-r--r-- | mail-filter/assp/files/assp-1.2.6.patch | 364 | ||||
-rw-r--r-- | mail-filter/assp/files/asspd.init | 22 | ||||
-rw-r--r-- | mail-filter/assp/files/base.patch | 15 | ||||
-rw-r--r-- | mail-filter/assp/metadata.xml | 25 |
10 files changed, 1320 insertions, 0 deletions
diff --git a/mail-filter/assp/Manifest b/mail-filter/assp/Manifest new file mode 100644 index 000000000000..ee3607d5bc52 --- /dev/null +++ b/mail-filter/assp/Manifest @@ -0,0 +1,5 @@ +DIST ASSP_1.8.5.9-Install.zip 750552 SHA256 f468d8cd0003280ff089efd438c0516f928f772fd9cc0e6d522866a21492ccb1 +DIST ASSP_1.9.4.7-Install.zip 1461151 SHA256 47180d185624a96d4b218fa48d30997cb048cf5a01ea43140b203ce9cab6edb9 SHA512 02083320630831fee048e13d6101dd844aceadddf36a5f2b5bff6f203d67be2e456fb992a71e903a9dace48992962a6d26f90998025b8666e24f3f4aaec76cfc WHIRLPOOL 07bd6c83f9a70c7cadbc5834979c49221fe053e5ab42cb747d09aec402553c8b3ee1677a786276f536c242ff6622405d43dada55bbf8744cf647b6c13c8251f3 +DIST ASSP_1.9.4.8-Install.zip 1462121 SHA256 075716ac57795bccfbe5b858eaabf908de93391c3a7b36144a5c2bcb4f8e3a1e SHA512 4888bfb4e8577608ee638391c6c9f38901f70e60fa29829d0f5a56102f13ba08b8363d9041bfb64d9d238526bc4051d5d97faddd6d819909d6dd4e6aa0a96225 WHIRLPOOL 1d71512d36b5e2e1ef0c05b6ade11c2285ad3498d6e2bf3c14f564ac8840a76b59492385d375369e16b049c9821d9f90627122eb7f113a6ee29dd7cf16b67aed +DIST ASSP_1.9.4.9-Install.zip 1461140 SHA256 5392340a6c331102dc8c254a668ae061fe340ea304a8e22e8d6766c172bc72ad SHA512 a049a8e36193aee12c7abc7bbfdc41a92a7a33f6f01f7e6cded406f1f84ddf3c514808ca1c4c6a25c3a441b3a2792b4451ca218021bb09dad508a56434c8656b WHIRLPOOL 4f0b140c8395b935a270ef08b5cc2aca86d04a047efb95ff3780b43aa18c3e1ea032c9e460495cd611cbbfb19dfe526b439cb6a0fe15a8d4d13feaebd0059a70 +DIST ASSP_1.98_13030_install.zip 874117 SHA256 f3a500f5b00f53177ca71b7b8806c4b4dbf6642d0b068d08f828395e402ee7fe SHA512 46c067c9ffe98f860669166fca69346c974bc82a1c0a5046f607aae8344fe18d41f7a87c2f79bdfcaa24c6233a88a590031deab66c76d42fee78fec64dc2a2a1 WHIRLPOOL 6951a479f8b6873b9a27101071c9214607d9da8700924a305cc99bd79ff13bfc5bc32e8045c213d32f810f7aac7759b6f9f0d8fead656b03bbfa5c5436f2b085 diff --git a/mail-filter/assp/assp-1.8.5.9.ebuild b/mail-filter/assp/assp-1.8.5.9.ebuild new file mode 100644 index 000000000000..e5d996ca2288 --- /dev/null +++ b/mail-filter/assp/assp-1.8.5.9.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="Anti-Spam SMTP Proxy written in Perl" +HOMEPAGE="http://assp.sourceforge.net/" +MY_PN=ASSP_${PV}-Install +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip" +LICENSE="GPL-2" +SLOT="0" + +KEYWORDS="amd64 x86" + +IUSE="ipv6 ldap sasl spf srs ssl syslog" + +DEPEND="app-arch/unzip" + +RDEPEND="dev-lang/perl + dev-perl/Net-DNS + dev-perl/File-ReadBackwards + virtual/perl-IO-Compress + dev-perl/Email-MIME + dev-perl/Email-Send + dev-perl/Email-Valid + dev-perl/libwww-perl + dev-perl/mime-construct + dev-perl/Net-CIDR-Lite + virtual/perl-Digest-MD5 + virtual/perl-Time-HiRes + ipv6? ( dev-perl/IO-Socket-INET6 ) + sasl? ( dev-perl/Authen-SASL ) + spf? ( dev-perl/Mail-SPF ) + srs? ( dev-perl/Mail-SRS ) + ssl? ( dev-perl/IO-Socket-SSL ) + syslog? ( virtual/perl-Sys-Syslog ) + ldap? ( dev-perl/perl-ldap )" + +S=${WORKDIR}/${MY_PN}/ASSP + +pkg_setup() { + enewgroup assp + enewuser assp -1 -1 /dev/null assp +} + +src_unpack() { + unpack ${A} + cd "${S}" + + local FILES=" + assp.pl + rebuildspamdb.pl + stat.pl + " + # just being safe + for file in ${FILES}; do + edos2unix ${file} + done + + # portable changes via sed vs patch + sed -i -e 's|file:files/|file:/etc/assp/|' \ + -e 's|$base/images|/usr/share/assp/images|' \ + -e 's|logs/maillog.txt|/var/log/assp/maillog.txt|' \ + -e 's|PID File'\'',40,textinput,'\''pid'\''|PID File'\'',40,textinput,'\''asspd.pid'\''|' \ + -e 's|Daemon\*\*'\'',0,checkbox,0|Daemon\*\*'\'',0,checkbox,1|' \ + -e 's|UID\*\*'\'',20,textinput,'\'''\''|UID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|GID\*\*'\'',20,textinput,'\'''\''|GID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|popFileEditor'\('\\'\''pb/pbdb\.\([^\.]*\)\.db\\'\'',|popFileEditor(\\'\''/var/lib/assp/pb/pbdb.\1.db\\'\'',|g' \ + -e 's|$base/assp.cfg|/etc/assp/assp.cfg|g' \ + -e 's|$base/$pidfile|/var/run/assp/asspd.pid|' \ + -e 's|mkdir "$base/$logdir",0700 if $logdir;||' \ + -e 's|mkdir "$base/$logdir",0700;||' \ + -e 's|$base/$logfile|$logfile|' \ + -e 's|$base/$logdir|$logdir|' \ + -e 's|"maillog.log"|"/var/log/assp/maillog.log"|' \ + -e 's|-d "$base/logs" or mkdir "$base/logs",0700;||' \ + -e 's|-d "$base/notes" or mkdir "$base/notes",0700;||' \ + -e 's|-d "$base/docs" or mkdir "$base/docs",0777;||' \ + -e 's|$base/$archivelogfile|$archivelogfile|' \ + -e 's|"$base/$file",$sub,"$this|"/etc/assp/$file",$sub,"$this|' \ + -e 's|"$base/$file",'\'''\'',"$this|"/etc/assp/$file",'\'''\'',"$this|' \ + -e 's|my $fil=$1; $fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|my $fil=$1;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|$fil="/etc/assp/$fil" if $fil!~/^\\/etc\\/assp\\/\|\\/var\\/lib\\/assp\\/\/i;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^((\[a-z\]:)?\[\\/\\\\\]\|\\Q$base\\E)/;||' \ + -e 's|if ($fil !~ /^\\Q$base\\E/i) {|if ($fil !~ /^\\/usr\\/share\\/assp\\//i) {|' \ + -e 's|$fil = "$base/$fil";|$fil = "/usr/share/assp/$fil";|' \ + -e 's|Q$base\\E|Q\\/etc\\/assp\\/\\E|' \ + -e 's|$fil="$base/$fil"|$fil="/etc/assp/$fil"|' \ + -e 's|$base/$bf|/etc/assp/$bf|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + assp.pl || die + + # sed rebuildspamdb.pl + sed -i -e 's|assp.cfg|/etc/assp/assp.cfg|' \ + -e 's|} && "$Config{base}/$Config{logfile}" \|\| '\''maillog.txt'\'';|};|' \ + -e 's|tmaxtick('\''rebuild'\'');|tmaxtick('\''/var/lib/assp/rebuild'\'');|' \ + -e 's|goodhosts|/var/lib/assp/goodhosts|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + -e 's|$base/$DropList|$DropList|' \ + -e 's|&fixPath($base) . "/|"|' \ + -e 's|= "/var/lib/assp/rebuildrun.txt";|= "/var/lib/assp/rebuildrun.txt";\n $RebuildLog = "/var/lib/assp/rebuild.log";|' \ + -e 's|"$base//|"/|g' \ + rebuildspamdb.pl || die + + # remove windows stuff + rm "${S}/addservice.pl" || die "Could not remove ${S}/addservice.pl" + rm -f "${S}/Win32-quickstart-guide.txt" || die "Could not remove ${S}/Win32-quickstart-guide.txt" +} + +src_install() { + # Configuration directory + dodir /etc/assp/notes + + insinto /etc/assp + # Installs files that are used by assp for black/gray lists, + # and domain country lookup. To be changed by admin as needed. + doins files/*.txt || die + + fowners assp:assp /etc/assp -R + fperms 770 /etc/assp /etc/assp/notes + + # Setup directories for mail to be stored for filter + keepdir /var/lib/assp/spam /var/lib/assp/notspam + keepdir /var/lib/assp/errors/spam /var/lib/assp/errors/notspam + + # Logs directory + keepdir /var/log/assp + fowners assp:assp -R /var/log/assp + fperms 770 /var/log/assp + + # Install the app + exeinto /usr/share/assp + doexe *.pl *.sh || die + insinto /usr/share/assp + doins -r images/ || die + + # Lock down the files/data + fowners assp:assp -R /usr/share/assp + fperms 770 /usr/share/assp + + # Data storage + fowners assp:assp -R /var/lib/assp + fperms 770 /var/lib/assp + + # PID directory + dodir /var/run/assp + keepdir /var/run/assp + fowners assp:assp -R /var/run/assp + fperms 770 /var/run/assp + + # Install the init.d script to listen + newinitd "${FILESDIR}/asspd.init" asspd + + dohtml docs/*.htm || die "Failed to install html docs" +} + +pkg_postinst() { + elog + elog "To configure ASSP, start /etc/init.d/asspd then point" + elog "your browser to http://localhost:55555" + elog "Username: admin Password: nospam4me (CHANGE ASAP!)" + elog + elog "File permissions have been set to use assp:assp" + elog "with mode 770 on directories. When you configure" + elog "ASSP, make sure and use the user assp." + elog + elog "Don't change any path related options." + elog + elog "See the on-line docs for a complete tutorial." + elog "http://assp.sourceforge.net/docs.html" + elog + elog "If upgrading, please update your old config to set both" + elog "redre.txt and nodelay.txt path of /etc/assp. There are" + elog "also many new options that you should review." + elog +} diff --git a/mail-filter/assp/assp-1.9.4.7.ebuild b/mail-filter/assp/assp-1.9.4.7.ebuild new file mode 100644 index 000000000000..dd35a454c325 --- /dev/null +++ b/mail-filter/assp/assp-1.9.4.7.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="Anti-Spam SMTP Proxy written in Perl" +HOMEPAGE="http://assp.sourceforge.net/" +MY_PN=ASSP_${PV}-Install +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip" +LICENSE="GPL-2" +SLOT="0" + +# this is a pre-release, so no keywords for now +KEYWORDS="~amd64 ~x86" + +IUSE="ipv6 ldap sasl spf srs ssl syslog" + +DEPEND="app-arch/unzip" + +RDEPEND="dev-lang/perl + dev-perl/Net-DNS + dev-perl/File-ReadBackwards + virtual/perl-IO-Compress + dev-perl/Email-MIME + dev-perl/Email-Send + dev-perl/Email-Valid + dev-perl/libwww-perl + dev-perl/mime-construct + dev-perl/Net-CIDR-Lite + virtual/perl-Digest-MD5 + virtual/perl-Time-HiRes + ipv6? ( dev-perl/IO-Socket-INET6 ) + sasl? ( dev-perl/Authen-SASL ) + spf? ( dev-perl/Mail-SPF ) + srs? ( dev-perl/Mail-SRS ) + ssl? ( dev-perl/IO-Socket-SSL ) + syslog? ( virtual/perl-Sys-Syslog ) + ldap? ( dev-perl/perl-ldap )" + +S=${WORKDIR}/${MY_PN}/ASSP + +pkg_setup() { + enewgroup assp + enewuser assp -1 -1 /dev/null assp +} + +src_unpack() { + unpack ${A} + cd "${S}" + + local FILES=" + assp.pl + rebuildspamdb.pl + stat.pl + " + # just being safe + for file in ${FILES}; do + edos2unix ${file} + done + + # portable changes via sed vs patch + sed -i -e 's|file:files/|file:/etc/assp/|' \ + -e 's|$base/images|/usr/share/assp/images|' \ + -e 's|logs/maillog.txt|/var/log/assp/maillog.txt|' \ + -e 's|PID File'\'',40,textinput,'\''pid'\''|PID File'\'',40,textinput,'\''asspd.pid'\''|' \ + -e 's|Daemon\*\*'\'',0,checkbox,0|Daemon\*\*'\'',0,checkbox,1|' \ + -e 's|UID\*\*'\'',20,textinput,'\'''\''|UID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|GID\*\*'\'',20,textinput,'\'''\''|GID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|popFileEditor'\('\\'\''pb/pbdb\.\([^\.]*\)\.db\\'\'',|popFileEditor(\\'\''/var/lib/assp/pb/pbdb.\1.db\\'\'',|g' \ + -e 's|$base/assp.cfg|/etc/assp/assp.cfg|g' \ + -e 's|$base/$pidfile|/var/run/assp/asspd.pid|' \ + -e 's|mkdir "$base/$logdir",0700 if $logdir;||' \ + -e 's|mkdir "$base/$logdir",0700;||' \ + -e 's|$base/$logfile|$logfile|' \ + -e 's|$base/$logdir|$logdir|' \ + -e 's|"maillog.log"|"/var/log/assp/maillog.log"|' \ + -e 's|-d "$base/logs" or mkdir "$base/logs",0700;||' \ + -e 's|-d "$base/notes" or mkdir "$base/notes",0700;||' \ + -e 's|-d "$base/docs" or mkdir "$base/docs",0777;||' \ + -e 's|$base/$archivelogfile|$archivelogfile|' \ + -e 's|"$base/$file",$sub,"$this|"/etc/assp/$file",$sub,"$this|' \ + -e 's|"$base/$file",'\'''\'',"$this|"/etc/assp/$file",'\'''\'',"$this|' \ + -e 's|my $fil=$1; $fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|my $fil=$1;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|$fil="/etc/assp/$fil" if $fil!~/^\\/etc\\/assp\\/\|\\/var\\/lib\\/assp\\/\/i;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^((\[a-z\]:)?\[\\/\\\\\]\|\\Q$base\\E)/;||' \ + -e 's|if ($fil !~ /^\\Q$base\\E/i) {|if ($fil !~ /^\\/usr\\/share\\/assp\\//i) {|' \ + -e 's|$fil = "$base/$fil";|$fil = "/usr/share/assp/$fil";|' \ + -e 's|Q$base\\E|Q\\/etc\\/assp\\/\\E|' \ + -e 's|$fil="$base/$fil"|$fil="/etc/assp/$fil"|' \ + -e 's|$base/$bf|/etc/assp/$bf|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + assp.pl || die + + # sed rebuildspamdb.pl + sed -i -e 's|assp.cfg|/etc/assp/assp.cfg|' \ + -e 's|} && "$Config{base}/$Config{logfile}" \|\| '\''maillog.txt'\'';|};|' \ + -e 's|tmaxtick('\''rebuild'\'');|tmaxtick('\''/var/lib/assp/rebuild'\'');|' \ + -e 's|goodhosts|/var/lib/assp/goodhosts|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + -e 's|$base/$DropList|$DropList|' \ + -e 's|&fixPath($base) . "/|"|' \ + -e 's|= "/var/lib/assp/rebuildrun.txt";|= "/var/lib/assp/rebuildrun.txt";\n $RebuildLog = "/var/lib/assp/rebuild.log";|' \ + -e 's|"$base//|"/|g' \ + rebuildspamdb.pl || die + + # remove windows stuff + rm "${S}/addservice.pl" || die "Could not remove ${S}/addservice.pl" + rm -f "${S}/Win32-quickstart-guide.txt" || die "Could not remove ${S}/Win32-quickstart-guide.txt" +} + +src_install() { + # Configuration directory + dodir /etc/assp/notes + + insinto /etc/assp + # Installs files that are used by assp for black/gray lists, + # and domain country lookup. To be changed by admin as needed. + doins files/*.txt || die + + fowners assp:assp /etc/assp -R + fperms 770 /etc/assp /etc/assp/notes + + # Setup directories for mail to be stored for filter + keepdir /var/lib/assp/spam /var/lib/assp/notspam + keepdir /var/lib/assp/errors/spam /var/lib/assp/errors/notspam + + # Logs directory + keepdir /var/log/assp + fowners assp:assp -R /var/log/assp + fperms 770 /var/log/assp + + # Install the app + exeinto /usr/share/assp + doexe *.pl *.sh || die + insinto /usr/share/assp + doins -r images/ || die + + # Lock down the files/data + fowners assp:assp -R /usr/share/assp + fperms 770 /usr/share/assp + + # Data storage + fowners assp:assp -R /var/lib/assp + fperms 770 /var/lib/assp + + # PID directory + dodir /var/run/assp + keepdir /var/run/assp + fowners assp:assp -R /var/run/assp + fperms 770 /var/run/assp + + # Install the init.d script to listen + newinitd "${FILESDIR}/asspd.init" asspd + + dohtml docs/*.htm || die "Failed to install html docs" +} + +pkg_postinst() { + elog + elog "To configure ASSP, start /etc/init.d/asspd then point" + elog "your browser to http://localhost:55555" + elog "Username: admin Password: nospam4me (CHANGE ASAP!)" + elog + elog "File permissions have been set to use assp:assp" + elog "with mode 770 on directories. When you configure" + elog "ASSP, make sure and use the user assp." + elog + elog "Don't change any path related options." + elog + elog "See the on-line docs for a complete tutorial." + elog "http://assp.sourceforge.net/docs.html" + elog + elog "If upgrading, please update your old config to set both" + elog "redre.txt and nodelay.txt path of /etc/assp. There are" + elog "also many new options that you should review." + elog +} diff --git a/mail-filter/assp/assp-1.9.4.8.ebuild b/mail-filter/assp/assp-1.9.4.8.ebuild new file mode 100644 index 000000000000..dd35a454c325 --- /dev/null +++ b/mail-filter/assp/assp-1.9.4.8.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="Anti-Spam SMTP Proxy written in Perl" +HOMEPAGE="http://assp.sourceforge.net/" +MY_PN=ASSP_${PV}-Install +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip" +LICENSE="GPL-2" +SLOT="0" + +# this is a pre-release, so no keywords for now +KEYWORDS="~amd64 ~x86" + +IUSE="ipv6 ldap sasl spf srs ssl syslog" + +DEPEND="app-arch/unzip" + +RDEPEND="dev-lang/perl + dev-perl/Net-DNS + dev-perl/File-ReadBackwards + virtual/perl-IO-Compress + dev-perl/Email-MIME + dev-perl/Email-Send + dev-perl/Email-Valid + dev-perl/libwww-perl + dev-perl/mime-construct + dev-perl/Net-CIDR-Lite + virtual/perl-Digest-MD5 + virtual/perl-Time-HiRes + ipv6? ( dev-perl/IO-Socket-INET6 ) + sasl? ( dev-perl/Authen-SASL ) + spf? ( dev-perl/Mail-SPF ) + srs? ( dev-perl/Mail-SRS ) + ssl? ( dev-perl/IO-Socket-SSL ) + syslog? ( virtual/perl-Sys-Syslog ) + ldap? ( dev-perl/perl-ldap )" + +S=${WORKDIR}/${MY_PN}/ASSP + +pkg_setup() { + enewgroup assp + enewuser assp -1 -1 /dev/null assp +} + +src_unpack() { + unpack ${A} + cd "${S}" + + local FILES=" + assp.pl + rebuildspamdb.pl + stat.pl + " + # just being safe + for file in ${FILES}; do + edos2unix ${file} + done + + # portable changes via sed vs patch + sed -i -e 's|file:files/|file:/etc/assp/|' \ + -e 's|$base/images|/usr/share/assp/images|' \ + -e 's|logs/maillog.txt|/var/log/assp/maillog.txt|' \ + -e 's|PID File'\'',40,textinput,'\''pid'\''|PID File'\'',40,textinput,'\''asspd.pid'\''|' \ + -e 's|Daemon\*\*'\'',0,checkbox,0|Daemon\*\*'\'',0,checkbox,1|' \ + -e 's|UID\*\*'\'',20,textinput,'\'''\''|UID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|GID\*\*'\'',20,textinput,'\'''\''|GID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|popFileEditor'\('\\'\''pb/pbdb\.\([^\.]*\)\.db\\'\'',|popFileEditor(\\'\''/var/lib/assp/pb/pbdb.\1.db\\'\'',|g' \ + -e 's|$base/assp.cfg|/etc/assp/assp.cfg|g' \ + -e 's|$base/$pidfile|/var/run/assp/asspd.pid|' \ + -e 's|mkdir "$base/$logdir",0700 if $logdir;||' \ + -e 's|mkdir "$base/$logdir",0700;||' \ + -e 's|$base/$logfile|$logfile|' \ + -e 's|$base/$logdir|$logdir|' \ + -e 's|"maillog.log"|"/var/log/assp/maillog.log"|' \ + -e 's|-d "$base/logs" or mkdir "$base/logs",0700;||' \ + -e 's|-d "$base/notes" or mkdir "$base/notes",0700;||' \ + -e 's|-d "$base/docs" or mkdir "$base/docs",0777;||' \ + -e 's|$base/$archivelogfile|$archivelogfile|' \ + -e 's|"$base/$file",$sub,"$this|"/etc/assp/$file",$sub,"$this|' \ + -e 's|"$base/$file",'\'''\'',"$this|"/etc/assp/$file",'\'''\'',"$this|' \ + -e 's|my $fil=$1; $fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|my $fil=$1;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|$fil="/etc/assp/$fil" if $fil!~/^\\/etc\\/assp\\/\|\\/var\\/lib\\/assp\\/\/i;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^((\[a-z\]:)?\[\\/\\\\\]\|\\Q$base\\E)/;||' \ + -e 's|if ($fil !~ /^\\Q$base\\E/i) {|if ($fil !~ /^\\/usr\\/share\\/assp\\//i) {|' \ + -e 's|$fil = "$base/$fil";|$fil = "/usr/share/assp/$fil";|' \ + -e 's|Q$base\\E|Q\\/etc\\/assp\\/\\E|' \ + -e 's|$fil="$base/$fil"|$fil="/etc/assp/$fil"|' \ + -e 's|$base/$bf|/etc/assp/$bf|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + assp.pl || die + + # sed rebuildspamdb.pl + sed -i -e 's|assp.cfg|/etc/assp/assp.cfg|' \ + -e 's|} && "$Config{base}/$Config{logfile}" \|\| '\''maillog.txt'\'';|};|' \ + -e 's|tmaxtick('\''rebuild'\'');|tmaxtick('\''/var/lib/assp/rebuild'\'');|' \ + -e 's|goodhosts|/var/lib/assp/goodhosts|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + -e 's|$base/$DropList|$DropList|' \ + -e 's|&fixPath($base) . "/|"|' \ + -e 's|= "/var/lib/assp/rebuildrun.txt";|= "/var/lib/assp/rebuildrun.txt";\n $RebuildLog = "/var/lib/assp/rebuild.log";|' \ + -e 's|"$base//|"/|g' \ + rebuildspamdb.pl || die + + # remove windows stuff + rm "${S}/addservice.pl" || die "Could not remove ${S}/addservice.pl" + rm -f "${S}/Win32-quickstart-guide.txt" || die "Could not remove ${S}/Win32-quickstart-guide.txt" +} + +src_install() { + # Configuration directory + dodir /etc/assp/notes + + insinto /etc/assp + # Installs files that are used by assp for black/gray lists, + # and domain country lookup. To be changed by admin as needed. + doins files/*.txt || die + + fowners assp:assp /etc/assp -R + fperms 770 /etc/assp /etc/assp/notes + + # Setup directories for mail to be stored for filter + keepdir /var/lib/assp/spam /var/lib/assp/notspam + keepdir /var/lib/assp/errors/spam /var/lib/assp/errors/notspam + + # Logs directory + keepdir /var/log/assp + fowners assp:assp -R /var/log/assp + fperms 770 /var/log/assp + + # Install the app + exeinto /usr/share/assp + doexe *.pl *.sh || die + insinto /usr/share/assp + doins -r images/ || die + + # Lock down the files/data + fowners assp:assp -R /usr/share/assp + fperms 770 /usr/share/assp + + # Data storage + fowners assp:assp -R /var/lib/assp + fperms 770 /var/lib/assp + + # PID directory + dodir /var/run/assp + keepdir /var/run/assp + fowners assp:assp -R /var/run/assp + fperms 770 /var/run/assp + + # Install the init.d script to listen + newinitd "${FILESDIR}/asspd.init" asspd + + dohtml docs/*.htm || die "Failed to install html docs" +} + +pkg_postinst() { + elog + elog "To configure ASSP, start /etc/init.d/asspd then point" + elog "your browser to http://localhost:55555" + elog "Username: admin Password: nospam4me (CHANGE ASAP!)" + elog + elog "File permissions have been set to use assp:assp" + elog "with mode 770 on directories. When you configure" + elog "ASSP, make sure and use the user assp." + elog + elog "Don't change any path related options." + elog + elog "See the on-line docs for a complete tutorial." + elog "http://assp.sourceforge.net/docs.html" + elog + elog "If upgrading, please update your old config to set both" + elog "redre.txt and nodelay.txt path of /etc/assp. There are" + elog "also many new options that you should review." + elog +} diff --git a/mail-filter/assp/assp-1.9.4.9.ebuild b/mail-filter/assp/assp-1.9.4.9.ebuild new file mode 100644 index 000000000000..dd35a454c325 --- /dev/null +++ b/mail-filter/assp/assp-1.9.4.9.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="Anti-Spam SMTP Proxy written in Perl" +HOMEPAGE="http://assp.sourceforge.net/" +MY_PN=ASSP_${PV}-Install +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip" +LICENSE="GPL-2" +SLOT="0" + +# this is a pre-release, so no keywords for now +KEYWORDS="~amd64 ~x86" + +IUSE="ipv6 ldap sasl spf srs ssl syslog" + +DEPEND="app-arch/unzip" + +RDEPEND="dev-lang/perl + dev-perl/Net-DNS + dev-perl/File-ReadBackwards + virtual/perl-IO-Compress + dev-perl/Email-MIME + dev-perl/Email-Send + dev-perl/Email-Valid + dev-perl/libwww-perl + dev-perl/mime-construct + dev-perl/Net-CIDR-Lite + virtual/perl-Digest-MD5 + virtual/perl-Time-HiRes + ipv6? ( dev-perl/IO-Socket-INET6 ) + sasl? ( dev-perl/Authen-SASL ) + spf? ( dev-perl/Mail-SPF ) + srs? ( dev-perl/Mail-SRS ) + ssl? ( dev-perl/IO-Socket-SSL ) + syslog? ( virtual/perl-Sys-Syslog ) + ldap? ( dev-perl/perl-ldap )" + +S=${WORKDIR}/${MY_PN}/ASSP + +pkg_setup() { + enewgroup assp + enewuser assp -1 -1 /dev/null assp +} + +src_unpack() { + unpack ${A} + cd "${S}" + + local FILES=" + assp.pl + rebuildspamdb.pl + stat.pl + " + # just being safe + for file in ${FILES}; do + edos2unix ${file} + done + + # portable changes via sed vs patch + sed -i -e 's|file:files/|file:/etc/assp/|' \ + -e 's|$base/images|/usr/share/assp/images|' \ + -e 's|logs/maillog.txt|/var/log/assp/maillog.txt|' \ + -e 's|PID File'\'',40,textinput,'\''pid'\''|PID File'\'',40,textinput,'\''asspd.pid'\''|' \ + -e 's|Daemon\*\*'\'',0,checkbox,0|Daemon\*\*'\'',0,checkbox,1|' \ + -e 's|UID\*\*'\'',20,textinput,'\'''\''|UID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|GID\*\*'\'',20,textinput,'\'''\''|GID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|popFileEditor'\('\\'\''pb/pbdb\.\([^\.]*\)\.db\\'\'',|popFileEditor(\\'\''/var/lib/assp/pb/pbdb.\1.db\\'\'',|g' \ + -e 's|$base/assp.cfg|/etc/assp/assp.cfg|g' \ + -e 's|$base/$pidfile|/var/run/assp/asspd.pid|' \ + -e 's|mkdir "$base/$logdir",0700 if $logdir;||' \ + -e 's|mkdir "$base/$logdir",0700;||' \ + -e 's|$base/$logfile|$logfile|' \ + -e 's|$base/$logdir|$logdir|' \ + -e 's|"maillog.log"|"/var/log/assp/maillog.log"|' \ + -e 's|-d "$base/logs" or mkdir "$base/logs",0700;||' \ + -e 's|-d "$base/notes" or mkdir "$base/notes",0700;||' \ + -e 's|-d "$base/docs" or mkdir "$base/docs",0777;||' \ + -e 's|$base/$archivelogfile|$archivelogfile|' \ + -e 's|"$base/$file",$sub,"$this|"/etc/assp/$file",$sub,"$this|' \ + -e 's|"$base/$file",'\'''\'',"$this|"/etc/assp/$file",'\'''\'',"$this|' \ + -e 's|my $fil=$1; $fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|my $fil=$1;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|$fil="/etc/assp/$fil" if $fil!~/^\\/etc\\/assp\\/\|\\/var\\/lib\\/assp\\/\/i;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^((\[a-z\]:)?\[\\/\\\\\]\|\\Q$base\\E)/;||' \ + -e 's|if ($fil !~ /^\\Q$base\\E/i) {|if ($fil !~ /^\\/usr\\/share\\/assp\\//i) {|' \ + -e 's|$fil = "$base/$fil";|$fil = "/usr/share/assp/$fil";|' \ + -e 's|Q$base\\E|Q\\/etc\\/assp\\/\\E|' \ + -e 's|$fil="$base/$fil"|$fil="/etc/assp/$fil"|' \ + -e 's|$base/$bf|/etc/assp/$bf|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + assp.pl || die + + # sed rebuildspamdb.pl + sed -i -e 's|assp.cfg|/etc/assp/assp.cfg|' \ + -e 's|} && "$Config{base}/$Config{logfile}" \|\| '\''maillog.txt'\'';|};|' \ + -e 's|tmaxtick('\''rebuild'\'');|tmaxtick('\''/var/lib/assp/rebuild'\'');|' \ + -e 's|goodhosts|/var/lib/assp/goodhosts|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + -e 's|$base/$DropList|$DropList|' \ + -e 's|&fixPath($base) . "/|"|' \ + -e 's|= "/var/lib/assp/rebuildrun.txt";|= "/var/lib/assp/rebuildrun.txt";\n $RebuildLog = "/var/lib/assp/rebuild.log";|' \ + -e 's|"$base//|"/|g' \ + rebuildspamdb.pl || die + + # remove windows stuff + rm "${S}/addservice.pl" || die "Could not remove ${S}/addservice.pl" + rm -f "${S}/Win32-quickstart-guide.txt" || die "Could not remove ${S}/Win32-quickstart-guide.txt" +} + +src_install() { + # Configuration directory + dodir /etc/assp/notes + + insinto /etc/assp + # Installs files that are used by assp for black/gray lists, + # and domain country lookup. To be changed by admin as needed. + doins files/*.txt || die + + fowners assp:assp /etc/assp -R + fperms 770 /etc/assp /etc/assp/notes + + # Setup directories for mail to be stored for filter + keepdir /var/lib/assp/spam /var/lib/assp/notspam + keepdir /var/lib/assp/errors/spam /var/lib/assp/errors/notspam + + # Logs directory + keepdir /var/log/assp + fowners assp:assp -R /var/log/assp + fperms 770 /var/log/assp + + # Install the app + exeinto /usr/share/assp + doexe *.pl *.sh || die + insinto /usr/share/assp + doins -r images/ || die + + # Lock down the files/data + fowners assp:assp -R /usr/share/assp + fperms 770 /usr/share/assp + + # Data storage + fowners assp:assp -R /var/lib/assp + fperms 770 /var/lib/assp + + # PID directory + dodir /var/run/assp + keepdir /var/run/assp + fowners assp:assp -R /var/run/assp + fperms 770 /var/run/assp + + # Install the init.d script to listen + newinitd "${FILESDIR}/asspd.init" asspd + + dohtml docs/*.htm || die "Failed to install html docs" +} + +pkg_postinst() { + elog + elog "To configure ASSP, start /etc/init.d/asspd then point" + elog "your browser to http://localhost:55555" + elog "Username: admin Password: nospam4me (CHANGE ASAP!)" + elog + elog "File permissions have been set to use assp:assp" + elog "with mode 770 on directories. When you configure" + elog "ASSP, make sure and use the user assp." + elog + elog "Don't change any path related options." + elog + elog "See the on-line docs for a complete tutorial." + elog "http://assp.sourceforge.net/docs.html" + elog + elog "If upgrading, please update your old config to set both" + elog "redre.txt and nodelay.txt path of /etc/assp. There are" + elog "also many new options that you should review." + elog +} diff --git a/mail-filter/assp/assp-1.9.8.13030.ebuild b/mail-filter/assp/assp-1.9.8.13030.ebuild new file mode 100644 index 000000000000..2e52d11194a0 --- /dev/null +++ b/mail-filter/assp/assp-1.9.8.13030.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="Anti-Spam SMTP Proxy written in Perl" +HOMEPAGE="http://assp.sourceforge.net/" +MY_PN=ASSP_${PV/9.8.1/98_1}_install +SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip" +LICENSE="GPL-2" +SLOT="0" + +# this is a pre-release, so no keywords for now +KEYWORDS="~amd64 ~x86" + +IUSE="ipv6 ldap sasl spf srs ssl syslog" + +DEPEND="app-arch/unzip" + +RDEPEND="dev-lang/perl + dev-perl/Net-DNS + dev-perl/File-ReadBackwards + virtual/perl-IO-Compress + dev-perl/Email-MIME + dev-perl/Email-Send + dev-perl/Email-Valid + dev-perl/libwww-perl + dev-perl/mime-construct + dev-perl/Net-CIDR-Lite + virtual/perl-Digest-MD5 + virtual/perl-Time-HiRes + ipv6? ( dev-perl/IO-Socket-INET6 ) + sasl? ( dev-perl/Authen-SASL ) + spf? ( dev-perl/Mail-SPF ) + srs? ( dev-perl/Mail-SRS ) + ssl? ( dev-perl/IO-Socket-SSL ) + syslog? ( virtual/perl-Sys-Syslog ) + ldap? ( dev-perl/perl-ldap )" + +S=${WORKDIR}/${MY_PN}/ASSP + +pkg_setup() { + enewgroup assp + enewuser assp -1 -1 /dev/null assp +} + +src_unpack() { + unpack ${A} + cd "${S}" + + local FILES=" + assp.pl + rebuildspamdb.pl + stat.pl + " + # just being safe + for file in ${FILES}; do + edos2unix ${file} + done + + # portable changes via sed vs patch + sed -i -e 's|file:files/|file:/etc/assp/|' \ + -e 's|$base/images|/usr/share/assp/images|' \ + -e 's|logs/maillog.txt|/var/log/assp/maillog.txt|' \ + -e 's|PID File'\'',40,textinput,'\''pid'\''|PID File'\'',40,textinput,'\''asspd.pid'\''|' \ + -e 's|Daemon\*\*'\'',0,checkbox,0|Daemon\*\*'\'',0,checkbox,1|' \ + -e 's|UID\*\*'\'',20,textinput,'\'''\''|UID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|GID\*\*'\'',20,textinput,'\'''\''|GID\*\*'\'',20,textinput,'\''assp'\''|' \ + -e 's|popFileEditor'\('\\'\''pb/pbdb\.\([^\.]*\)\.db\\'\'',|popFileEditor(\\'\''/var/lib/assp/pb/pbdb.\1.db\\'\'',|g' \ + -e 's|$base/assp.cfg|/etc/assp/assp.cfg|g' \ + -e 's|$base/$pidfile|/var/run/assp/asspd.pid|' \ + -e 's|mkdir "$base/$logdir",0700 if $logdir;||' \ + -e 's|mkdir "$base/$logdir",0700;||' \ + -e 's|$base/$logfile|$logfile|' \ + -e 's|$base/$logdir|$logdir|' \ + -e 's|"maillog.log"|"/var/log/assp/maillog.log"|' \ + -e 's|-d "$base/logs" or mkdir "$base/logs",0700;||' \ + -e 's|-d "$base/notes" or mkdir "$base/notes",0700;||' \ + -e 's|-d "$base/docs" or mkdir "$base/docs",0777;||' \ + -e 's|$base/$archivelogfile|$archivelogfile|' \ + -e 's|"$base/$file",$sub,"$this|"/etc/assp/$file",$sub,"$this|' \ + -e 's|"$base/$file",'\'''\'',"$this|"/etc/assp/$file",'\'''\'',"$this|' \ + -e 's|my $fil=$1; $fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|my $fil=$1;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^\\Q$base\\E/i;|$fil="/etc/assp/$fil" if $fil!~/^\\/etc\\/assp\\/\|\\/var\\/lib\\/assp\\/\/i;|' \ + -e 's|$fil="$base/$fil" if $fil!~/^((\[a-z\]:)?\[\\/\\\\\]\|\\Q$base\\E)/;||' \ + -e 's|if ($fil !~ /^\\Q$base\\E/i) {|if ($fil !~ /^\\/usr\\/share\\/assp\\//i) {|' \ + -e 's|$fil = "$base/$fil";|$fil = "/usr/share/assp/$fil";|' \ + -e 's|Q$base\\E|Q\\/etc\\/assp\\/\\E|' \ + -e 's|$fil="$base/$fil"|$fil="/etc/assp/$fil"|' \ + -e 's|$base/$bf|/etc/assp/$bf|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + assp.pl || die + + # sed rebuildspamdb.pl + sed -i -e 's|assp.cfg|/etc/assp/assp.cfg|' \ + -e 's|} && "$Config{base}/$Config{logfile}" \|\| '\''maillog.txt'\'';|};|' \ + -e 's|tmaxtick('\''rebuild'\'');|tmaxtick('\''/var/lib/assp/rebuild'\'');|' \ + -e 's|goodhosts|/var/lib/assp/goodhosts|g' \ + -e 's|rebuildrun.txt|/var/lib/assp/rebuildrun.txt|' \ + -e 's|$base/$DropList|$DropList|' \ + -e 's|&fixPath($base) . "/|"|' \ + -e 's|= "/var/lib/assp/rebuildrun.txt";|= "/var/lib/assp/rebuildrun.txt";\n $RebuildLog = "/var/lib/assp/rebuild.log";|' \ + -e 's|"$base//|"/|g' \ + rebuildspamdb.pl || die + + # remove windows stuff + rm "${S}/addservice.pl" || die "Could not remove ${S}/addservice.pl" + rm -f "${S}/Win32-quickstart-guide.txt" || die "Could not remove ${S}/Win32-quickstart-guide.txt" +} + +src_install() { + # Configuration directory + dodir /etc/assp/notes + + insinto /etc/assp + # Installs files that are used by assp for black/gray lists, + # and domain country lookup. To be changed by admin as needed. + doins files/*.txt || die + + fowners assp:assp /etc/assp -R + fperms 770 /etc/assp /etc/assp/notes + + # Setup directories for mail to be stored for filter + keepdir /var/lib/assp/spam /var/lib/assp/notspam + keepdir /var/lib/assp/errors/spam /var/lib/assp/errors/notspam + + # Logs directory + keepdir /var/log/assp + fowners assp:assp -R /var/log/assp + fperms 770 /var/log/assp + + # Install the app + exeinto /usr/share/assp + doexe *.pl *.sh || die + insinto /usr/share/assp + doins -r images/ || die + + # Lock down the files/data + fowners assp:assp -R /usr/share/assp + fperms 770 /usr/share/assp + + # Data storage + fowners assp:assp -R /var/lib/assp + fperms 770 /var/lib/assp + + # PID directory + dodir /var/run/assp + keepdir /var/run/assp + fowners assp:assp -R /var/run/assp + fperms 770 /var/run/assp + + # Install the init.d script to listen + newinitd "${FILESDIR}/asspd.init" asspd + + dohtml docs/*.htm || die "Failed to install html docs" +} + +pkg_postinst() { + elog + elog "To configure ASSP, start /etc/init.d/asspd then point" + elog "your browser to http://localhost:55555" + elog "Username: admin Password: nospam4me (CHANGE ASAP!)" + elog + elog "File permissions have been set to use assp:assp" + elog "with mode 770 on directories. When you configure" + elog "ASSP, make sure and use the user assp." + elog + elog "Don't change any path related options." + elog + elog "See the on-line docs for a complete tutorial." + elog "http://assp.sourceforge.net/docs.html" + elog + elog "If upgrading, please update your old config to set both" + elog "redre.txt and nodelay.txt path of /etc/assp. There are" + elog "also many new options that you should review." + elog +} diff --git a/mail-filter/assp/files/assp-1.2.6.patch b/mail-filter/assp/files/assp-1.2.6.patch new file mode 100644 index 000000000000..d89ca181c23a --- /dev/null +++ b/mail-filter/assp/files/assp-1.2.6.patch @@ -0,0 +1,364 @@ +diff -Naur assporg/ASSP/assp.pl asspmod/ASSP/assp.pl +--- assporg/ASSP/assp.pl 2007-01-18 23:12:20.000000000 +0100 ++++ asspmod/ASSP/assp.pl 2007-01-20 21:17:07.000000000 +0100 +@@ -52,13 +52,10 @@ + if($ARGV[0]) { + $base=$ARGV[0]; + } else { +- # the last one is the one used if all else fails +- foreach ('.','assp','/usr/local/assp','/home/assp','/usr/assp','/applications/assp','/assp','.') { +- $base=$_; +- last if -e "$base/assp.cfg"; ++ $base='/etc/assp/'; + } +-} +-if ( !-e "$base/images/noIcon.png") ++ ++if ( !-e "/usr/share/assp/images/noIcon.png") + { die "Abort: folder 'images' not correctly installed";} + + loadConfig(); +@@ -86,7 +83,7 @@ + 'The address:port of your message handling system\'s smtp server. If only the port is entered, or the keyword <b>__INBOUND__</b>:<i>port</i> is used, then the connection will be established to the same IP where the connection was received. This is usefull when you have several IPs with different domains/profiles in your MTA.<br /> Examples: "127.0.0.1:125","127.0.0.1:125|127.0.0.5:125", "10.0.1.3", "10.0.1.3:1025", "__INBOUND__:125", "125", etc.'], + [AsAService,'As a Service',0,checkbox,0,'(.*)',undef, + 'In Windows 2000 / NT you can run it as a service; requires <a href="http://www.roth.net/perl/Daemon/" rel="external">win32::daemon</a>. Requires start from the service control panel.'], +-[AsADaemon,'As a Daemon',0,checkbox,0,'(.*)',undef, ++[AsADaemon,'As a Daemon',0,checkbox,1,'(.*)',undef, + 'In Linux/BSD/Unix/OSX fork and close file handles, kinda like "perl assp.pl &" but better. Requires restart.'], + [myName,'My Name',40,textinput,'ASSP.nospam','(\S+)',undef, + 'What the program calls itself in the email "received by" header. Usually ASSP.nospam.'], +@@ -912,10 +909,10 @@ + 'This user must have CREATE privilege on database to create tables + automatically'], + [mypassword,'MySQL password',40,textinput,'','(\S*)',undef,''], +-[logfile,'ASSP Logfile',40,textinput,'maillog.txt','(\S*)',ConfigChangeLogfile, ++[logfile,'ASSP Logfile',40,textinput,'/var/log/assp/maillog.txt','(\S*)',ConfigChangeLogfile, + 'Blank if you don\'t want a log file. Change it to maillog.log if you don\'t want auto rollover. + NOTE: Changing this field requires restarting ASSP before changes take effect.'], +-[pidfile,'PID File',40,textinput,'pid','(\S*)',undef,'Blank to skip writing a pid file. *nix users need pid files. ++[pidfile,'PID File',40,textinput,'asspd.pid','(\S*)',undef,'Blank to skip writing a pid file. *nix users need pid files. + Leave it blank in Windows.<br /> You have to restart the service before you get a pid file in the new location.<br /><hr /> + <div class=\"menuLevel1\">Notes On File Path</div> + <input type="button" value="Notes" onClick="javascript:popFileEditor(\'notes/filepath.txt\',3);"> +@@ -979,9 +976,9 @@ + '], + + [0,0,0,'heading','Security'], +-[runAsUser,'Run as UID',20,textinput,'nobody','(\S*)',undef, ++[runAsUser,'Run as UID',20,textinput,'assp','(\S*)',undef, + 'The *nix user name to assume after startup: assp or nobody -- requires ASSP restart.'], +-[runAsGroup,'Run as GID',20,textinput,'nobody','(\S*)',undef, ++[runAsGroup,'Run as GID',20,textinput,'assp','(\S*)',undef, + 'The *nix group to assume after startup: assp or nogroup -- requires ASSP restart.'], + [ChangeRoot,'Change Root',40,textinput,'','(.*)',undef, + 'Non-blank means to run in chroot jail in *nix. You need an etc/protocols file to make this work<br /> +@@ -1106,7 +1103,7 @@ + } + } + # load configuration file +- open(F,"<$base/assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; ++ open(F,"</etc/assp/assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; + # set nonexistent settings to default values + foreach $c (@Config) { + if ($c->[0] && !(exists $Config{$c->[0]})) { +@@ -1446,19 +1443,19 @@ + $silent=1; + } + +-if($pidfile) {open(F,">$base/$pidfile"); print F $$; close F;} ++if($pidfile) {open(F,">/var/run/assp/$pidfile"); print F $$; close F;} + + sub RemovePid { + if ($pidfile) { + d('RemovePid'); +- unlink("$base/$pidfile"); ++ unlink("/var/run/assp/$pidfile"); + } + } + + if($DEBUG) {open(DEBUG, ">$base/".time.".dbg"); binmode(DEBUG); my $oldfh = select(DEBUG); $| = 1; select($oldfh);} + my $logdir = $1 if $logfile=~/(.*)\/.*/; +- mkdir "$base/$logdir",0777 if $logdir; +-if($logfile && open(LOG,">>$base/$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} ++ mkdir "$logdir",0777 if $logdir; ++if($logfile && open(LOG,">>$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} + + if($AsAService) { + eval(<<'EOT'); +@@ -1652,16 +1649,16 @@ + -d "$base/$correctednotspam" or mkdir "$base/$correctednotspam",0700; + my $pbdir = $1 if $pbdb=~/(.*)\/.*/; + mkdir "$base/$pbdir",0700 if $pbdir; +- -d "$base/notes" or mkdir "$base/notes",0700; +- if ( !-e "$base/reports/whitereport.txt") { +- -d "$base/reports" or mkdir "$base/reports",0700; +- copy("whitereport.txt", "reports/whitereport.txt"); +- copy("whiteremovereport.txt", "reports/whiteremovereport.txt"); +- copy("redreport.txt", "reports/redreport.txt"); +- copy("redremovereport.txt", "reports/redremovereport.txt"); +- copy("helpreport.txt", "reports/helpreport.txt"); +- copy("notspamreport.txt", "reports/notspamreport.txt"); +- copy("spamreport.txt", "reports/spamreport.txt"); ++ -d "/etc/assp/notes" or mkdir "/etc/assp/notes",0700; ++ if ( !-e "/etc/assp/reports/whitereport.txt") { ++ -d "/etc/assp/reports" or mkdir "/etc/assp/reports",0700; ++ copy("/usr/share/assp/whitereport.txt", "/etc/assp/reports/whitereport.txt"); ++ copy("/usr/share/assp/whiteremovereport.txt", "/etc/assp/reports/whiteremovereport.txt"); ++ copy("/usr/share/assp/redreport.txt", "/etc/assp/reports/redreport.txt"); ++ copy("/usr/share/assp/redremovereport.txt", "/etc/assp/reports/redremovereport.txt"); ++ copy("/usr/share/assp/helpreport.txt", "/etc/assp/reports/helpreport.txt"); ++ copy("/usr/share/assp/notspamreport.txt", "/etc/assp/reports/notspamreport.txt"); ++ copy("/usr/share/assp/spamreport.txt", "/etc/assp/reports/spamreport.txt"); + } + + +@@ -2073,7 +2070,7 @@ + # roll log every $LogRollDays days, at midnight + my $t=int((time()+Time::Local::timelocal(localtime())-Time::Local::timelocal(gmtime()))/($LogRollDays*24*3600)); + +- if($logfile && $mlogLastT && $t != $mlogLastT && $logfile ne "maillog.log" && $asspLog) { ++ if($logfile && $mlogLastT && $t != $mlogLastT && $logfile ne "/var/log/assp/maillog.log" && $asspLog) { + # roll the log + + my ($sec,$min,$hour,$mday,$mon,$year) = localtime(time); +@@ -2084,7 +2081,7 @@ + if (!$logdir) { + $archivelogfile = "$mm.$logfile"; + } else { +- mkdir "$base/$logdir",0777; ++ mkdir "$logdir",0777; + $archivelogfile = "$logdir/$mm.$logdirfile"; + } + my $msg="$m: Rolling log file -- archive saved as '$archivelogfile'\n"; +@@ -2092,8 +2089,8 @@ + print $msg unless $silent; + + close LOG; +- rename("$base/$logfile", "$base/$archivelogfile"); +- if(open(LOG,">>$base/$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} ++ rename("$logfile", "$archivelogfile"); ++ if(open(LOG,">>$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} + print LOG "$m new log file -- old log file renamed to '$archivelogfile'\n"; + SaveConfig(); + } +@@ -3683,7 +3680,7 @@ + return 1; + } + my ($per_result, $smtp_comment, $header_comment, $spf_fail); +- foreach my $recip (split(' ', $this->{rcpt})) { ++ foreach my $recip (split('/var/lib/assp/', $this->{rcpt})) { + ($per_result, $smtp_comment, $header_comment, $spf_fail) = + $query->result2($recip); + # Keep processing SPF records until all recipients are checked +@@ -5243,8 +5240,8 @@ + + + +- ReturnMail($this->{mailfrom},"$base/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n") if ($EmailErrorsReply==1 || $EmailErrorsReply==3); +- ReturnMail($EmailErrorsTo,"$base/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ($EmailErrorsTo && ($EmailErrorsReply==2 || $EmailErrorsReply==3)); ++ ReturnMail($this->{mailfrom},"/etc/assp/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n") if ($EmailErrorsReply==1 || $EmailErrorsReply==3); ++ ReturnMail($EmailErrorsTo,"/etc/assp/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ($EmailErrorsTo && ($EmailErrorsReply==2 || $EmailErrorsReply==3)); + + stateReset($fh); + $this->{getline}=\&getline; +@@ -5377,13 +5374,13 @@ + + if (($this->{reporttype}==2) || ($this->{reporttype}==3)) { + +-ReturnMail($this->{mailfrom},"$base/$file",'',"$this->{rcpt}\n\n$this->{report}\n") if ($EmailWhitelistReply==1 || $EmailWhitelistReply==3); ++ReturnMail($this->{mailfrom},"/etc/assp/$file",'',"$this->{rcpt}\n\n$this->{report}\n") if ($EmailWhitelistReply==1 || $EmailWhitelistReply==3); + +-ReturnMail($EmailWhitelistTo,"$base/$file",'',"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ( $EmailWhitelistTo && ($EmailWhitelistReply==2 || $EmailWhitelistReply==3)); ++ReturnMail($EmailWhitelistTo,"/etc/assp/$file",'',"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ( $EmailWhitelistTo && ($EmailWhitelistReply==2 || $EmailWhitelistReply==3)); + } else { +- ReturnMail($this->{mailfrom},"$base/$file",'',"$this->{rcpt}\n\n$this->{report}\n") if ($EmailRedlistReply==1 || $EmailRedlistReply==3); ++ ReturnMail($this->{mailfrom},"/etc/assp/$file",'',"$this->{rcpt}\n\n$this->{report}\n") if ($EmailRedlistReply==1 || $EmailRedlistReply==3); + +-ReturnMail($EmailRedlistTo,"$base/$file",'',"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ( $EmailRedlistTo && ($EmailRedlistReply==2 || $EmailRedlistReply==3)); ++ReturnMail($EmailRedlistTo,"/etc/assp//$file",'',"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ( $EmailRedlistTo && ($EmailRedlistReply==2 || $EmailRedlistReply==3)); + } + delete $this->{report}; + stateReset($fh); +@@ -5531,8 +5528,8 @@ + my $file=($this->{reporttype}==0) ? "reports/spamreport.txt" : "reports/notspamreport.txt"; + + +- ReturnMail($this->{mailfrom},"$base/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n") if ($EmailErrorsReply==1 || $EmailErrorsReply==3); +- ReturnMail($EmailErrorsTo,"$base/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ($EmailErrorsTo && ($EmailErrorsReply==2 || $EmailErrorsReply==3)); ++ ReturnMail($this->{mailfrom},"/etc/assp/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n") if ($EmailErrorsReply==1 || $EmailErrorsReply==3); ++ ReturnMail($EmailErrorsTo,"/etc/assp/$file",$sub,"$this->{rcpt}\n\n$this->{report}\n",$this->{mailfrom}) if ($EmailErrorsTo && ($EmailErrorsReply==2 || $EmailErrorsReply==3)); + + delete $this->{report}; + stateReset($fh); +@@ -6010,7 +6007,7 @@ + $a{lc $1}=1; + } + } +- foreach $a (split(' ',lc $this->{rcpt})) { ++ foreach $a (split('/var/lib/assp/',lc $this->{rcpt})) { + $a{$a}=1; + } + foreach $a (keys %a) { +@@ -6470,10 +6467,10 @@ + if($UseSubjectsAsMaillogNames || $isspam==2 || $isspam==3) { + + $sub.="--".(++$Counter); +- return "$base/$maillog/$sub$maillogExt"; ++ return "/var/lib/assp/$maillog/$sub$maillogExt"; + } else { + my $fn=(time + $Counter++ ) % $MaxFiles; +- "$base/$maillog/$fn$maillogExt"; ++ "/var/lib/assp/$maillog/$fn$maillogExt"; + } + } + +@@ -7759,7 +7756,7 @@ + $m=~s/^... (...) +(\d+) (\S+) ..(..)/$1-$2-$4 $3 /; + my $indent=" " x length($m); + if(!$pat) { +- open(F,"<$base/$logfile"); ++ open(F,"<$logfile"); + seek(F,-$MaillogTailBytes,2) || seek(F,0,0); + local $/; + $s=<F>; +@@ -7779,7 +7776,7 @@ + my $lines=0; + my $files=0; + my ($logdir, $logdirfile) = $logfile=~/^(.*[\/\\])?(.*?)$/; +- my @logfiles=reverse sort glob("$base/$logdir*$logdirfile"); ++ my @logfiles=reverse sort glob("$logdir*$logdirfile"); + my $logf=File::ReadBackwards->new(shift(@logfiles),'(?:\r?\n|\r)',1); # line terminator regex + if ($logf) { + $files++; +@@ -7821,7 +7818,7 @@ + my %replace; + my $j=0; + my $highlightExpr='=~s/('; +- foreach (map/^([^-].*)/, split(' ',$pat)) { ++ foreach (map/^([^-].*)/, split('/var/lib/assp/',$pat)) { + $replace{lc $_}=$highlights[$j % @highlights]; # pick highlight style + $highlightExpr.=quotemeta($_).'|'; + if ($MaillogTailWrapColumn>0) { +@@ -7982,7 +7979,7 @@ + + else { + #$fil="$base/$fil" if $fil!~/^(([a-z]:)?[\/\\]|\Q$base\E)/; +- $fil="$base/$fil" if $fil!~/^\Q$base\E/i; ++ $fil="/etc/assp/$fil" if $fil!~/^\Q\/etc\/assp\/\E/i; + if ($qs{B1}=~/delete/i) { + unlink($fil); + } +@@ -8206,7 +8203,7 @@ + } + + if ($fil !~ /^\Q$base\E/i) { +- $fil="$base/$fil"; ++ $fil="/usr/share/assp/$fil"; + } + if (-e $fil) { + my $mtime; +@@ -8541,9 +8538,9 @@ + } + + sub SaveConfig { +- rename("$base/assp.cfg.bak","$base/assp.cfg.bak.bak"); +- rename("$base/assp.cfg","$base/assp.cfg.bak"); +- open(F,">$base/assp.cfg"); ++ rename("/etc/assp/assp.cfg.bak","/etc/assp/assp.cfg.bak.bak"); ++ rename("/etc/assp/assp.cfg","/etc/assp/assp.cfg.bak"); ++ open(F,">/etc/assp/assp.cfg"); + foreach (sort keys %Config) {print F "$_:=$Config{$_}\n";} + close F; + } +@@ -8724,8 +8721,8 @@ + # the option list is actually saved in a file. + $fromfile = 1; + my $fil = $1; +- if ($fil !~ /^(([a-z]:)?[\/\\]|\Q$base\E)/){ +- $fil = "$base/$fil"; ++ if ($fil !~ /^(([a-z]:)?[\/\\]|\Q\/etc\/assp\/\E)/){ ++ $fil = "/etc/assp/$fil"; + }; + local $/; + my @s = stat($fil); +@@ -8789,7 +8786,7 @@ + sub fileUpdated { + my $fil=shift; + +- $fil="$base/$fil" if $fil!~/^(([a-z]:)?[\/\\]|\Q$base\E)/; ++ $fil="/etc/assp/$fil" if $fil!~/^(([a-z]:)?[\/\\]|\Q\/etc\/assp\/\E)/; + #$fil="$base/$fil" if $fil!~/^\Q$base\E/i; + return 1 unless $FileUpdate{$fil}; + my @s=stat($fil); +@@ -8891,7 +8888,7 @@ + sub ConfigChangeLogfile {my ($name, $old, $new)=@_; + close LOG if $logfile; + $logfile=$new; +- if($logfile && open(LOG,">>$base/$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} ++ if($logfile && open(LOG,">>$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} + mlog(0,"log file changed to '$new' from '$old' per admin request"); + ''; + } +@@ -9242,7 +9239,7 @@ + # called on SIG HUP + my %newConfig; + mlog(0,"sig HUP -- reloading config"); +- open(F,"<$base/assp.cfg"); local $/; (%newConfig)=split(/:=|\n/,<F>); close F; ++ open(F,"</etc/assp/assp.cfg"); local $/; (%newConfig)=split(/:=|\n/,<F>); close F; + foreach $c (@Config) { + my ($name,$nicename,$size,$func,$default,$valid,$onchange,$description)=@$c; + if($Config{$name} ne $newConfig{$name}) { +@@ -9270,7 +9267,7 @@ + } + # reopen log file, just for fun. + close LOG; +- if(open(LOG,">>$base/$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} ++ if(open(LOG,">>$logfile")) {my $oldfh = select(LOG); $| = 1; select($oldfh);} + print LOG "Logfile reopened on HUP\n"; + } + +diff -Naur assporg/ASSP/move2num.pl asspmod/ASSP/move2num.pl +--- assporg/ASSP/move2num.pl 2007-01-18 23:12:20.000000000 +0100 ++++ asspmod/ASSP/move2num.pl 2007-01-18 23:14:09.000000000 +0100 +@@ -3,7 +3,7 @@ + # renames files to numbers + # (c) John Hanna, John Calvi 2003 under the terms of the GPL + +-open(F,"<assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; ++open(F,"</etc/assp/assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; + $spamlog=$Config{spamlog} && "$Config{base}/$Config{spamlog}" || 'spam'; + $notspamlog=$Config{notspamlog} && "$Config{base}/$Config{notspamlog}" || 'notspam'; + $MaxFiles=$Config{MaxFiles} || 14003; +diff -Naur assporg/ASSP/rebuildspamdb.pl asspmod/ASSP/rebuildspamdb.pl +--- assporg/ASSP/rebuildspamdb.pl 2007-01-18 23:12:20.000000000 +0100 ++++ asspmod/ASSP/rebuildspamdb.pl 2007-01-18 23:14:09.000000000 +0100 +@@ -4,7 +4,7 @@ + # (c) John Hanna 2003 under the terms of the GPL + # Updated July 2004 for simple proxy support. + +-open(F,"<assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; ++open(F,"</etc/assp/assp.cfg"); local $/; (%Config)=split(/:=|\n/,<F>); close F; + $spamlog=$Config{spamlog} && "$Config{base}/$Config{spamlog}" || 'spam'; + $notspamlog=$Config{notspamlog} && "$Config{base}/$Config{notspamlog}" || 'notspam'; + $correctedspam=$Config{correctedspam} && "$Config{base}/$Config{correctedspam}" || 'errors/spam'; +@@ -13,7 +13,7 @@ + $whitelistdb=$Config{whitelistdb} && "$Config{base}/$Config{whitelistdb}" || 'whitelist'; + $MaxWhitelistDays=$Config{MaxWhitelistDays} || 90; + $OrderedTieHashSize=$Config{OrderedTieHashSize} || 5000; +-$Log=$Config{logfile} && "$Config{base}/$Config{logfile}" || 'maillog.txt'; ++$Log=$Config{logfile}; + $whiteRE=$Config{whiteRE}; + $KeepWhitelistedSpam=$Config{KeepWhitelistedSpam}; + $proxyserver=$Config{proxyserver}; +diff -Naur assporg/ASSP/stats.sh asspmod/ASSP/stats.sh +--- assporg/ASSP/stats.sh 2007-01-18 23:12:23.000000000 +0100 ++++ asspmod/ASSP/stats.sh 2007-01-18 23:14:09.000000000 +0100 +@@ -52,7 +52,7 @@ + # your system's 'newsyslog' functionality. You can send a SIGHUP to + # ASSP when you roll the log so it starts afresh..KRL + +-tail -300 -f /usr/local/assp/maillog.log | \ ++tail -n 300 -f /var/log/assp/maillog.txt | \ + awk ' \ + /whitelisted/ { \ + printf("%s %s \033[1;32m%-15s L\033[0mW %s \033[1;32m->\033[0m %s\n", \ diff --git a/mail-filter/assp/files/asspd.init b/mail-filter/assp/files/asspd.init new file mode 100644 index 000000000000..e592402f23f6 --- /dev/null +++ b/mail-filter/assp/files/asspd.init @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net +} + +start() { + ebegin "Starting ASSP" + start-stop-daemon -b -m --start --quiet --startas /usr/share/assp/assp.pl \ + --pidfile /var/run/assp/asspd.pid -- /var/lib/assp/ + 2<&1 >> /var/log/assp/assp.log + eend $? +} + +stop() { + ebegin "Stopping ASSP" + start-stop-daemon --stop --quiet --pidfile /var/run/assp/asspd.pid + eend $? +} diff --git a/mail-filter/assp/files/base.patch b/mail-filter/assp/files/base.patch new file mode 100644 index 000000000000..dfcf9573e7af --- /dev/null +++ b/mail-filter/assp/files/base.patch @@ -0,0 +1,15 @@ +--- ASSP_1.3.3.7-Install/ASSP/assp.pl 2007-10-20 13:10:09.000000000 -0400 ++++ ASSP_1.3.3.7-Install_orig/ASSP/assp.pl 2007-10-20 13:09:47.000000000 -0400 +@@ -83,11 +83,7 @@ + if($ARGV[0]) { + $base=$ARGV[0]; + } else { +- # the last one is the one used if all else fails +- foreach ('.','assp','/usr/local/assp','/home/assp','/etc/assp','/usr/assp','/applications/assp','/assp','.') { +- $base=$_; +- last if -e "/etc/assp/assp.cfg"; +- } ++ $base='$base/'; + } + if ( !-e "/usr/share/assp/images/noIcon.png") + { die "Abort: folder 'images' not correctly installed";} diff --git a/mail-filter/assp/metadata.xml b/mail-filter/assp/metadata.xml new file mode 100644 index 000000000000..7d7dfbb78f47 --- /dev/null +++ b/mail-filter/assp/metadata.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>patrick@gentoo.org</email> + <name>Patrick Lauer</name> + </maintainer> + <longdescription> + The Anti-Spam SMTP Proxy (ASSP) Server project is an open source + platform-independent SMTP Proxy server which implements whitelists + and Bayesian filtering to rid the planet of the blight of unsolicited + email (UCE). UCE must be stopped at the SMTP server. Anti-spam tools + must be adaptive to new spam and customized for each site's mail + patterns. This free, easy-to-use tool works with any mail transport + and achieves these goals requiring no operator intervention after the + initial setup phase. + </longdescription> + <use> + <flag name="spf">Adds support for Sender Policy Framework</flag> + <flag name="srs">Adds support for Sender Rewriting Scheme</flag> + </use> + <upstream> + <remote-id type="sourceforge">assp</remote-id> + </upstream> +</pkgmetadata> |