summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mail-filter')
-rw-r--r--mail-filter/MailScanner/MailScanner-4.84.5.2.ebuild4
-rw-r--r--mail-filter/MailScanner/metadata.xml2
-rw-r--r--mail-filter/afew/Manifest1
-rw-r--r--mail-filter/afew/afew-3.0.0.ebuild50
-rw-r--r--mail-filter/afew/afew-3.0.1.ebuild7
-rw-r--r--mail-filter/afew/metadata.xml2
-rw-r--r--mail-filter/amavisd-milter/Manifest1
-rw-r--r--mail-filter/amavisd-milter/amavisd-milter-1.7.0-r1.ebuild9
-rw-r--r--mail-filter/amavisd-milter/amavisd-milter-1.7.1.ebuild9
-rw-r--r--mail-filter/amavisd-milter/amavisd-milter-1.7.2-r1.ebuild26
-rw-r--r--mail-filter/amavisd-milter/amavisd-milter-1.7.2.ebuild30
-rw-r--r--mail-filter/amavisd-milter/metadata.xml7
-rw-r--r--mail-filter/amavisd-new/Manifest4
-rw-r--r--mail-filter/amavisd-new/amavisd-new-2.12.2.ebuild (renamed from mail-filter/amavisd-new/amavisd-new-2.12.0-r5.ebuild)10
-rw-r--r--mail-filter/amavisd-new/amavisd-new-2.13.0.ebuild (renamed from mail-filter/amavisd-new/amavisd-new-2.12.1.ebuild)143
-rw-r--r--mail-filter/amavisd-new/metadata.xml22
-rw-r--r--mail-filter/bmf/bmf-0.9.4-r3.ebuild4
-rw-r--r--mail-filter/bmf/bmf-0.9.4-r4.ebuild55
-rw-r--r--mail-filter/bmf/metadata.xml2
-rw-r--r--mail-filter/bogofilter/Manifest2
-rw-r--r--mail-filter/bogofilter/bogofilter-1.2.5-r1.ebuild (renamed from mail-filter/bogofilter/bogofilter-1.2.4-r3.ebuild)14
-rw-r--r--mail-filter/bogofilter/files/bogofilter-1.2.4-test-env.patch11
-rw-r--r--mail-filter/bogofilter/metadata.xml7
-rw-r--r--mail-filter/courier-pythonfilter/Manifest2
-rw-r--r--mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.4.ebuild (renamed from mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.2-r1.ebuild)12
-rw-r--r--mail-filter/courier-pythonfilter/metadata.xml2
-rw-r--r--mail-filter/couriersrs/metadata.xml2
-rw-r--r--mail-filter/dcc/Manifest1
-rw-r--r--mail-filter/dcc/dcc-1.3.158-r2.ebuild141
-rw-r--r--mail-filter/dcc/dcc-2.3.168.ebuild141
-rw-r--r--mail-filter/dcc/files/dcc-1.3.158-c2x.patch21
-rw-r--r--mail-filter/dcc/files/dcc-1.3.158-clang16.patch30
-rw-r--r--mail-filter/dcc/files/dccifd.service34
-rw-r--r--mail-filter/dcc/metadata.xml6
-rw-r--r--mail-filter/dkimproxy/dkimproxy-1.4.1.ebuild6
-rw-r--r--mail-filter/dkimproxy/metadata.xml2
-rw-r--r--mail-filter/exim-geoip/metadata.xml2
-rw-r--r--mail-filter/exim-p0f/metadata.xml2
-rw-r--r--mail-filter/gld/files/gld-1.7-configure-strict-prototypes.patch12
-rw-r--r--mail-filter/gld/gld-1.7-r4.ebuild14
-rw-r--r--mail-filter/gld/metadata.xml2
-rw-r--r--mail-filter/imapfilter/Manifest3
-rw-r--r--mail-filter/imapfilter/imapfilter-2.8.1.ebuild (renamed from mail-filter/imapfilter/imapfilter-2.7.5.ebuild)17
-rw-r--r--mail-filter/imapfilter/imapfilter-2.8.2.ebuild48
-rw-r--r--mail-filter/imapfilter/metadata.xml11
-rw-r--r--mail-filter/libmilter/Manifest4
-rw-r--r--mail-filter/libmilter/files/libmilter-build-system.patch89
-rw-r--r--mail-filter/libmilter/files/libmilter-glibc-2.30.patch25
-rw-r--r--mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch211
-rw-r--r--mail-filter/libmilter/libmilter-1.0.2.ebuild66
-rw-r--r--mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild75
-rw-r--r--mail-filter/libmilter/libmilter-1.0.2_p1.ebuild79
-rw-r--r--mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild137
-rw-r--r--mail-filter/libmilter/metadata.xml2
-rw-r--r--mail-filter/libsieve/metadata.xml12
-rw-r--r--mail-filter/libspf2/Manifest2
-rw-r--r--mail-filter/libspf2/files/libspf2-1.2.10-gcc5.patch20
-rw-r--r--mail-filter/libspf2/files/libspf2-1.2.11-memset-include-string-h.patch12
-rw-r--r--mail-filter/libspf2/files/libspf2-1.2.11-musl.patch30
-rw-r--r--mail-filter/libspf2/files/libspf2-1.2.11-undefined-dn_.patch147
-rw-r--r--mail-filter/libspf2/libspf2-1.2.11.ebuild (renamed from mail-filter/libspf2/libspf2-1.2.10.ebuild)15
-rw-r--r--mail-filter/libspf2/metadata.xml17
-rw-r--r--mail-filter/libsrs2/metadata.xml2
-rw-r--r--mail-filter/libsrs_alt/Manifest1
-rw-r--r--mail-filter/libsrs_alt/files/libsrs_alt-1.0-ftime.patch12
-rw-r--r--mail-filter/libsrs_alt/files/libsrs_alt-1.0-link-fix.patch32
-rw-r--r--mail-filter/libsrs_alt/libsrs_alt-1.0-r1.ebuild54
-rw-r--r--mail-filter/libsrs_alt/metadata.xml13
-rw-r--r--mail-filter/maildrop/Manifest5
-rw-r--r--mail-filter/maildrop/files/maildrop-3.0.2-makedat.patch67
-rw-r--r--mail-filter/maildrop/files/maildrop-3.1.1-testsuite.patch64
-rw-r--r--mail-filter/maildrop/files/maildrop-3.1.5-common.patch103
-rw-r--r--mail-filter/maildrop/files/maildrop-3.1.6-test.patch54
-rw-r--r--mail-filter/maildrop/files/maildrop-3.1.6-valgrind.patch31
-rw-r--r--mail-filter/maildrop/maildrop-3.0.2-r1.ebuild144
-rw-r--r--mail-filter/maildrop/maildrop-3.0.2.ebuild (renamed from mail-filter/maildrop/maildrop-3.0.0.ebuild)17
-rw-r--r--mail-filter/maildrop/maildrop-3.1.4.ebuild138
-rw-r--r--mail-filter/maildrop/maildrop-3.1.5.ebuild139
-rw-r--r--mail-filter/maildrop/maildrop-3.1.6-r2.ebuild151
-rw-r--r--mail-filter/maildrop/metadata.xml7
-rw-r--r--mail-filter/mailfilter/Manifest2
-rw-r--r--mail-filter/mailfilter/files/0.8.4-fix-parallel-build.patch113
-rw-r--r--mail-filter/mailfilter/files/0.8.9-bashisms.patch26
-rw-r--r--mail-filter/mailfilter/files/0.8.9-prototypes.patch132
-rw-r--r--mail-filter/mailfilter/mailfilter-0.8.9.ebuild (renamed from mail-filter/mailfilter/mailfilter-0.8.4.ebuild)22
-rw-r--r--mail-filter/mailfilter/metadata.xml11
-rw-r--r--mail-filter/mapson/metadata.xml2
-rw-r--r--mail-filter/metadata.xml2
-rw-r--r--mail-filter/milter-regex/files/milter-regex-2.7-implicit-func-decl.patch10
-rw-r--r--mail-filter/milter-regex/files/milter-regex-init-2.615
-rw-r--r--mail-filter/milter-regex/metadata.xml11
-rw-r--r--mail-filter/milter-regex/milter-regex-2.7-r3.ebuild (renamed from mail-filter/milter-regex/milter-regex-2.7.ebuild)9
-rw-r--r--mail-filter/mimedefang/Manifest1
-rw-r--r--mail-filter/mimedefang/files/mimedefang-tests.patch4
-rw-r--r--mail-filter/mimedefang/files/mimedefang-tests2.patch21
-rw-r--r--mail-filter/mimedefang/files/mimedefang-vendor.patch30
-rw-r--r--mail-filter/mimedefang/files/mimedefang.conf3
-rw-r--r--mail-filter/mimedefang/files/mimedefang.init9
-rw-r--r--mail-filter/mimedefang/metadata.xml5
-rw-r--r--mail-filter/mimedefang/mimedefang-2.84-r2.ebuild (renamed from mail-filter/mimedefang/mimedefang-2.84.ebuild)39
-rw-r--r--mail-filter/mimedefang/mimedefang-3.1.ebuild79
-rw-r--r--mail-filter/normalizemime/Manifest1
-rw-r--r--mail-filter/normalizemime/metadata.xml2
-rw-r--r--mail-filter/normalizemime/normalizemime-1.21.ebuild28
-rw-r--r--mail-filter/opendkim/files/opendkim-2.10.3-c-std.patch155
-rw-r--r--mail-filter/opendkim/files/opendkim-2.10.3-fix-ldap-sasl-pc.patch69
-rw-r--r--mail-filter/opendkim/files/opendkim-2.10.3-snprintf-include.patch27
-rw-r--r--mail-filter/opendkim/metadata.xml3
-rw-r--r--mail-filter/opendkim/opendkim-2.10.3-r30.ebuild (renamed from mail-filter/opendkim/opendkim-2.10.3-r26.ebuild)20
-rw-r--r--mail-filter/opendmarc/Manifest1
-rw-r--r--mail-filter/opendmarc/files/opendmarc-1.3.2-multiple-From.patch35
-rw-r--r--mail-filter/opendmarc/files/opendmarc-1.3.3-CVE-2020-12460.patch41
-rw-r--r--mail-filter/opendmarc/files/opendmarc-1.4.1.1-CVE-2021-34555.patch87
-rw-r--r--mail-filter/opendmarc/files/opendmarc-1.4.1.1-arc-seal-crash.patch38
-rw-r--r--mail-filter/opendmarc/files/opendmarc-1.4.1.1-underlinking.patch17
-rw-r--r--mail-filter/opendmarc/files/opendmarc.confd4
-rw-r--r--mail-filter/opendmarc/files/opendmarc.initd5
-rw-r--r--mail-filter/opendmarc/files/opendmarc.service4
-rw-r--r--mail-filter/opendmarc/metadata.xml2
-rw-r--r--mail-filter/opendmarc/opendmarc-1.4.1.1-r5.ebuild (renamed from mail-filter/opendmarc/opendmarc-1.3.3.ebuild)36
-rw-r--r--mail-filter/opendmarc/opendmarc-1.4.1.1-r6.ebuild (renamed from mail-filter/opendmarc/opendmarc-1.4.1.1-r1.ebuild)27
-rw-r--r--mail-filter/opensmtpd-filter-rspamd/metadata.xml2
-rw-r--r--mail-filter/policyd-weight/metadata.xml2
-rw-r--r--mail-filter/policyd/metadata.xml2
-rw-r--r--mail-filter/policyd/policyd-1.82-r4.ebuild10
-rw-r--r--mail-filter/popfile/metadata.xml2
-rw-r--r--mail-filter/popfile/popfile-1.1.3-r1.ebuild20
-rw-r--r--mail-filter/postforward/Manifest1
-rw-r--r--mail-filter/postforward/metadata.xml2
-rw-r--r--mail-filter/postforward/postforward-1.1.0.ebuild47
-rw-r--r--mail-filter/postforward/postforward-1.1.1.ebuild4
-rw-r--r--mail-filter/postfwd/Manifest1
-rw-r--r--mail-filter/postfwd/files/postfwd.conf18
-rw-r--r--mail-filter/postfwd/files/postfwd.init27
-rw-r--r--mail-filter/postfwd/files/postfwd.init.327
-rw-r--r--mail-filter/postfwd/files/postfwd.service11
-rw-r--r--mail-filter/postfwd/metadata.xml10
-rw-r--r--mail-filter/postfwd/postfwd-2.02-r1.ebuild (renamed from mail-filter/postfwd/postfwd-2.02.ebuild)18
-rw-r--r--mail-filter/postfwd/postfwd-2.03.ebuild83
-rw-r--r--mail-filter/postgrey/Manifest3
-rw-r--r--mail-filter/postgrey/metadata.xml2
-rw-r--r--mail-filter/postgrey/postgrey-1.37.ebuild76
-rw-r--r--mail-filter/postgrey/postgrey-1.37_p20190625-r1.ebuild4
-rw-r--r--mail-filter/postgrey/postgrey-1.37_p20220122.ebuild78
-rw-r--r--mail-filter/postgrey/postgrey-1.37_p20230714.ebuild78
-rw-r--r--mail-filter/postsrsd/Manifest2
-rw-r--r--mail-filter/postsrsd/files/postsrsd.init30
-rw-r--r--mail-filter/postsrsd/files/postsrsd.init-r2 (renamed from mail-filter/postsrsd/files/postsrsd.init-r1)3
-rw-r--r--mail-filter/postsrsd/metadata.xml7
-rw-r--r--mail-filter/postsrsd/postsrsd-1.10.ebuild35
-rw-r--r--mail-filter/postsrsd/postsrsd-1.12.ebuild40
-rw-r--r--mail-filter/procmail/Manifest2
-rw-r--r--mail-filter/procmail/files/gentoo-maildir3.diff12
-rw-r--r--mail-filter/procmail/files/procmail-3.22-CVE-2014-3618.patch18
-rw-r--r--mail-filter/procmail/files/procmail-3.22-CVE-2017-16844.patch13
-rw-r--r--mail-filter/procmail/files/procmail-3.22-crash-fix.patch58
-rw-r--r--mail-filter/procmail/files/procmail-3.22-glibc-2.10.patch70
-rw-r--r--mail-filter/procmail/files/procmail-3.24-gentoo-prefix.patch (renamed from mail-filter/procmail/files/procmail-prefix.patch)125
-rw-r--r--mail-filter/procmail/files/procmail-3.24-lazy-bindings.patch (renamed from mail-filter/procmail/files/procmail-lazy-bindings.diff)8
-rw-r--r--mail-filter/procmail/files/procmail-3.24-maildir.patch16
-rw-r--r--mail-filter/procmail/files/procmail-comsat-segfault.diff20
-rw-r--r--mail-filter/procmail/files/procmail-maxprocs-fix.diff11
-rw-r--r--mail-filter/procmail/files/procmail-pipealloc.diff21
-rw-r--r--mail-filter/procmail/metadata.xml7
-rw-r--r--mail-filter/procmail/procmail-3.24.ebuild (renamed from mail-filter/procmail/procmail-3.22-r15.ebuild)52
-rw-r--r--mail-filter/pyzor/Manifest2
-rw-r--r--mail-filter/pyzor/metadata.xml7
-rw-r--r--mail-filter/pyzor/pyzor-1.0.0_p20200523.ebuild62
-rw-r--r--mail-filter/pyzor/pyzor-1.0.0_p20211223.ebuild59
-rw-r--r--mail-filter/razor/metadata.xml2
-rw-r--r--mail-filter/razor/razor-2.85-r4.ebuild (renamed from mail-filter/razor/razor-2.85-r3.ebuild)16
-rw-r--r--mail-filter/rblcheck/metadata.xml2
-rw-r--r--mail-filter/rspamd/Manifest4
-rw-r--r--mail-filter/rspamd/files/rspamd-2.5-unbundle-snowball.patch23
-rw-r--r--mail-filter/rspamd/files/rspamd-2.6-cmake-lua-version.patch44
-rw-r--r--mail-filter/rspamd/files/rspamd-2.6-unbundle-lua.patch53
-rw-r--r--mail-filter/rspamd/files/rspamd-2.6-unbundle-zstd.patch128
-rw-r--r--mail-filter/rspamd/files/rspamd-2.7-cmake-lua-version.patch49
-rw-r--r--mail-filter/rspamd/files/rspamd-2.7-unbundle-zstd.patch125
-rw-r--r--mail-filter/rspamd/files/rspamd-3.6-cmake-lua-version.patch64
-rw-r--r--mail-filter/rspamd/files/rspamd-3.6-unbundle-lua.patch61
-rw-r--r--mail-filter/rspamd/files/rspamd-3.6-unbundle-snowball.patch20
-rw-r--r--mail-filter/rspamd/metadata.xml19
-rw-r--r--mail-filter/rspamd/rspamd-2.6-r100.ebuild116
-rw-r--r--mail-filter/rspamd/rspamd-2.7-r100.ebuild116
-rw-r--r--mail-filter/rspamd/rspamd-3.8.1.ebuild155
-rw-r--r--mail-filter/rspamd/rspamd-3.8.4.ebuild163
-rw-r--r--mail-filter/rspamd/rspamd-9999.ebuild90
-rw-r--r--mail-filter/scmail/files/scmail-gauche-0.9.10.patch22
-rw-r--r--mail-filter/scmail/metadata.xml2
-rw-r--r--mail-filter/scmail/scmail-1.3.ebuild5
-rw-r--r--mail-filter/sieve-connect/metadata.xml2
-rw-r--r--mail-filter/sigh/Manifest1
-rw-r--r--mail-filter/sigh/files/sigh-1607.1.6-fno-common.patch19
-rwxr-xr-xmail-filter/sigh/files/sigh.initd22
-rw-r--r--mail-filter/sigh/metadata.xml19
-rw-r--r--mail-filter/sigh/sigh-1607.1.6-r1.ebuild30
-rw-r--r--mail-filter/spamassassin-botnet/metadata.xml2
-rw-r--r--mail-filter/spamassassin-botnet/spamassassin-botnet-0.8-r1.ebuild10
-rw-r--r--mail-filter/spamassassin/Manifest3
-rw-r--r--mail-filter/spamassassin/files/3.4.6-configure-clang16.patch44
-rw-r--r--mail-filter/spamassassin/files/4.0.0-DnsResolver-udpsize.patch16
-rw-r--r--mail-filter/spamassassin/files/4.0.0-sa-update-rdatastr.patch12
-rw-r--r--mail-filter/spamassassin/files/4.0.0-tests-dnsbl_subtests.t.patch14
-rw-r--r--mail-filter/spamassassin/files/4.0.0-tests-strip2.t.patch20
-rw-r--r--mail-filter/spamassassin/files/geoip-4.0.0.cf86
-rw-r--r--mail-filter/spamassassin/files/update-spamassassin-rules-r1.cron9
-rw-r--r--mail-filter/spamassassin/metadata.xml5
-rw-r--r--mail-filter/spamassassin/spamassassin-3.4.6-r2.ebuild (renamed from mail-filter/spamassassin/spamassassin-3.4.5.ebuild)7
-rw-r--r--mail-filter/spamassassin/spamassassin-4.0.0-r3.ebuild (renamed from mail-filter/spamassassin/spamassassin-3.4.6.ebuild)46
-rw-r--r--mail-filter/spamassassin/spamassassin-4.0.0-r4.ebuild340
-rw-r--r--mail-filter/spamdyke/Manifest1
-rw-r--r--mail-filter/spamdyke/metadata.xml18
-rw-r--r--mail-filter/spamdyke/spamdyke-5.0.1.ebuild84
-rw-r--r--mail-filter/spampd/Manifest2
-rw-r--r--mail-filter/spampd/files/init8
-rw-r--r--mail-filter/spampd/files/init-r123
-rw-r--r--mail-filter/spampd/files/spampd-2.61-no-pid-file.patch11
-rw-r--r--mail-filter/spampd/files/spampd.service11
-rw-r--r--mail-filter/spampd/files/spampd.service.conf5
-rw-r--r--mail-filter/spampd/metadata.xml2
-rw-r--r--mail-filter/spampd/spampd-2.42.ebuild25
-rw-r--r--mail-filter/spampd/spampd-2.61.ebuild45
-rw-r--r--mail-filter/spamprobe/files/spamprobe-1.4d-gcc11-const-comp.patch13
-rw-r--r--mail-filter/spamprobe/metadata.xml2
-rw-r--r--mail-filter/spamprobe/spamprobe-1.4d-r2.ebuild4
-rw-r--r--mail-filter/spamprobe/spamprobe-1.4d-r3.ebuild50
-rw-r--r--mail-filter/spf-engine/Manifest4
-rw-r--r--mail-filter/spf-engine/metadata.xml2
-rw-r--r--mail-filter/spf-engine/spf-engine-2.0.2-r1.ebuild48
-rw-r--r--mail-filter/spf-engine/spf-engine-2.9.2.ebuild79
-rw-r--r--mail-filter/spf-engine/spf-engine-3.0.3.ebuild74
-rw-r--r--mail-filter/spf-engine/spf-engine-3.0.4-r1.ebuild74
-rw-r--r--mail-filter/sqlgrey/Manifest1
-rw-r--r--mail-filter/sqlgrey/files/sqlgrey-1.7.6-init.patch18
-rw-r--r--mail-filter/sqlgrey/metadata.xml2
-rw-r--r--mail-filter/sqlgrey/sqlgrey-1.7.6-r2.ebuild252
-rw-r--r--mail-filter/sqlgrey/sqlgrey-1.8.0.ebuild5
-rw-r--r--mail-filter/zdkimfilter/Manifest7
-rw-r--r--mail-filter/zdkimfilter/metadata.xml2
-rw-r--r--mail-filter/zdkimfilter/zdkimfilter-3.13-r1.ebuild (renamed from mail-filter/zdkimfilter/zdkimfilter-2.2.ebuild)12
-rw-r--r--mail-filter/zdkimfilter/zdkimfilter-3.14.ebuild (renamed from mail-filter/zdkimfilter/zdkimfilter-1.8.ebuild)12
-rw-r--r--mail-filter/zdkimfilter/zdkimfilter-3.15.ebuild (renamed from mail-filter/zdkimfilter/zdkimfilter-2.1.ebuild)20
-rw-r--r--mail-filter/zdkimfilter/zdkimfilter-3.17.ebuild43
244 files changed, 4961 insertions, 3250 deletions
diff --git a/mail-filter/MailScanner/MailScanner-4.84.5.2.ebuild b/mail-filter/MailScanner/MailScanner-4.84.5.2.ebuild
index 426c5373fb9b..f7d840c8624b 100644
--- a/mail-filter/MailScanner/MailScanner-4.84.5.2.ebuild
+++ b/mail-filter/MailScanner/MailScanner-4.84.5.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -319,7 +319,7 @@ pkg_postinst() {
/etc/MailScanner/MailScanner.conf.pre_upgrade.${MY_PV} \
/etc/MailScanner/MailScanner.conf.${MY_PV} \
> /etc/MailScanner/MailScanner.conf 2> /dev/null
- eend
+ eend $?
else
cp /etc/MailScanner/MailScanner.conf.sample \
/etc/MailScanner/MailScanner.conf
diff --git a/mail-filter/MailScanner/metadata.xml b/mail-filter/MailScanner/metadata.xml
index 7c83ac4c13b3..d5cb8c3c2644 100644
--- a/mail-filter/MailScanner/metadata.xml
+++ b/mail-filter/MailScanner/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>patrick@gentoo.org</email>
diff --git a/mail-filter/afew/Manifest b/mail-filter/afew/Manifest
index 80deed73ca07..666bd28556dc 100644
--- a/mail-filter/afew/Manifest
+++ b/mail-filter/afew/Manifest
@@ -1,2 +1 @@
-DIST afew-3.0.0.tar.gz 36525 BLAKE2B fd9b676ad00d9f6d989d8901f8885a7861d753ab96e4a768f2a1118b72893517fc3a8122a7a63d2e26659bf1afc2467bc7503f279b8037c65da9c250c18b152b SHA512 8d1947d547bde7fdc9ec2fc8fb212165fecc1cd4bc37c2dda60133e5ffe31dee1393ad0a92e4f0e2c85863a01f7ae252555e88868fa8ba5dece8380080f0e36c
DIST afew-3.0.1.tar.gz 40092 BLAKE2B 9ce125ec2359f7cf4630b9602b3068327adc06a699d325c90bc9b545df9ce7f3a62623cc733dfec55ee3e51523e4512ebec04e7186470fc56bb1589a7141cbc9 SHA512 1a76ecc78ed9fb8598be74c48a1d51c78db20df08b27c04c24779aaba01aa457c776457a647c54a5e92f0fda364a86810957a95c0d3f686e77e083d2103b1bf1
diff --git a/mail-filter/afew/afew-3.0.0.ebuild b/mail-filter/afew/afew-3.0.0.ebuild
deleted file mode 100644
index b78e2e89172a..000000000000
--- a/mail-filter/afew/afew-3.0.0.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python3_7 )
-
-inherit distutils-r1
-
-DESCRIPTION="Initial tagging script for Notmuch"
-HOMEPAGE="https://github.com/afewmail/afew"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="doc"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/chardet[${PYTHON_MULTI_USEDEP}]
- dev-python/dkimpy[${PYTHON_MULTI_USEDEP}]
- net-mail/notmuch[python,${PYTHON_MULTI_USEDEP}]
- ')"
-DEPEND="
- $(python_gen_cond_dep '
- dev-python/sphinx[${PYTHON_MULTI_USEDEP}]
- ')"
-
-DOCS=( "README.rst" )
-
-python_prepare_all() {
- sed -r \
- -e "s/^([[:space:]]+)use_scm_version=.*,$/\1version='${PV}',/" \
- -e "/^([[:space:]]+)setup_requires=.*,$/d" \
- -i setup.py || die
- distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
- esetup.py build_sphinx -b man --build-dir=docs/build
- use doc && esetup.py build_sphinx -b html --build-dir=docs/build
-}
-
-python_install_all() {
- doman docs/build/man/*
- dodoc afew/defaults/afew.config
- use doc && local HTML_DOCS=( docs/build/html/. )
-}
diff --git a/mail-filter/afew/afew-3.0.1.ebuild b/mail-filter/afew/afew-3.0.1.ebuild
index 96767c744cd6..a0e78506c838 100644
--- a/mail-filter/afew/afew-3.0.1.ebuild
+++ b/mail-filter/afew/afew-3.0.1.ebuild
@@ -1,17 +1,16 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_SINGLE_IMPL=1
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{9..11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Initial tagging script for Notmuch"
HOMEPAGE="https://github.com/afewmail/afew"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="ISC"
SLOT="0"
diff --git a/mail-filter/afew/metadata.xml b/mail-filter/afew/metadata.xml
index 3013292dd6de..6b2117db4e43 100644
--- a/mail-filter/afew/metadata.xml
+++ b/mail-filter/afew/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>guillaumeseren@gmail.com</email>
diff --git a/mail-filter/amavisd-milter/Manifest b/mail-filter/amavisd-milter/Manifest
index b6d40e98e2c3..49de70573234 100644
--- a/mail-filter/amavisd-milter/Manifest
+++ b/mail-filter/amavisd-milter/Manifest
@@ -1,2 +1,3 @@
DIST amavisd-milter-1.7.0.tar.gz 192688 BLAKE2B 882ecdc1f4b1b3fba2f7f82ffb3e7f4ecf27ce42fc14df926a508b852dd142161af9ce65bc367a5968f64a29a40cb362a0783bdbaf4dff2559715bfd53170f73 SHA512 52fdfe4acdd94e387de63d93aa3347dce46e7e16b8ab51679c7bbfc4f6faba160de5ca55aae141cbd06f3d9d1122dea67fdd67562dd5b8314055f7f6071545af
DIST amavisd-milter-1.7.1.tar.gz 193425 BLAKE2B e93f7f8f4c3b5e59fbfc160e60c8620231f8ab2a5fa06c39cf42b71c0c0abca4e27a1334d01e89337628ccdd685e059be469eeafc385521a780de1bf82bf3070 SHA512 db2fd53a3047a21fb20743fce7d01899eb92efffc62159d3022e0b5014dbfb3667e1664868734d84b58f5daadd8270d3e05a68c60a01a1ac35d104105cc86586
+DIST amavisd-milter-1.7.2.tar.gz 191224 BLAKE2B 82865acacec1004e611bbafd940d5721660b0daa1af1aea742d4176c613ce2af0e4bde523d0363b97e3f361270641acda477797eab9e8df9feb266c80ef6009c SHA512 639a5a4f92131f9b8d004255819e36dedd529ec95f8290663c6ea5860dbbce049a822ba0e68158228716778265009b93024e9102defdf9250d4e889157008181
diff --git a/mail-filter/amavisd-milter/amavisd-milter-1.7.0-r1.ebuild b/mail-filter/amavisd-milter/amavisd-milter-1.7.0-r1.ebuild
index ec76a0bd1156..e4e1e71f157a 100644
--- a/mail-filter/amavisd-milter/amavisd-milter-1.7.0-r1.ebuild
+++ b/mail-filter/amavisd-milter/amavisd-milter-1.7.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -12,8 +12,11 @@ SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
-DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail )
- elibc_uclibc? ( net-libs/libnsl:0= )"
+DEPEND="
+ || (
+ mail-filter/libmilter
+ mail-mta/sendmail
+ )"
RDEPEND="${DEPEND}
mail-filter/amavisd-new"
diff --git a/mail-filter/amavisd-milter/amavisd-milter-1.7.1.ebuild b/mail-filter/amavisd-milter/amavisd-milter-1.7.1.ebuild
index 1f5babae3926..1e75c4994670 100644
--- a/mail-filter/amavisd-milter/amavisd-milter-1.7.1.ebuild
+++ b/mail-filter/amavisd-milter/amavisd-milter-1.7.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -12,8 +12,11 @@ SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
-DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail )
- elibc_uclibc? ( net-libs/libnsl:0= )"
+DEPEND="
+ || (
+ mail-filter/libmilter
+ mail-mta/sendmail
+ )"
RDEPEND="${DEPEND}
mail-filter/amavisd-new"
diff --git a/mail-filter/amavisd-milter/amavisd-milter-1.7.2-r1.ebuild b/mail-filter/amavisd-milter/amavisd-milter-1.7.2-r1.ebuild
new file mode 100644
index 000000000000..e7fe81bffc46
--- /dev/null
+++ b/mail-filter/amavisd-milter/amavisd-milter-1.7.2-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+DESCRIPTION="sendmail milter for amavisd-new"
+HOMEPAGE="https://github.com/prehor/amavisd-milter/"
+SRC_URI="https://github.com/prehor/${PN}/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="mail-filter/libmilter:="
+RDEPEND="${DEPEND}
+ mail-filter/amavisd-new"
+
+DOCS=( AMAVISD-MILTER.md CHANGES INSTALL )
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/amavisd-milter.initd-r2" amavisd-milter
+ newconfd "${FILESDIR}/amavisd-milter.confd" amavisd-milter
+}
diff --git a/mail-filter/amavisd-milter/amavisd-milter-1.7.2.ebuild b/mail-filter/amavisd-milter/amavisd-milter-1.7.2.ebuild
new file mode 100644
index 000000000000..ced1ec9e7e1f
--- /dev/null
+++ b/mail-filter/amavisd-milter/amavisd-milter-1.7.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+DESCRIPTION="sendmail milter for amavisd-new"
+HOMEPAGE="https://github.com/prehor/amavisd-milter/"
+SRC_URI="https://github.com/prehor/${PN}/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="
+ || (
+ mail-filter/libmilter
+ mail-mta/sendmail
+ )"
+RDEPEND="${DEPEND}
+ mail-filter/amavisd-new"
+
+DOCS=( AMAVISD-MILTER.md CHANGES INSTALL )
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/amavisd-milter.initd-r2" amavisd-milter
+ newconfd "${FILESDIR}/amavisd-milter.confd" amavisd-milter
+}
diff --git a/mail-filter/amavisd-milter/metadata.xml b/mail-filter/amavisd-milter/metadata.xml
index ec6b90fcfa96..f353ae51ac29 100644
--- a/mail-filter/amavisd-milter/metadata.xml
+++ b/mail-filter/amavisd-milter/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>grknight@gentoo.org</email>
- <name>Brian Evans</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">prehor/amavisd-milter</remote-id>
</upstream>
diff --git a/mail-filter/amavisd-new/Manifest b/mail-filter/amavisd-new/Manifest
index 052d0bf39cc4..766605ed8cee 100644
--- a/mail-filter/amavisd-new/Manifest
+++ b/mail-filter/amavisd-new/Manifest
@@ -1,2 +1,2 @@
-DIST amavis-v2.12.0.tar.bz2 873702 BLAKE2B cae44bb9cfa9125f44b1ef548947a5f826e91fc349b12a52f0267933e65c450a708c7a18e5ae90ee1a0d452d0b3d30a6c1cabcc310e3609de1eda8c35f222306 SHA512 f8d2dfb6e7d694c76c0ebca7592a3c85ff9b4911cbe43b3eb6d5002541bf036adfbf47c18df4b10c72bcceee0d8701b8c474e6432c5c136ca25170e42098d844
-DIST amavis-v2.12.1.tar.bz2 874339 BLAKE2B 23197298c448bae7bfaed62fda5065f507556737250caddde0d3bdec5fe219ab8834d4cbb1e06f443f2fc00b643d12d96447f58f37198b3ae7b96985f29ef2bf SHA512 8a2cef6ff6e2fa7f5d2e00a433a3f3ec7a15c47e21deadf6a25f50e0e29ad20d8641f474cd5d0dfcd3715458b07f08272f6df35efb2137b7c6a74a460cb91013
+DIST amavis-v2.12.2.tar.bz2 874946 BLAKE2B 0b52cb23e11d0b7b346e53b979b580b76f51ce22516a8e2ef6c6d579f1693a9d175ebd92e9cba74e4bed68b012250808e2f827182dddf5addbbb40f2602294f7 SHA512 8a6ab4441a9ef2ee757c839f656bc16f00dd9213f6cc0bb976d7f2b76793adf023d33a42099f07b0dae13281171db9ba0405028882a86e2230126e8d6a29a4ff
+DIST amavis-v2.13.0.tar.bz2 890721 BLAKE2B ceb2d020a9066b530a7a05de30c1a3483010f018e9344a354a6a372581bc6442ac74990b733cf4fd4d2e63d3adfe7140ebaca7d050becb69cc26cd010d032afd SHA512 b4d623b212bd2bbdcd192cee603941af3854bcd6c09ed1d6194138c0d7e10160ab1fece821bdd134ae86a1f8e5ccd4b3f92643f2f2b4c73c3f0c1e30e4b97441
diff --git a/mail-filter/amavisd-new/amavisd-new-2.12.0-r5.ebuild b/mail-filter/amavisd-new/amavisd-new-2.12.2.ebuild
index f2e542b6b7c8..16b3bf07249a 100644
--- a/mail-filter/amavisd-new/amavisd-new-2.12.0-r5.ebuild
+++ b/mail-filter/amavisd-new/amavisd-new-2.12.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,8 +11,8 @@ SRC_URI="https://gitlab.com/amavis/amavis/-/archive/v${PV}/amavis-v${PV}.tar.bz2
LICENSE="GPL-2 BSD-2"
SLOT="0"
-KEYWORDS="amd64 ppc ppc64 sparc x86"
-IUSE="clamav courier dkim ldap mysql postgres qmail razor rspamd rspamd-https snmp spamassassin"
+KEYWORDS="amd64 ~arm64 ppc ppc64 sparc x86"
+IUSE="clamav courier dkim ldap mysql postgres qmail razor rspamd rspamd-https selinux snmp spamassassin"
MY_RSPAMD_DEPEND="dev-perl/HTTP-Message
dev-perl/JSON
@@ -22,12 +22,11 @@ RDEPEND="${DEPEND}
app-arch/arc
app-arch/bzip2
app-arch/cabextract
- app-arch/cpio
+ app-alternatives/cpio
app-arch/gzip
app-arch/lha
app-arch/lrzip
app-arch/lzop
- app-arch/ncompress
app-arch/p7zip
app-arch/pax
app-arch/arj
@@ -69,6 +68,7 @@ RDEPEND="${DEPEND}
rspamd-https? ( ${MY_RSPAMD_DEPEND}
dev-perl/LWP-Protocol-https
dev-perl/Net-SSLeay )
+ selinux? ( sec-policy/selinux-amavis )
snmp? ( net-analyzer/net-snmp[perl] )
spamassassin? ( mail-filter/spamassassin dev-perl/Image-Info )"
diff --git a/mail-filter/amavisd-new/amavisd-new-2.12.1.ebuild b/mail-filter/amavisd-new/amavisd-new-2.13.0.ebuild
index 4245de32669f..68aee7a1fbdb 100644
--- a/mail-filter/amavisd-new/amavisd-new-2.12.1.ebuild
+++ b/mail-filter/amavisd-new/amavisd-new-2.13.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit systemd
+inherit systemd perl-module
DESCRIPTION="High-performance interface between the MTA and content checkers"
HOMEPAGE="https://gitlab.com/amavis/amavis"
@@ -11,8 +11,10 @@ SRC_URI="https://gitlab.com/amavis/amavis/-/archive/v${PV}/amavis-v${PV}.tar.bz2
LICENSE="GPL-2 BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="clamav courier dkim ldap mysql postgres qmail razor rspamd rspamd-https snmp spamassassin"
+KEYWORDS="~amd64 ~x86"
+IUSE="clamav dkim ldap mysql postgres razor rspamd rspamd-https selinux snmp spamassassin test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( spamassassin )"
MY_RSPAMD_DEPEND="dev-perl/HTTP-Message
dev-perl/JSON
@@ -22,12 +24,11 @@ RDEPEND="${DEPEND}
app-arch/arc
app-arch/bzip2
app-arch/cabextract
- app-arch/cpio
+ app-alternatives/cpio
app-arch/gzip
app-arch/lha
app-arch/lrzip
app-arch/lzop
- app-arch/ncompress
app-arch/p7zip
app-arch/pax
app-arch/arj
@@ -44,7 +45,7 @@ RDEPEND="${DEPEND}
>=dev-perl/Mail-DKIM-0.31
>=dev-perl/MailTools-1.58
>=dev-perl/MIME-tools-5.415
- dev-perl/Net-LibIDN
+ dev-perl/Net-LibIDN2
>=dev-perl/Net-Server-0.91
dev-perl/Net-SSLeay
dev-perl/Unix-Syslog
@@ -69,20 +70,68 @@ RDEPEND="${DEPEND}
rspamd-https? ( ${MY_RSPAMD_DEPEND}
dev-perl/LWP-Protocol-https
dev-perl/Net-SSLeay )
+ selinux? ( sec-policy/selinux-amavis )
snmp? ( net-analyzer/net-snmp[perl] )
spamassassin? ( mail-filter/spamassassin dev-perl/Image-Info )"
+BDEPEND="${RDEPEND}
+ dev-perl/Dist-Zilla
+ virtual/perl-ExtUtils-MakeMaker
+ test? (
+ virtual/perl-Test-Harness
+ dev-perl/Test-Class
+ dev-perl/DBI
+ dev-perl/perl-ldap
+ dev-perl/NetAddr-IP
+ dev-perl/Test-Most
+ )"
+
AMAVIS_ROOT="/var/lib/amavishome"
S="${WORKDIR}/amavis-v${PV}"
-src_prepare() {
- if use courier ; then
- eapply -p0 amavisd-new-courier.patch
- fi
+dzil_to_distdir() {
+ local dzil_root dest has_missing modname dzil_version
+ dzil_root="$1"
+ dest="$2"
- if use qmail ; then
- eapply -p0 amavisd-new-qmqpqq.patch
- fi
+ cd "${dzil_root}" || die "Can't enter workdir '${dzil_root}'";
+
+ dzil_version="$(dzil version)" || die "Error invoking 'dzil version'"
+ einfo "Generating CPAN dist with ${dzil_version}"
+
+ has_missing=""
+
+ einfo "Checking dzil authordeps"
+ while IFS= read -d $'\n' -r modname; do
+ if [[ -z "${has_missing}" ]]; then
+ has_missing=1
+ eerror "'dzil authordeps' indicates missing build dependencies"
+ eerror "These will prevent building, please report a bug"
+ eerror "Missing:"
+ fi
+ S= eerror " ${modname}"
+ done < <( dzil authordeps --missing --versions )
+
+ [[ -z "${has_missing}" ]] || die "Satisfy all missing authordeps first"
+
+ einfo "Checking dzil build deps"
+ while IFS= read -d $'\n' -r modname; do
+ if [[ -z "${has_missing}" ]]; then
+ has_missing=1
+ ewarn "'dzil listdeps' indicates missing build dependencies"
+ ewarn "These may prevent building, please report a bug if they do"
+ ewarn "Missing:"
+ fi
+ ewarn " ${modname}"
+ done < <( dzil listdeps --missing --versions --author )
+
+ einfo "Generating release"
+ dzil build --notgz --in "${dest}" || die "Unable to build CPAN dist in '${dest}'"
+}
+
+src_prepare() {
+ # perl-module doesn't account for this being a directory
+ mv README_FILES READ_FILES || die
# We need to fix the daemon_user and daemon_group in amavis-mc even
# though we're going to run it in the foreground, because it calls
@@ -91,36 +140,67 @@ src_prepare() {
sed -i \
-e '/daemon/s/vscan/amavis/' \
-e "s:'/var/virusmails':\"\$MYHOME/quarantine\":" \
- "${S}/amavisd.conf" "${S}/amavis-mc" || die "missing conf file"
+ "${S}/conf/amavisd.conf" "${S}/bin/amavis-mc" || die "missing conf file"
if ! use dkim ; then
- sed -i -e '/enable_dkim/s/1/0/' "${S}/amavisd.conf" \
+ sed -i -e '/enable_dkim/s/1/0/' "${S}/conf/amavisd.conf" \
|| die "missing conf file - dkim"
fi
if ! use spamassassin ; then
sed -i -e \
"/^#[[:space:]]*@bypass_spam_checks_maps[[:space:]]*=[[:space:]]*(1)/s/^#//" \
- "${S}/amavisd.conf" || die "missing conf file - sa"
+ "${S}/conf/amavisd.conf" || die "missing conf file - sa"
+ fi
+
+ # needs ZMQ::LibZMQ3 which only suports net-libs/zeromq-3*,
+ # long since removed from tree
+ perl_rm_files t/Amavis/ZMQTest.t
+ sed -e '/^ZMQ::LibZMQ3 =/d' \
+ -i dist.ini || die "Can't patch dist.ini"
+
+ rm bin/{amavis-services,amavis-mc,amavisd-snmp-subagent-zmq}
+
+ if ! use snmp ; then
+ rm bin/amavisd-snmp-subagent
fi
eapply_user
+
+ # prevent distdir-in-distdir
+ mv "${S}" "${T}" || die
+ dzil_to_distdir "${T}/amavis-v${PV}" "${S}"
+
+ perl-module_src_prepare
+}
+
+src_test() {
+ prove -lr t || die
}
src_install() {
- dosbin amavisd{,-agent,-nanny,-release,-signer,-status}
- dobin p0f-analyzer.pl amavisd-submit
+ perl-module_src_install
+ mkdir "${ED}"/usr/sbin
+ mv "${ED}"/usr/bin/amavisd "${ED}"/usr/sbin/amavisd || die
+ mv "${ED}"/usr/bin/amavisd-agent "${ED}"/usr/sbin/amavisd-agent || die
+ mv "${ED}"/usr/bin/amavisd-nanny "${ED}"/usr/sbin/amavisd-nanny || die
+ mv "${ED}"/usr/bin/amavisd-release "${ED}"/usr/sbin/amavisd-release || die
+ mv "${ED}"/usr/bin/amavisd-signer "${ED}"/usr/sbin/amavisd-signer || die
+ mv "${ED}"/usr/bin/amavisd-status "${ED}"/usr/sbin/amavisd-status || die
+ dobin contrib/p0f-analyzer.pl
if use snmp ; then
- dosbin amavisd-snmp-subagent
+ mv "${ED}"/usr/bin/amavisd-snmp-subagent "${ED}"/usr/sbin/amavisd-snmp-subagent || die
newinitd "${FILESDIR}/amavisd-snmp-subagent.initd" \
amavisd-snmp-subagent
dodoc AMAVIS-MIB.txt
fi
+ perl_fix_packlist
+
if use ldap ; then
insinto /etc/openldap/schema
- newins LDAP.schema "${PN}.schema"
+ newins contrib/LDAP.schema "${PN}.schema"
fi
# The config file should be root:amavis so that the amavis user can
@@ -128,7 +208,7 @@ src_install() {
# own everything in his home directory.
insinto /etc
insopts -m0640 -g amavis
- doins amavisd.conf
+ doins conf/amavisd.conf
# Implementation detail? Keepdir calls dodir under the hood.
diropts -o amavis -g amavis
@@ -144,20 +224,21 @@ src_install() {
systemd_newunit "${FILESDIR}/amavisd.service-r1" amavisd.service
- dodoc AAAREADME.first INSTALL MANIFEST RELEASE_NOTES TODO \
- amavisd.conf-default amavisd-custom.conf
+ dodoc AAAREADME.first RELEASE_NOTES TODO \
+ conf/amavisd.conf-default conf/amavisd-custom.conf \
+ conf/amavisd-docker.conf
docinto README_FILES
- dodoc README_FILES/README*
- dodoc -r README_FILES/*.{html,css}
+ dodoc READ_FILES/README*
+ dodoc -r READ_FILES/*.{html,css}
docinto README_FILES/images
- dodoc README_FILES/images/*.png
+ dodoc READ_FILES/images/*.png
docinto README_FILES/images/callouts
- dodoc README_FILES/images/callouts/*.png
+ dodoc READ_FILES/images/callouts/*.png
docinto test-messages
- dodoc test-messages/README
- dodoc test-messages/sample.tar.gz.compl
+ dodoc t/messages/README
+ dodoc t/messages/sample.tar.gz.compl
}
pkg_preinst() {
diff --git a/mail-filter/amavisd-new/metadata.xml b/mail-filter/amavisd-new/metadata.xml
index c6699b09b7c8..564c4ee745b7 100644
--- a/mail-filter/amavisd-new/metadata.xml
+++ b/mail-filter/amavisd-new/metadata.xml
@@ -1,21 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>gentoo@seichter.de</email>
- <name>Ralph Seichter</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
+ <!-- maintainer-needed -->
<use>
<flag name="courier">Add courier support</flag>
<flag name="dkim">Add DomainKeys Identified Mail support</flag>
<flag name="qmail">Add qmail support</flag>
- <flag name="razor">Add support for mail-filter/razor</flag>
- <flag name="rspamd">Add support for mail-filter/rspamd extension (HTTP only)</flag>
- <flag name="rspamd-https">Add support for mail-filter/rspamd extension (both HTTP and HTTPS)</flag>
- <flag name="spamassassin">Add support for mail-filter/spamassassin</flag>
+ <flag name="razor">Add support for <pkg>mail-filter/razor</pkg></flag>
+ <flag name="rspamd">Add support for <pkg>mail-filter/rspamd</pkg> extension (HTTP only)</flag>
+ <flag name="rspamd-https">Add support for <pkg>mail-filter/rspamd</pkg> extension (both HTTP and HTTPS)</flag>
+ <flag name="spamassassin">Add support for <pkg>mail-filter/spamassassin</pkg></flag>
</use>
+ <upstream>
+ <remote-id type="gitlab">amavis/amavis</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/mail-filter/bmf/bmf-0.9.4-r3.ebuild b/mail-filter/bmf/bmf-0.9.4-r3.ebuild
index d07b5715873f..b64ad0fc8d87 100644
--- a/mail-filter/bmf/bmf-0.9.4-r3.ebuild
+++ b/mail-filter/bmf/bmf-0.9.4-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,7 +12,7 @@ SRC_URI="mirror://sourceforge/bmf/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ppc x86"
+KEYWORDS="amd64 ~ppc x86"
DEPEND="mysql? ( dev-db/mysql-connector-c:0= )
berkdb? ( >=sys-libs/db-3.2.9 )"
diff --git a/mail-filter/bmf/bmf-0.9.4-r4.ebuild b/mail-filter/bmf/bmf-0.9.4-r4.ebuild
new file mode 100644
index 000000000000..f557eb7c6cda
--- /dev/null
+++ b/mail-filter/bmf/bmf-0.9.4-r4.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Fast and small Bayesian spam filter"
+HOMEPAGE="https://sourceforge.net/projects/bmf/"
+SRC_URI="mirror://sourceforge/bmf/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="mysql berkdb"
+
+DEPEND="
+ mysql? ( dev-db/mysql-connector-c:0= )
+ berkdb? ( >=sys-libs/db-3.2.9:= )"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}_QA.patch" )
+
+src_prepare() {
+ # respect CFLAGS/LDFLAGS/CC
+ sed -i \
+ -e '/D_LINUX/s/CFLAGS="$CCDBG/CFLAGS+=" $CCDBG/' \
+ -e 's/LDFLAGS="$LDDBG/LDFLAGS+=" $LDDBG/' \
+ -e "s/CC=gcc/CC=$(tc-getCC)/" \
+ "${S}/configure" || die
+
+ # include mysql headers
+ sed -i -e '/HAVE_MYSQL/s/HAVE_MYSQL/HAVE_MYSQL `mysql_config --include`/' \
+ "${S}/configure" || die
+
+ # We don't need to be root to run install
+ sed -i -e 's/install: checkroot bmf/install: bmf/' Makefile.in || die
+
+ default
+}
+
+src_configure() {
+ # this is not an autotools script
+ ./configure \
+ $(use_with mysql) \
+ $(use_with berkdb libdb) || die
+}
+
+pkg_postinst() {
+ elog
+ elog "Important: Remember to train bmf before you start using it."
+ elog "See the README file for further instructions on training and using bmf"
+ elog "with procmail."
+ elog
+}
diff --git a/mail-filter/bmf/metadata.xml b/mail-filter/bmf/metadata.xml
index ca724d432d40..fa9e39f4b11b 100644
--- a/mail-filter/bmf/metadata.xml
+++ b/mail-filter/bmf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/bogofilter/Manifest b/mail-filter/bogofilter/Manifest
index 30f3319892ae..e1b22449d116 100644
--- a/mail-filter/bogofilter/Manifest
+++ b/mail-filter/bogofilter/Manifest
@@ -1 +1 @@
-DIST bogofilter-1.2.4.tar.bz2 887848 BLAKE2B 4ed5c15a44f5a166e3858581ccc59b36ebde2fe1eb402cc0471378600b555b2452f4eae04d7d37dcb7638568db0c196da2d2504a3a569d7571c4aacd7e0ceea7 SHA512 e8c0b6bcc14f12fbbb2752e697a6d9065e17abfca3f70045ce9fe668d01c1cfad4adaa35c81546ecdd3639b0c28f3f4776bb5ed4699f21e9e2a5b19ca33479db
+DIST bogofilter-1.2.5.tar.xz 801240 BLAKE2B 90fc5f0ab258ada722ca2fb79d17279b621eb089f646eade2ab41b78c44deea7f3fd8f219053e09ce5b4c64f5fc81f43a17c20b84261b22d5529c06106e80b3c SHA512 3a7280485cfe5802dd3e9721c153f88ccf28bff7a6a24590e985e860d1f1e0ddea7bde8a8e5ad1ff643e94c9fd7b26b2a5ed5a9fb991cee3fd5b0ce67ce9abfe
diff --git a/mail-filter/bogofilter/bogofilter-1.2.4-r3.ebuild b/mail-filter/bogofilter/bogofilter-1.2.5-r1.ebuild
index 833ba677f9bf..994fb67c87bb 100644
--- a/mail-filter/bogofilter/bogofilter-1.2.4-r3.ebuild
+++ b/mail-filter/bogofilter/bogofilter-1.2.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,13 +6,13 @@ EAPI=7
inherit autotools db-use flag-o-matic toolchain-funcs
DESCRIPTION="Bayesian spam filter designed with fast algorithms, and tuned for speed"
-HOMEPAGE="http://bogofilter.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+HOMEPAGE="https://bogofilter.sourceforge.io/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
-LICENSE="GPL-2"
+LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~sparc x86"
-IUSE="berkdb sqlite tokyocabinet"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="berkdb +sqlite tokyocabinet"
# pax needed for bf_tar
DEPEND="
@@ -30,8 +30,6 @@ DEPEND="
"
RDEPEND="${DEPEND}"
-PATCHES=( "${FILESDIR}/${P}-test-env.patch" )
-
pkg_setup() {
has_version mail-filter/bogofilter || return 0
if ( use berkdb && ! has_version 'mail-filter/bogofilter[berkdb]' ) || \
diff --git a/mail-filter/bogofilter/files/bogofilter-1.2.4-test-env.patch b/mail-filter/bogofilter/files/bogofilter-1.2.4-test-env.patch
deleted file mode 100644
index 8cf109c45519..000000000000
--- a/mail-filter/bogofilter/files/bogofilter-1.2.4-test-env.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/tests/Makefile.am
-+++ b/src/tests/Makefile.am
-@@ -67,7 +67,7 @@
-
- TESTS=$(BUILT_TESTS) $(TESTSCRIPTS)
-
--TESTS_ENVIRONMENT=RUN_FROM_MAKE=1 AWK=$(AWK) srcdir=$(srcdir) SHELL="$(SHELL)" $(SHELL) $(VERBOSE)
-+TESTS_ENVIRONMENT=RUN_FROM_MAKE=1 AWK=$(AWK) srcdir=$(srcdir) SHELL="$(SHELL)" $(VERBOSE)
-
- EXTRA_DIST=$(TESTSCRIPTS) t.frame t.save t.skel \
- printcore t._abort unsort.pl \
diff --git a/mail-filter/bogofilter/metadata.xml b/mail-filter/bogofilter/metadata.xml
index e8137c9d6c99..d2c940b84c62 100644
--- a/mail-filter/bogofilter/metadata.xml
+++ b/mail-filter/bogofilter/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>johu@gentoo.org</email>
- <name>Johannes Huber</name>
- </maintainer>
+ <!-- maintainer-needed -->
<longdescription>
Bogofilter is a mail filter that classifies mail as spam or ham (non-spam)
by a statistical analysis of the message's header and content (body). The
diff --git a/mail-filter/courier-pythonfilter/Manifest b/mail-filter/courier-pythonfilter/Manifest
index d3b5583d0ca8..77e98db6782e 100644
--- a/mail-filter/courier-pythonfilter/Manifest
+++ b/mail-filter/courier-pythonfilter/Manifest
@@ -1 +1 @@
-DIST courier-pythonfilter-3.0.2.tar.gz 59121 BLAKE2B 6223ddd62c1c1af980720451e3446cd3b2296a243c5c8d3b5e60fd8640e3391ba2e561ea251bbacbb4a1c6cdbe7eccf6f7ff8221d952cf5703d389b0267a1a2f SHA512 62985a3fefc2d324b3ba7035117e88e4e246815e63fe1b681af11a38a20ea55e649a233c1979b918b166f5c2abbcc22037f215b73be298763f777648249cd652
+DIST courier-pythonfilter-3.0.4.tar.gz 63336 BLAKE2B 0a002b68a1828d20258f7671bd91bded3960e1b60cb00ec80ca43fcb783729509c18b2603fbc044649b2514a6911b71b369c0525c87a47719b5328dfd78dcea2 SHA512 00b08b607ed6c613a5a010855c34580d0ea22e11e6ca9d5f2a9806c9f1f9cce15d32b66822433c29e23b71b955da18fe63bf78fb6240e6e6f026a27f52c2d86c
diff --git a/mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.2-r1.ebuild b/mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.4.ebuild
index 9632e2bd0b11..d5a8959c00de 100644
--- a/mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.2-r1.ebuild
+++ b/mail-filter/courier-pythonfilter/courier-pythonfilter-3.0.4.ebuild
@@ -1,14 +1,14 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=no
-inherit distutils-r1
+EAPI=8
+PYTHON_COMPAT=( python3_{9,10,11} )
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
DESCRIPTION="Python filtering architecture for the Courier MTA"
HOMEPAGE="https://pypi.org/project/courier-pythonfilter/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
diff --git a/mail-filter/courier-pythonfilter/metadata.xml b/mail-filter/courier-pythonfilter/metadata.xml
index bb57beb5edb6..8e06c411005a 100644
--- a/mail-filter/courier-pythonfilter/metadata.xml
+++ b/mail-filter/courier-pythonfilter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>hanno@gentoo.org</email>
diff --git a/mail-filter/couriersrs/metadata.xml b/mail-filter/couriersrs/metadata.xml
index 270badf0104d..708c32eddea6 100644
--- a/mail-filter/couriersrs/metadata.xml
+++ b/mail-filter/couriersrs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>hanno@gentoo.org</email>
diff --git a/mail-filter/dcc/Manifest b/mail-filter/dcc/Manifest
index 7eb162306044..d4661daeb0b1 100644
--- a/mail-filter/dcc/Manifest
+++ b/mail-filter/dcc/Manifest
@@ -1 +1,2 @@
DIST dcc-1.3.158.tar.Z 1714175 BLAKE2B 19e11e9e78268e76bf97f16ad6f03f0bb114ec9fbc9b1f8bb6ca7ce72fa419b1e50a6d35ee32ed5352b13da96002d313c00a07395317d33082eb69c9ae60008e SHA512 24fba5ea713e8df1468644508c323d64b3868685716b7cc02263933476940a807cfc4593432a9195371308c83d4ea93653e89634681d95dcb32f5d65c7274599
+DIST dcc-2.3.168.tar.Z 1608203 BLAKE2B d0dac4ee233fede16b4904524126cff4f127e59177d11624acf850861b9f267718efab974edafbd4521bcf78a2c3d626876c23c0af3cc108cd131c197dbc9945 SHA512 52a9671ba355a2d3e82246c3b5cf3875148d48bd314371d9e608643a59922becdf024b880e4bd37f6e36aa50830110600960ffa7a3ddd69ed7239bfc0578f141
diff --git a/mail-filter/dcc/dcc-1.3.158-r2.ebuild b/mail-filter/dcc/dcc-1.3.158-r2.ebuild
new file mode 100644
index 000000000000..6c09223f5624
--- /dev/null
+++ b/mail-filter/dcc/dcc-1.3.158-r2.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Distributed Checksum Clearinghouse"
+HOMEPAGE="https://www.rhyolite.com/dcc/"
+SRC_URI="https://www.rhyolite.com/dcc/source/old/${P}.tar.Z"
+
+LICENSE="DCC GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
+IUSE="cgi ipv6 rrdtool milter"
+
+RDEPEND="
+ dev-lang/perl
+ || (
+ net-ftp/ftp
+ net-misc/curl
+ net-misc/wget
+ www-client/fetch
+ )
+ milter? ( mail-filter/libmilter:= )
+ rrdtool? ( net-analyzer/rrdtool )"
+DEPEND="${RDEPEND}"
+
+dcc_cgibin=var/www/localhost/cgi-bin/dcc
+dcc_homedir=var/dcc
+dcc_libexec=usr/sbin
+dcc_man=usr/share/man
+dcc_rundir=var/run/dcc
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.140-freebsd.patch
+ "${FILESDIR}"/${P}-fno-common.patch
+ "${FILESDIR}"/${P}-clang16.patch
+ "${FILESDIR}"/${P}-c2x.patch
+)
+
+src_configure() {
+ tc-export CC AR RANLIB
+ local myconf=(
+ --bindir="${EPREFIX}"/usr/bin
+ --homedir="${EPREFIX}"/${dcc_homedir}
+ --libexecdir="${EPREFIX}"/${dcc_libexec}
+ --mandir="${EPREFIX}"/usr/share/man
+ --enable-dccifd
+ --enable-server
+ --with-DDC-MD5
+ --with-installroot="${D}"
+ --with-rundir="${EPREFIX}"/${dcc_rundir}
+ --with-uid=root
+ --with-updatedcc_pfile="${EPREFIX}"/${dcc_homedir}/updatecc.pfile
+ --with-db-memory=64
+ --with-max-db-mem=128
+ --with-max-log-size=0
+ --with-make-cmd=${MAKE:-make}
+ $(use_enable ipv6 IPv6)
+ $(use_enable milter dccm)
+ $(use_with cgi cgibin ${dcc_cgibin})
+ $(use_with milter sendmail)
+ )
+
+ einfo "Using config: ${myconf[@]}"
+
+ # This is NOT a normal configure script.
+ ./configure "${myconf[@]}" || die "configure failed!"
+}
+
+moveconf() {
+ local i
+ for i in $@; do
+ mv "${ED}/${dcc_homedir}/${i}" "${ED}"/etc/dcc || die
+ dosym ../../etc/dcc/"${i}" "${dcc_homedir}/${i}"
+ done
+}
+
+src_install() {
+ # stolen from the RPM .spec and modified for gentoo
+ export MANOWN=root
+ export MANGRP=$(id -g -n root)
+ export BINOWN="${MANOWN}"
+ export BINGRP="${MANGRP}"
+ export DCC_PROTO_HOMEDIR="${ED}/${dcc_homedir}"
+ export DCC_CGIBINDIR="${ED}/${dcc_cgibin}"
+ export DCC_SUID="${BINOWN}"
+ export DCC_OWN="${BINOWN}"
+ export DCC_GRP="${BINGRP}"
+
+ dodir /etc/cron.daily "${dcc_homedir}" /usr/bin /usr/sbin /usr/share/man/man{0,8} /etc/dcc
+ if use cgi ; then
+ dodir "${dcc_cgibin}"
+ fi
+ keepdir /var/log/dcc
+
+ emake install
+
+ # branding and setting reasonable defaults
+ sed -e "s/BRAND=\$/BRAND='Gentoo ${PF}'/;" \
+ -e "s/GREY_ENABLE=\$/GREY_ENABLE=off/;" \
+ -e "s/DCCM_LOG_AT=5\$/DCCM_LOG_AT=50/;" \
+ -e "s,DCCM_LOGDIR=\"log\"\$,DCCM_LOGDIR=\"/var/log/dcc\",;" \
+ -e "s/DCCM_ARGS=\$/DCCM_ARGS='-SHELO -Smail_host -SSender -SList-ID'/;" \
+ -e "s/DCCIFD_ARGS=\$/DCCIFD_ARGS=\"\$DCCM_ARGS\"/;" \
+ -e 's/DCCIFD_ENABLE=off/DCCIFD_ENABLE=on/' \
+ -e 's/DBCLEAN_LOGDAYS=14/DBCLEAN_LOGDAYS=1/' \
+ -i "${ED}/${dcc_homedir}/dcc_conf" || die
+
+ if use milter ; then
+ # enable milter
+ sed -i -e "s:^[\t #]*\(DCCM_ENABLE[\t ]*=[\t ]*\).*:\1on:g" \
+ "${ED}/${dcc_homedir}"/dcc_conf || die
+ fi
+
+ # provide cronjob
+ mv "${ED}"/usr/sbin/cron-dccd "${ED}"/etc/cron.daily/dccd || die "mv failed"
+
+ # clean up
+ mv "${ED}"/usr/sbin/logger "${ED}"/usr/sbin/logger-dcc || die "mv failed"
+
+ if ! use rrdtool; then
+ # remove rrdtool interface scripts
+ rm "${ED}"/usr/sbin/dcc-stats-{collect,graph,init} || die "Failed to clean up rrdtool scripts"
+ fi
+
+ # clean up
+ rm "${ED}"/usr/sbin/{rcDCC,updatedcc} || die
+
+ # place configuration files into /etc instead of /var/dcc
+ moveconf dcc_conf flod grey_flod grey_whitelist ids map map.txt whiteclnt whitecommon whitelist
+
+ newinitd "${FILESDIR}"/dcc.initd-1.3.154 dcc
+ newconfd "${FILESDIR}"/dcc.confd dcc
+
+ rmdir "${ED}"/var/dcc/log/ || die
+
+ dodoc CHANGES RESTRICTIONS
+ doman *.{0,8}
+}
diff --git a/mail-filter/dcc/dcc-2.3.168.ebuild b/mail-filter/dcc/dcc-2.3.168.ebuild
new file mode 100644
index 000000000000..0ac9be7299a7
--- /dev/null
+++ b/mail-filter/dcc/dcc-2.3.168.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd toolchain-funcs
+
+DESCRIPTION="Distributed Checksum Clearinghouse"
+HOMEPAGE="https://www.rhyolite.com/dcc/"
+SRC_URI="https://www.rhyolite.com/dcc/source/old/${P}.tar.Z"
+
+LICENSE="DCC GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="cgi ipv6 rrdtool milter"
+
+RDEPEND="
+ dev-lang/perl
+ || (
+ net-ftp/ftp
+ net-misc/curl
+ net-misc/wget
+ www-client/fetch
+ )
+ milter? ( mail-filter/libmilter:= )
+ rrdtool? ( net-analyzer/rrdtool )"
+DEPEND="${RDEPEND}"
+
+dcc_cgibin=var/www/localhost/cgi-bin/dcc
+dcc_homedir=var/lib/dcc
+dcc_libexec=usr/sbin
+dcc_man=usr/share/man
+dcc_rundir=var/run/dcc
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.158-clang16.patch
+ "${FILESDIR}"/${PN}-1.3.158-c2x.patch
+)
+
+src_configure() {
+ tc-export CC AR RANLIB
+ local myconf=(
+ --bindir="${EPREFIX}"/usr/bin
+ --homedir="${EPREFIX}"/${dcc_homedir}
+ --libexecdir="${EPREFIX}"/${dcc_libexec}
+ --mandir="${EPREFIX}"/usr/share/man
+ --enable-dccifd
+ --enable-server
+ --with-DDC-MD5
+ --with-installroot="${D}"
+ --with-rundir="${EPREFIX}"/${dcc_rundir}
+ --with-uid=root
+ --with-updatedcc_pfile="${EPREFIX}"/${dcc_homedir}/updatecc.pfile
+ --with-db-memory=64
+ --with-max-db-mem=128
+ --with-max-log-size=0
+ --with-make-cmd=${MAKE:-make}
+ $(use_enable ipv6 IPv6)
+ $(use_enable milter dccm)
+ $(use_with cgi cgibin ${dcc_cgibin})
+ $(use_with milter sendmail)
+ )
+
+ einfo "Using config: ${myconf[@]}"
+
+ # This is NOT a normal configure script.
+ ./configure "${myconf[@]}" || die "configure failed!"
+}
+
+moveconf() {
+ local i
+ for i in $@; do
+ mv "${ED}/${dcc_homedir}/${i}" "${ED}"/etc/dcc || die
+ dosym ../../../etc/dcc/"${i}" "${dcc_homedir}/${i}"
+ done
+}
+
+src_install() {
+ # stolen from the RPM .spec and modified for gentoo
+ export MANOWN=root
+ export MANGRP=$(id -g -n root)
+ export BINOWN="${MANOWN}"
+ export BINGRP="${MANGRP}"
+ export DCC_PROTO_HOMEDIR="${ED}/${dcc_homedir}"
+ export DCC_CGIBINDIR="${ED}/${dcc_cgibin}"
+ export DCC_SUID="${BINOWN}"
+ export DCC_OWN="${BINOWN}"
+ export DCC_GRP="${BINGRP}"
+
+ dodir /etc/cron.daily "${dcc_homedir}" /usr/bin /usr/sbin /usr/share/man/man{0,8} /etc/dcc
+ if use cgi ; then
+ dodir "${dcc_cgibin}"
+ fi
+ keepdir /var/log/dcc
+
+ emake install
+
+ # branding and setting reasonable defaults
+ sed -e "s/BRAND=\$/BRAND='Gentoo ${PF}'/;" \
+ -e "s/GREY_ENABLE=\$/GREY_ENABLE=off/;" \
+ -e "s/DCCM_LOG_AT=5\$/DCCM_LOG_AT=50/;" \
+ -e "s,DCCM_LOGDIR=\"log\"\$,DCCM_LOGDIR=\"/var/log/dcc\",;" \
+ -e "s/DCCM_ARGS=\$/DCCM_ARGS='-SHELO -Smail_host -SSender -SList-ID'/;" \
+ -e "s/DCCIFD_ARGS=\$/DCCIFD_ARGS=\"\$DCCM_ARGS\"/;" \
+ -e 's/DCCIFD_ENABLE=off/DCCIFD_ENABLE=on/' \
+ -e 's/DBCLEAN_LOGDAYS=14/DBCLEAN_LOGDAYS=1/' \
+ -i "${ED}/${dcc_homedir}/dcc_conf" || die
+
+ if use milter ; then
+ # enable milter
+ sed -i -e "s:^[\t #]*\(DCCM_ENABLE[\t ]*=[\t ]*\).*:\1on:g" \
+ "${ED}/${dcc_homedir}"/dcc_conf || die
+ fi
+
+ # provide cronjob
+ mv "${ED}"/usr/sbin/cron-dccd "${ED}"/etc/cron.daily/dccd || die "mv failed"
+
+ # clean up
+ mv "${ED}"/usr/sbin/logger "${ED}"/usr/sbin/logger-dcc || die "mv failed"
+
+ if ! use rrdtool; then
+ # remove rrdtool interface scripts
+ rm "${ED}"/usr/sbin/dcc-stats-{collect,graph,init} || die "Failed to clean up rrdtool scripts"
+ fi
+
+ # clean up
+ rm "${ED}"/usr/sbin/{rcDCC,updatedcc} || die
+
+ # place configuration files into /etc instead of /var/dcc
+ moveconf dcc_conf flod grey_flod grey_whitelist ids map map.txt whiteclnt whitecommon whitelist
+
+ newinitd "${FILESDIR}"/dcc.initd-1.3.154 dcc
+ newconfd "${FILESDIR}"/dcc.confd dcc
+
+ rmdir "${ED}"/"${dcc_homedir}"/log || die
+
+ dodoc CHANGES
+ doman *.{0,8}
+
+ systemd_dounit "${FILESDIR}/dccifd.service"
+}
diff --git a/mail-filter/dcc/files/dcc-1.3.158-c2x.patch b/mail-filter/dcc/files/dcc-1.3.158-c2x.patch
new file mode 100644
index 000000000000..79b70f300f8f
--- /dev/null
+++ b/mail-filter/dcc/files/dcc-1.3.158-c2x.patch
@@ -0,0 +1,21 @@
+This is the only K&R-style functions in the source, incompatible with C2x.
+--- a/dcclib/inet_ntop.c
++++ b/dcclib/inet_ntop.c
+@@ -88,7 +88,3 @@
+ */
+-static const char *
+-inet_ntop4(src, dst, size)
+- const u_char *src;
+- char *dst;
+- size_t size;
++static const char *inet_ntop4(const u_char *src, char *dst, size_t size)
+ {
+@@ -115,7 +111,3 @@
+ */
+-static const char *
+-inet_ntop6(src, dst, size)
+- const u_char *src;
+- char *dst;
+- size_t size;
++static const char *inet_ntop6(const u_char *src, char *dst, size_t size)
+ {
diff --git a/mail-filter/dcc/files/dcc-1.3.158-clang16.patch b/mail-filter/dcc/files/dcc-1.3.158-clang16.patch
new file mode 100644
index 000000000000..adf518944408
--- /dev/null
+++ b/mail-filter/dcc/files/dcc-1.3.158-clang16.patch
@@ -0,0 +1,30 @@
+configure.ac is missing, so need to edit this manually
+
+https://bugs.gentoo.org/870646
+--- a/configure
++++ b/configure
+@@ -796,3 +796,3 @@
+
+-main(){return(0);}
++int main(void){return(0);}
+ EOF
+@@ -1100,3 +1100,3 @@
+ #include "confdefs.h"
+-main()
++int main(void)
+ {exit(sizeof(void*)==8 ? 0 : sizeof(void*));}
+@@ -1463,3 +1463,3 @@
+ #include <sys/types.h>
+-main()
++int main(void)
+ {
+@@ -3330,3 +3330,3 @@
+ #define min(a,b) ((a) < (b) ? (a) : (b))
+-main()
++int main(void)
+ {
+@@ -3596,3 +3596,3 @@
+ #include "include/dcc_paths.h"
+-main()
++int main(void)
+ {
diff --git a/mail-filter/dcc/files/dccifd.service b/mail-filter/dcc/files/dccifd.service
new file mode 100644
index 000000000000..4055a752f933
--- /dev/null
+++ b/mail-filter/dcc/files/dccifd.service
@@ -0,0 +1,34 @@
+[Unit]
+Description=DCC (Distributed Checksum Clearinghouses) interface daemon
+
+[Service]
+Type=forking
+PermissionsStartOnly=true
+RuntimeDirectory=dcc
+ConfigurationDirectory=dcc
+LogsDirectory=dcc
+StateDirectory=dcc
+ExecStart=/usr/sbin/dccifd
+
+#DCC writes pid file with "-" at the beginning which confuses systemd
+#PIDFile=/run/dcc/dccifd.pid
+
+# Hardening
+ProtectSystem=strict
+PrivateDevices=true
+ProtectKernelModules=true
+ProtectKernelLogs=true
+RestrictRealtime=true
+ProtectKernelTunables=true
+ProtectControlGroups=true
+ProtectHome=true
+ProtectHostname=true
+ProtectClock=true
+PrivateTmp=true
+SystemCallArchitectures=native
+MemoryDenyWriteExecute=true
+NoNewPrivileges=true
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/mail-filter/dcc/metadata.xml b/mail-filter/dcc/metadata.xml
index 4cfcb6450d05..d694695270e8 100644
--- a/mail-filter/dcc/metadata.xml
+++ b/mail-filter/dcc/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
</maintainer>
+<maintainer type="person">
+ <email>candrews@gentoo.org</email>
+ <name>Craig Andrews</name>
+</maintainer>
<use>
<flag name="rrdtool">Enable <pkg>net-analyzer/rrdtool</pkg> interface
scripts</flag>
diff --git a/mail-filter/dkimproxy/dkimproxy-1.4.1.ebuild b/mail-filter/dkimproxy/dkimproxy-1.4.1.ebuild
index 264fba2d8034..90d488b6b245 100644
--- a/mail-filter/dkimproxy/dkimproxy-1.4.1.ebuild
+++ b/mail-filter/dkimproxy/dkimproxy-1.4.1.ebuild
@@ -1,9 +1,7 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-
-inherit eutils
+EAPI=8
DESCRIPTION="An SMTP proxy server for adding DKIM headers"
HOMEPAGE="http://dkimproxy.sourceforge.net"
diff --git a/mail-filter/dkimproxy/metadata.xml b/mail-filter/dkimproxy/metadata.xml
index 0976e6f7ba5a..3ff328fd2254 100644
--- a/mail-filter/dkimproxy/metadata.xml
+++ b/mail-filter/dkimproxy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zx2c4@gentoo.org</email>
diff --git a/mail-filter/exim-geoip/metadata.xml b/mail-filter/exim-geoip/metadata.xml
index 54ace0786086..61c39363f643 100644
--- a/mail-filter/exim-geoip/metadata.xml
+++ b/mail-filter/exim-geoip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>grobian@gentoo.org</email>
diff --git a/mail-filter/exim-p0f/metadata.xml b/mail-filter/exim-p0f/metadata.xml
index 140eda1e53e7..789ee79465b3 100644
--- a/mail-filter/exim-p0f/metadata.xml
+++ b/mail-filter/exim-p0f/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>grobian@gentoo.org</email>
diff --git a/mail-filter/gld/files/gld-1.7-configure-strict-prototypes.patch b/mail-filter/gld/files/gld-1.7-configure-strict-prototypes.patch
new file mode 100644
index 000000000000..e0016336e307
--- /dev/null
+++ b/mail-filter/gld/files/gld-1.7-configure-strict-prototypes.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/870487
+--- a/configure
++++ b/configure
+@@ -719,7 +719,7 @@ cat > conftest.$ac_ext << EOF
+ #line 720 "configure"
+ #include "confdefs.h"
+
+-main(){return(0);}
++int main(){return(0);}
+ EOF
+ if { (eval echo configure:725: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ ac_cv_prog_cc_works=yes
diff --git a/mail-filter/gld/gld-1.7-r4.ebuild b/mail-filter/gld/gld-1.7-r4.ebuild
index 157778eaed62..fcebb96bfe7e 100644
--- a/mail-filter/gld/gld-1.7-r4.ebuild
+++ b/mail-filter/gld/gld-1.7-r4.ebuild
@@ -1,17 +1,17 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
-DESCRIPTION="A standalone anti-spam greylisting algorithm on top of Postfix"
-HOMEPAGE="http://www.gasmi.net/gld.html"
-SRC_URI="http://www.gasmi.net/down/${P}.tgz"
+DESCRIPTION="Standalone anti-spam greylisting algorithm on top of Postfix"
+HOMEPAGE="https://www.gasmi.net/gld.html"
+SRC_URI="https://www.gasmi.net/down/${P}.tgz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ppc x86"
+KEYWORDS="amd64 ~ppc x86"
IUSE="postgres"
# Not adding a mysql USE flag. The package defaults to it, so we will too.
DEPEND="sys-libs/zlib
@@ -20,6 +20,10 @@ DEPEND="sys-libs/zlib
postgres? ( dev-db/postgresql:*[server] )"
RDEPEND="${DEPEND}"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7-configure-strict-prototypes.patch
+)
+
src_prepare() {
sed -i gld.conf \
-e 's:^LOOPBACKONLY=.*:LOOPBACKONLY=1:' \
diff --git a/mail-filter/gld/metadata.xml b/mail-filter/gld/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/mail-filter/gld/metadata.xml
+++ b/mail-filter/gld/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/mail-filter/imapfilter/Manifest b/mail-filter/imapfilter/Manifest
index d5b5a10c9051..df2b34ac72ae 100644
--- a/mail-filter/imapfilter/Manifest
+++ b/mail-filter/imapfilter/Manifest
@@ -1 +1,2 @@
-DIST imapfilter-2.7.5.tar.gz 59441 BLAKE2B 0326a698f3be18da47c99cbe20e5e51cde8abcaebf365b3f00e5b1dba6bfaed5139b65766bd447dc596736da504063d5c87c21d1c5c11d6bc7ebd947d9d44835 SHA512 a64747d745ecd5a2f61d486cd8fec1bceeb97ce459ec57454311a960dbfce526c15e8bddeb16860b8efd9710de93845adec61ec892355a0bef7bddc4517e1442
+DIST imapfilter-2.8.1.tar.gz 58382 BLAKE2B 41a6675e90bd8feb2c440923a6059caee1eecd4490f55704e11fcfbec92c640ebc264b40cd71ee051f66d6d060a1ff21907a48611baa14a2139c2979017d4ca9 SHA512 1da663a36b0c6091c3da84d78c6826f2c8c13fd20e32723ad9647e5bf942c12cbeb327a71cf38ed2076662d65207edb3f1087d5c94565a583b8a583543d4bcd3
+DIST imapfilter-2.8.2.tar.gz 58622 BLAKE2B b47e9902fc08be74d2cad622c75093d7771a97db0142373a3fc4fbd03613225b5f1a6fcd1f9354219c27d856450ff2a266d49f5d7f4e1b95b29876ac9594d02f SHA512 b16e684d6af4e8c3f465e22c008b9231209f1336b1f9a27fbd98460cf987f84e81040250ccb657d3986100b3804f1fc130a409cacc3921180920d26193dd5967
diff --git a/mail-filter/imapfilter/imapfilter-2.7.5.ebuild b/mail-filter/imapfilter/imapfilter-2.8.1.ebuild
index 627b81140929..11b194c6fbd1 100644
--- a/mail-filter/imapfilter/imapfilter-2.7.5.ebuild
+++ b/mail-filter/imapfilter/imapfilter-2.8.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-LUA_COMPAT=( lua5-{1..3} )
+LUA_COMPAT=( lua5-{1..4} luajit )
inherit lua-single toolchain-funcs
@@ -18,13 +18,16 @@ KEYWORDS="amd64 ppc x86"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RDEPEND="
- dev-libs/openssl:0=
- dev-libs/libpcre
+ dev-libs/openssl:=
+ dev-libs/libpcre2
${LUA_DEPS}"
DEPEND="${RDEPEND}"
DOCS="AUTHORS NEWS README samples/*"
+PATCHES=(
+)
+
src_prepare() {
default
sed -i -e "/^PREFIX/s:/usr/local:${EPREFIX}/usr:" \
@@ -38,8 +41,8 @@ src_compile() {
emake \
CC="$(tc-getCC)" \
LDFLAGS="${LDFLAGS}" \
- INCDIRS=$(lua_get_CFLAGS) \
- LIBLUA=$(lua_get_LIBS)
+ INCDIRS="$(lua_get_CFLAGS)" \
+ LIBLUA="$(lua_get_LIBS)"
}
src_install() {
diff --git a/mail-filter/imapfilter/imapfilter-2.8.2.ebuild b/mail-filter/imapfilter/imapfilter-2.8.2.ebuild
new file mode 100644
index 000000000000..fdb90d85a06f
--- /dev/null
+++ b/mail-filter/imapfilter/imapfilter-2.8.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua-single toolchain-funcs
+
+DESCRIPTION="An IMAP mail filtering utility"
+HOMEPAGE="https://github.com/lefcha/imapfilter"
+SRC_URI="https://github.com/lefcha/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+RDEPEND="
+ dev-libs/openssl:=
+ dev-libs/libpcre2
+ ${LUA_DEPS}"
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS NEWS README samples/. )
+
+src_prepare() {
+ default
+ sed -i -e "/^PREFIX/s:/usr/local:${EPREFIX}/usr:" \
+ -e "/^MANDIR/s:man:share/man:" \
+ -e "/^CFLAGS/s:CFLAGS =:CFLAGS +=:" \
+ -e "/^CFLAGS/s/-O//" \
+ src/Makefile || die
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ LDFLAGS="${LDFLAGS}" \
+ INCDIRS="$(lua_get_CFLAGS)" \
+ LIBLUA="$(lua_get_LIBS)"
+}
+
+src_install() {
+ default
+ doman doc/imapfilter.1 doc/imapfilter_config.5
+}
diff --git a/mail-filter/imapfilter/metadata.xml b/mail-filter/imapfilter/metadata.xml
index 905d603400e4..e61a104209dc 100644
--- a/mail-filter/imapfilter/metadata.xml
+++ b/mail-filter/imapfilter/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>holger@applied-asynchrony.com</email>
+ <name>Holger Hoffstätte</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="github">lefcha/imapfilter</remote-id>
</upstream>
diff --git a/mail-filter/libmilter/Manifest b/mail-filter/libmilter/Manifest
index 88526081354f..06a2a87683b6 100644
--- a/mail-filter/libmilter/Manifest
+++ b/mail-filter/libmilter/Manifest
@@ -1,3 +1 @@
-DIST sendmail.8.14.5.tar.gz 2092508 BLAKE2B 3d90fa9778ebb42f2f334b35e46d0f24e8fcfd46fe69d6032f246c90fc998fbeb21e70c70bc454c688a76ea00c90ee9b5f0e5e0fc9b89b9f16fa9c814a825f9c SHA512 178addd247f1c7c8ca90d70b9240db4cad4e55f0710d5df0fe979e5473a182d2035150c352836576a28bb2b9660b0d5ebfcd95269a156ac0d2c3dba3edb60452
-DIST sendmail.8.15.2.tar.gz 2207417 BLAKE2B 3d9dfb5bc2b535e30ef2fc61333e12a9b1fc45a5d730d2bed1ef956adb574721833f87aeba0475705b76e0c7d6cf00f9a10025bffb0de6c6b4dae606eb2ec399 SHA512 04feb37316c13b66b1518596507a7da7c16cb0bf1abf10367f7fd888a428fadb093a9efa55342fa55b936c3f0cbdc63b9e2505cd99201a69a0c05b8ad65f49f9
-DIST sendmail.8.16.1.tar.gz 2236402 BLAKE2B 80a9c2f1d04719099703e55f0a0c54fd638cf69b72839d358ae6863c95c9e0965d1b7fdd5b1807bec1ffdf87bca0c7c9ba91060962e6de5da5bf14422f6279ea SHA512 d7d4aac3c6d7505782abdb166204901b8b51cac000d610dfe40eda9eef7441a073af9e8e0b14c8719b07b445f55a1e2c28ac63d663d0daa7f1eafc5a101788b2
+DIST sendmail.8.17.1.9.tar.gz 2345302 BLAKE2B 378f2f98ffff6457c49f934228964e792acec6f33fbabd89a8712f09f1dc7afc951b7c984a397aa7dd3773d86bdf57a946ea9ac54ae426bc0b8ea4c040e2ad4a SHA512 ad8198b12bdc0037de5b64b2504bd5e0a42bf054274a4834163a7c46953b9aec23d52d58063cc6b925d90199973608f35edeb40128671ae32889f4558e5c0d4b
diff --git a/mail-filter/libmilter/files/libmilter-build-system.patch b/mail-filter/libmilter/files/libmilter-build-system.patch
deleted file mode 100644
index d9991d3d409b..000000000000
--- a/mail-filter/libmilter/files/libmilter-build-system.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/defines.m4 sendmail-8.14.3/devtools/M4/UNIX/defines.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/defines.m4 2006-10-06 07:44:44.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/defines.m4 2009-09-20 10:16:43.000000000 +0200
-@@ -26,7 +26,7 @@
- CCLINK = ifdef(`confCCLINK', `confCCLINK', `confCC')
- # Linker for libraries
- LD= ifdef(`confLD', `confLD', `confCC')
--LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `')
-+LDOPTS= ifdef(`confLDOPTS', `confLDOPTS')
- LDOPTS_SO= ${LDOPTS} ifdef(`confLDOPTS_SO', `confLDOPTS_SO', `-shared')
-
- # Shell
-@@ -71,7 +71,7 @@
- LIBADD= ifdef(`conf_'bldCURRENT_PRD`_LIBS', `conf_'bldCURRENT_PRD`_LIBS')
-
- # libraries required on your system
--LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST')
-+LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `')
-
- # location of sendmail binary (usually /usr/sbin or /usr/lib)
- BINDIR= ifdef(`confMBINDIR', `confMBINDIR', `/usr/sbin')
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 sendmail-8.14.3/devtools/M4/UNIX/executable.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 2006-10-06 07:44:44.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/executable.m4 2009-09-20 10:16:43.000000000 +0200
-@@ -30,12 +30,12 @@
-
- ifdef(`bldNO_INSTALL', ,
- `install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT ifdef(`bldTARGET_INST_DEP', `bldTARGET_INST_DEP')
-- ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'BINDIR}; else :; fi ')
-- ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${bldINSTALL_DIR`'BINDIR}
-+ ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"; else :; fi ')
-+ ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"
- ifdef(`bldTARGET_LINKS', `bldMAKE_TARGET_LINKS(${bldINSTALL_DIR`'BINDIR}/bldCURRENT_PRODUCT, ${bldCURRENT_PRODUCT`'TARGET_LINKS})')')
-
- strip-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT
-- ${STRIP} ${STRIPOPTS} ${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT
-+ ${STRIP} ${STRIPOPTS} "${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT"
-
- bldCURRENT_PRODUCT-clean:
- rm -f ${OBJS} bldCURRENT_PRODUCT ${MANPAGES}
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 sendmail-8.14.3/devtools/M4/UNIX/library.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 2006-09-06 00:56:53.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/library.m4 2009-09-20 10:16:43.000000000 +0200
-@@ -27,8 +27,8 @@
- ifdef(`bldLINK_SOURCES', `bldMAKE_SOURCE_LINKS(bldLINK_SOURCES)')
-
- install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.a
--ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'LIBDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'LIBDIR}; else :; fi ')
-- ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a ${DESTDIR}${LIBDIR}')
-+ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${LIBDIR}"; else :; fi ')
-+ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"')
-
- bldCURRENT_PRODUCT-clean:
- rm -f ${OBJS} bldCURRENT_PRODUCT.a ${MANPAGES}
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/manpage.m4 sendmail-8.14.3/devtools/M4/UNIX/manpage.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/manpage.m4 2006-09-08 00:13:07.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/manpage.m4 2009-09-20 10:16:43.000000000 +0200
-@@ -68,11 +68,11 @@
- ifdef(`confNO_MAN_INSTALL', `divert(-1)', `dnl')
- define(`bldMAN_INSTALL_CMD',
- `ifdef(`confDONT_INSTALL_CATMAN', `dnl',
--` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}; else :; fi ')
-- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'')
-+` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}"; else :; fi ')
-+ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''")
- ifdef(`confINSTALL_RAWMAN',
--` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}; else :; fi ')
-- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'', `dnl')'
-+` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'"; else :; fi ')
-+ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''", `dnl')'
- )dnl
- bldFOREACH(`bldMAN_INSTALL_CMD(', `bldMAN_PAGES')
- ifdef(`confNO_MAN_INSTALL', `divert(0)', `dnl')
-diff -Nru sendmail-8.14.3.orig/libmilter/Makefile.m4 sendmail-8.14.3/libmilter/Makefile.m4
---- sendmail-8.14.3.orig/libmilter/Makefile.m4 2009-09-20 09:53:44.000000000 +0200
-+++ sendmail-8.14.3/libmilter/Makefile.m4 2009-09-20 10:18:35.000000000 +0200
-@@ -32,9 +32,9 @@
- MFAPI= ${SRCDIR}/inc`'lude/libmilter/mfapi.h
- MFDEF= ${SRCDIR}/inc`'lude/libmilter/mfdef.h
- install-mfapi: ${MFAPI}
-- if [ ! -d ${DESTDIR}${INCLUDEDIR}/libmilter ]; then mkdir -p ${DESTDIR}${INCLUDEDIR}/libmilter; else :; fi
-- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} ${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h
-- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} ${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h
-+ if [ ! -d "${DESTDIR}${INCLUDEDIR}/libmilter" ]; then mkdir -p "${DESTDIR}${INCLUDEDIR}/libmilter"; else :; fi
-+ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} "${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h"
-+ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} "${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h"
- divert(0)
-
- bldFINISH
diff --git a/mail-filter/libmilter/files/libmilter-glibc-2.30.patch b/mail-filter/libmilter/files/libmilter-glibc-2.30.patch
deleted file mode 100644
index 5ceac845b90e..000000000000
--- a/mail-filter/libmilter/files/libmilter-glibc-2.30.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/libmilter/sm_gethost.c 2014-03-05 01:59:45.000000000 +0100
-+++ b/libmilter/sm_gethost.c 2019-11-14 18:59:41.885353232 +0100
-@@ -51,18 +51,20 @@ sm_getipnodebyname(name, family, flags,
- {
- bool resv6 = true;
- struct hostent *h;
--
-+#ifdef RES_USE_INET6
- if (family == AF_INET6)
- {
- /* From RFC2133, section 6.1 */
- resv6 = bitset(RES_USE_INET6, _res.options);
- _res.options |= RES_USE_INET6;
- }
-+#endif
- SM_SET_H_ERRNO(0);
- h = gethostbyname(name);
-+#ifdef RES_USE_INET6
- if (family == AF_INET6 && !resv6)
- _res.options &= ~RES_USE_INET6;
--
-+#endif
- /* the function is supposed to return only the requested family */
- if (h != NULL && h->h_addrtype != family)
- {
diff --git a/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch b/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch
deleted file mode 100644
index 3348e921926c..000000000000
--- a/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch
+++ /dev/null
@@ -1,211 +0,0 @@
-diff -Nru sendmail-8.14.3.orig/cf/cf/Makefile sendmail-8.14.3/cf/cf/Makefile
---- sendmail-8.14.3.orig/cf/cf/Makefile 2005-06-14 04:16:34.000000000 +0200
-+++ sendmail-8.14.3/cf/cf/Makefile 2009-09-20 10:55:50.000000000 +0200
-@@ -80,10 +80,10 @@
- install-cf: install-sendmail-cf install-submit-cf
-
- install-sendmail-cf: $(CF).cf
-- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf ${DESTDIR}$(MAILDIR)/sendmail.cf
-+ $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf "${DESTDIR}$(MAILDIR)/sendmail.cf"
-
- install-submit-cf: $(SUBMIT).cf
-- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf ${DESTDIR}$(MAILDIR)/submit.cf
-+ $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf "${DESTDIR}$(MAILDIR)/submit.cf"
-
- depend:
-
-diff -Nru sendmail-8.14.6.orig/devtools/M4/UNIX/defines.m4 sendmail-8.14.6/devtools/M4/UNIX/defines.m4
---- sendmail-8.14.6.orig/devtools/M4/UNIX/defines.m4 2012-01-21 00:07:08.000000000 +0000
-+++ sendmail-8.14.6/devtools/M4/UNIX/defines.m4 2012-12-27 08:13:15.792214375 +0000
-@@ -26,7 +26,7 @@
- CCLINK = ifdef(`confCCLINK', `confCCLINK', `confCC')
- # Linker for libraries
- LD= ifdef(`confLD', `confLD', `confCC')
--LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `')
-+LDOPTS= ifdef(`confLDOPTS', `confLDOPTS')
- LDOPTS_SO= ${LDOPTS} ifdef(`confLDOPTS_SO', `confLDOPTS_SO', `-shared')
-
- # Shell
-@@ -71,7 +71,7 @@
- LIBADD= ifdef(`conf_'bldCURRENT_PRD`_LIBS', `conf_'bldCURRENT_PRD`_LIBS')
-
- # libraries required on your system
--LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST')
-+LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `')
-
- # location of sendmail binary (usually /usr/sbin or /usr/lib)
- BINDIR= ifdef(`confMBINDIR', `confMBINDIR', `/usr/sbin')
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 sendmail-8.14.3/devtools/M4/UNIX/executable.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 2006-10-06 07:44:44.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/executable.m4 2009-09-20 10:50:36.000000000 +0200
-@@ -30,12 +30,12 @@
-
- ifdef(`bldNO_INSTALL', ,
- `install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT ifdef(`bldTARGET_INST_DEP', `bldTARGET_INST_DEP')
-- ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'BINDIR}; else :; fi ')
-- ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${bldINSTALL_DIR`'BINDIR}
-+ ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"; else :; fi ')
-+ ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"
- ifdef(`bldTARGET_LINKS', `bldMAKE_TARGET_LINKS(${bldINSTALL_DIR`'BINDIR}/bldCURRENT_PRODUCT, ${bldCURRENT_PRODUCT`'TARGET_LINKS})')')
-
- strip-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT
-- ${STRIP} ${STRIPOPTS} ${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT
-+ ${STRIP} ${STRIPOPTS} "${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT"
-
- bldCURRENT_PRODUCT-clean:
- rm -f ${OBJS} bldCURRENT_PRODUCT ${MANPAGES}
-diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 sendmail-8.14.3/devtools/M4/UNIX/library.m4
---- sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 2006-09-06 00:56:53.000000000 +0200
-+++ sendmail-8.14.3/devtools/M4/UNIX/library.m4 2009-09-20 10:50:36.000000000 +0200
-@@ -27,8 +27,8 @@
- ifdef(`bldLINK_SOURCES', `bldMAKE_SOURCE_LINKS(bldLINK_SOURCES)')
-
- install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.a
--ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'LIBDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'LIBDIR}; else :; fi ')
-- ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a ${DESTDIR}${LIBDIR}')
-+ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${LIBDIR}"; else :; fi ')
-+ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"')
-
- bldCURRENT_PRODUCT-clean:
- rm -f ${OBJS} bldCURRENT_PRODUCT.a ${MANPAGES}
---- sendmail-8.14.6.orig/devtools/M4/UNIX/manpage.m4 2012-01-21 00:07:08.000000000 +0000
-+++ sendmail-8.14.6/devtools/M4/UNIX/manpage.m4 2012-12-27 08:28:52.617502447 +0000
-@@ -68,11 +68,11 @@
- ifdef(`confNO_MAN_INSTALL', `divert(-1)', `dnl')
- define(`bldMAN_INSTALL_CMD',
- `ifdef(`confDONT_INSTALL_CATMAN', `dnl',
--` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}; else :; fi ')
-- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'')
-+` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}"; else :; fi ')
-+ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''")
- ifdef(`confINSTALL_RAWMAN',
--` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}; else :; fi ')
-- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'', `dnl')'
-+` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'"; else :; fi ')
-+ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''", `dnl')'
- )dnl
- bldFOREACH(`bldMAN_INSTALL_CMD(', `bldMAN_PAGES')
- ifdef(`confNO_MAN_INSTALL', `divert(0)', `dnl')
-diff -Nru sendmail-8.14.3.orig/libmilter/Makefile.m4 sendmail-8.14.3/libmilter/Makefile.m4
---- sendmail-8.14.3.orig/libmilter/Makefile.m4 2008-04-08 07:23:44.000000000 +0200
-+++ sendmail-8.14.3/libmilter/Makefile.m4 2009-09-20 10:50:36.000000000 +0200
-@@ -32,9 +32,9 @@
- MFAPI= ${SRCDIR}/inc`'lude/libmilter/mfapi.h
- MFDEF= ${SRCDIR}/inc`'lude/libmilter/mfdef.h
- install-mfapi: ${MFAPI}
-- if [ ! -d ${DESTDIR}${INCLUDEDIR}/libmilter ]; then mkdir -p ${DESTDIR}${INCLUDEDIR}/libmilter; else :; fi
-- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} ${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h
-- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} ${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h
-+ if [ ! -d "${DESTDIR}${INCLUDEDIR}/libmilter" ]; then mkdir -p "${DESTDIR}${INCLUDEDIR}/libmilter"; else :; fi
-+ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} "${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h"
-+ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} "${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h"
- divert(0)
-
- bldFINISH
-diff -Nru sendmail-8.14.3.orig/mail.local/Makefile.m4 sendmail-8.14.3/mail.local/Makefile.m4
---- sendmail-8.14.3.orig/mail.local/Makefile.m4 2006-06-28 23:08:02.000000000 +0200
-+++ sendmail-8.14.3/mail.local/Makefile.m4 2009-09-20 10:56:24.000000000 +0200
-@@ -30,7 +30,7 @@
- force-install: install-mail.local ifdef(`confNO_MAN_BUILD',, `install-docs')
-
- install-mail.local: mail.local
-- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} mail.local ${DESTDIR}${EBINDIR}
-+ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} mail.local "${DESTDIR}${EBINDIR}"
- divert
-
- bldFINISH
-diff -Nru sendmail-8.14.3.orig/rmail/Makefile.m4 sendmail-8.14.3/rmail/Makefile.m4
---- sendmail-8.14.3.orig/rmail/Makefile.m4 2006-06-28 23:08:04.000000000 +0200
-+++ sendmail-8.14.3/rmail/Makefile.m4 2009-09-20 10:55:29.000000000 +0200
-@@ -31,7 +31,7 @@
- force-install: install-rmail ifdef(`confNO_MAN_BUILD',, `install-docs')
-
- install-rmail: rmail
-- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} rmail ${DESTDIR}${UBINDIR}
-+ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} rmail "${DESTDIR}${UBINDIR}"
- divert
-
- bldFINISH
-diff -Nru sendmail-8.14.3.orig/sendmail/Makefile.m4 sendmail-8.14.3/sendmail/Makefile.m4
---- sendmail-8.14.3.orig/sendmail/Makefile.m4.orig 2008-03-27 17:13:33.000000000 +0100
-+++ sendmail-8.14.3/sendmail/Makefile.m4 2009-09-20 11:07:24.000000000 +0200
-@@ -14,9 +14,9 @@
-
- dnl hack: /etc/mail is not defined as "location of .cf" in the build system
- define(`bldTARGET_INST_DEP', ifdef(`confINST_DEP', `confINST_DEP',
--`${DESTDIR}/etc/mail/submit.cf ${DESTDIR}${MSPQ}'))dnl
-+`"${DESTDIR}/etc/mail/submit.cf" "${DESTDIR}${MSPQ}"'))dnl
- define(`bldTARGET_LINKS', ifdef(`confLINKS', `confLINKS',
--`${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat')
-+`"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"')
- )dnl
-
- # location of sendmail statistics file (usually /etc/mail/ or /var/log)
-@@ -43,21 +43,21 @@
- statistics:
- ${CP} /dev/null statistics
-
--${DESTDIR}/etc/mail/submit.cf:
-+"${DESTDIR}/etc/mail/submit.cf":
- @echo "Please read INSTALL if anything fails while installing the binary."
- @echo "${DESTDIR}/etc/mail/submit.cf will be installed now."
- cd ${SRCDIR}/cf/cf && make install-submit-cf
-
- MSPQ=ifdef(`confMSP_QUEUE_DIR', `confMSP_QUEUE_DIR', `/var/spool/clientmqueue')
-
--${DESTDIR}${MSPQ}:
-+"${DESTDIR}${MSPQ}":
- @echo "Please read INSTALL if anything fails while installing the binary."
- @echo "You must have setup a new user ${MSPQOWN} and a new group ${GBINGRP}"
- @echo "as explained in sendmail/SECURITY."
-- mkdir -p ${DESTDIR}${MSPQ}
-- chown ${MSPQOWN} ${DESTDIR}${MSPQ}
-- chgrp ${GBINGRP} ${DESTDIR}${MSPQ}
-- chmod 0770 ${DESTDIR}${MSPQ}
-+ mkdir -p "${DESTDIR}${MSPQ}"
-+ chown ${MSPQOWN} "${DESTDIR}${MSPQ}"
-+ chgrp ${GBINGRP} "${DESTDIR}${MSPQ}"
-+ chmod 0770 "${DESTDIR}${MSPQ}"
-
- divert(0)
-
-@@ -68,30 +68,30 @@
- divert(bldTARGETS_SECTION)
-
- install-set-user-id: bldCURRENT_PRODUCT ifdef(`confNO_HELPFILE_INSTALL',, `install-hf') ifdef(`confNO_STATISTICS_INSTALL',, `install-st') ifdef(`confNO_MAN_BUILD',, `install-docs')
-- ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}
-+ ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}"
- for i in ${sendmailTARGET_LINKS}; do \
- rm -f $$i; \
- ${LN} ${LNOPTS} ${M`'BINDIR}/sendmail $$i; \
- done
-
--define(`confMTA_LINKS', `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat')
-+define(`confMTA_LINKS', `"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"')
- install-sm-mta: bldCURRENT_PRODUCT
-- ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta
-+ ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}/sm-mta"
- for i in confMTA_LINKS; do \
- rm -f $$i; \
- ${LN} ${LNOPTS} ${M`'BINDIR}/sm-mta $$i; \
- done
-
- install-hf:
-- if [ ! -d ${DESTDIR}${HFDIR} ]; then mkdir -p ${DESTDIR}${HFDIR}; else :; fi
-- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile ${DESTDIR}${HFFILE}
-+ if [ ! -d "${DESTDIR}${HFDIR}" ]; then mkdir -p "${DESTDIR}${HFDIR}"; else :; fi
-+ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile "${DESTDIR}${HFFILE}"
-
- install-st: statistics
-- if [ ! -d ${DESTDIR}${STDIR} ]; then mkdir -p ${DESTDIR}${STDIR}; else :; fi
-- ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${STPATH}
-+ if [ ! -d "${DESTDIR}${STDIR}" ]; then mkdir -p "${DESTDIR}${STDIR}"; else :; fi
-+ ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${STPATH}"
-
--install-submit-st: statistics ${DESTDIR}${MSPQ}
-- ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${MSPQ}/${MSPSTFILE}
-+install-submit-st: statistics "${DESTDIR}${MSPQ}"
-+ ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${MSPQ}/${MSPSTFILE}"
-
- divert(0)
- bldPRODUCT_END
diff --git a/mail-filter/libmilter/libmilter-1.0.2.ebuild b/mail-filter/libmilter/libmilter-1.0.2.ebuild
deleted file mode 100644
index 31d0b281a4e3..000000000000
--- a/mail-filter/libmilter/libmilter-1.0.2.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs
-
-# This library is part of sendmail, but it does not share the version number with it.
-# In order to find the right libmilter version number, check SMFI_VERSION definition
-# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines).
-# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001.
-SENDMAIL_VER=8.14.5
-
-DESCRIPTION="The Sendmail Filter API (Milter)"
-HOMEPAGE="http://www.sendmail.org/"
-SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz"
-
-LICENSE="Sendmail"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="ipv6 poll"
-
-DEPEND="!mail-mta/sendmail
- !mail-mta/sendmail"
-RDEPEND="!mail-mta/sendmail"
-
-S="${WORKDIR}/sendmail-${SENDMAIL_VER}"
-
-src_prepare() {
- eapply "${FILESDIR}"/${PN}-build-system.patch
- eapply "${FILESDIR}"/${PN}-sharedlib.patch
- default
-
- local CC="$(tc-getCC)"
- local ENVDEF="-DNETUNIX -DNETINET"
- use ipv6 && ENVDEF="${ENVDEF} -DNETINET6"
- use poll && ENVDEF="${ENVDEF} -DSM_CONF_POLL=1"
-
- sed -e "s|@@CFLAGS@@|${CFLAGS}|" \
- -e "s:@@LDFLAGS@@:${LDFLAGS}:" \
- -e "s:@@CC@@:${CC}:" \
- -e "s:@@ENVDEF@@:${ENVDEF}:" \
- "${FILESDIR}/gentoo.config.m4" > "${S}/devtools/Site/site.config.m4" \
- || die "failed to generate site.config.m4"
-}
-
-src_compile() {
- pushd libmilter
- emake -j1 MILTER_SOVER=${PV}
- popd
-}
-
-src_install() {
- local MY_LIBDIR=/usr/$(get_libdir)
- dodir "${MY_LIBDIR}"
- emake DESTDIR="${D}" LIBDIR="${MY_LIBDIR}" MANROOT=/usr/share/man/man \
- SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 \
- LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 \
- MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 \
- MSPQOWN=root CFOWN=root CFGRP=0 \
- MILTER_SOVER=${PV} \
- install -C obj.*/libmilter
-
- dodoc libmilter/README
- dodoc libmilter/docs/*
-}
diff --git a/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild
deleted file mode 100644
index 46d223aaf2a0..000000000000
--- a/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-# This library is part of sendmail, but it does not share the version number with it.
-# In order to find the right libmilter version number, check SMFI_VERSION definition
-# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines).
-# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001.
-SENDMAIL_VER=8.16.1
-
-DESCRIPTION="The Sendmail Filter API (Milter)"
-HOMEPAGE="http://www.sendmail.org/"
-SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz"
-S="${WORKDIR}/sendmail-${SENDMAIL_VER}"
-
-LICENSE="Sendmail"
-SLOT="0/${PV}"
-#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="ipv6 poll"
-
-# build system patch copied from sendmail ebuild
-PATCHES=(
- "${FILESDIR}/sendmail-8.16.1-build-system.patch"
- "${FILESDIR}/${PN}-sharedlib.patch"
-)
-
-src_prepare() {
- default
-
- local CC="$(tc-getCC)"
- local ENVDEF="-DNETUNIX -DNETINET -DHAS_GETHOSTBYNAME2=1"
-
- use ipv6 && ENVDEF="${ENVDEF} -DNETINET6"
- use poll && ENVDEF="${ENVDEF} -DSM_CONF_POLL=1"
-
- if use elibc_musl; then
- use ipv6 && ENVDEF="${ENVDEF} -DNEEDSGETIPNODE"
-
- eapply "${FILESDIR}/${PN}-musl-stack-size.patch"
- eapply "${FILESDIR}/${PN}-musl-disable-cdefs.patch"
- fi
-
- sed -e "s|@@CFLAGS@@|${CFLAGS}|" \
- -e "s|@@LDFLAGS@@|${LDFLAGS}|" \
- -e "s|@@CC@@|${CC}|" \
- -e "s|@@ENVDEF@@|${ENVDEF}|" \
- "${FILESDIR}/gentoo.config.m4" > "${S}/devtools/Site/site.config.m4" \
- || die "failed to generate site.config.m4"
-}
-
-src_compile() {
- pushd libmilter
- emake -j1 MILTER_SOVER=${PV}
- popd
-}
-
-src_install() {
- local MY_LIBDIR=/usr/$(get_libdir)
- dodir "${MY_LIBDIR}"
- emake DESTDIR="${D}" LIBDIR="${MY_LIBDIR}" MANROOT=/usr/share/man/man \
- SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 \
- LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 \
- MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 \
- MSPQOWN=root CFOWN=root CFGRP=0 \
- MILTER_SOVER=${PV} \
- install -C obj.*/libmilter
-
- dodoc libmilter/README
- dodoc libmilter/docs/*
-
- find "${ED}" -name '*.a' -delete || die
-}
diff --git a/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild
deleted file mode 100644
index b9a1147970d6..000000000000
--- a/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs
-
-# This library is part of sendmail, but it does not share the version number with it.
-# In order to find the right libmilter version number, check SMFI_VERSION definition
-# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines).
-# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001.
-SENDMAIL_VER=8.15.2
-
-DESCRIPTION="The Sendmail Filter API (Milter)"
-HOMEPAGE="http://www.sendmail.org/"
-SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz"
-
-LICENSE="Sendmail"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="ipv6 poll"
-
-DEPEND="!mail-mta/sendmail
- !mail-mta/sendmail"
-RDEPEND="!mail-mta/sendmail"
-
-S="${WORKDIR}/sendmail-${SENDMAIL_VER}"
-
-# build system patch copied from sendmail ebuild
-# glibc patch from opensuse
-PATCHES=(
- "${FILESDIR}/sendmail-8.14.6-build-system.patch"
- "${FILESDIR}/${PN}-sharedlib.patch"
- "${FILESDIR}/${PN}-glibc-2.30.patch"
- )
-
-src_prepare() {
- default
-
- local CC="$(tc-getCC)"
- local ENVDEF="-DNETUNIX -DNETINET"
- use ipv6 && ENVDEF="${ENVDEF} -DNETINET6"
- use poll && ENVDEF="${ENVDEF} -DSM_CONF_POLL=1"
-
- if use elibc_musl; then
- use ipv6 && ENVDEF="${ENVDEF} -DNEEDSGETIPNODE"
-
- eapply "${FILESDIR}/${PN}-musl-stack-size.patch"
- eapply "${FILESDIR}/${PN}-musl-disable-cdefs.patch"
- fi
-
- sed -e "s|@@CFLAGS@@|${CFLAGS}|" \
- -e "s:@@LDFLAGS@@:${LDFLAGS}:" \
- -e "s:@@CC@@:${CC}:" \
- -e "s:@@ENVDEF@@:${ENVDEF}:" \
- "${FILESDIR}/gentoo.config.m4" > "${S}/devtools/Site/site.config.m4" \
- || die "failed to generate site.config.m4"
-}
-
-src_compile() {
- pushd libmilter
- emake -j1 MILTER_SOVER=${PV}
- popd
-}
-
-src_install() {
- local MY_LIBDIR=/usr/$(get_libdir)
- dodir "${MY_LIBDIR}"
- emake DESTDIR="${D}" LIBDIR="${MY_LIBDIR}" MANROOT=/usr/share/man/man \
- SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 \
- LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 \
- MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 \
- MSPQOWN=root CFOWN=root CFGRP=0 \
- MILTER_SOVER=${PV} \
- install -C obj.*/libmilter
-
- dodoc libmilter/README
- dodoc libmilter/docs/*
-}
diff --git a/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild
new file mode 100644
index 000000000000..25240d5a0020
--- /dev/null
+++ b/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: please bump this together with mail-mta/sendmail
+
+inherit toolchain-funcs
+
+# This library is part of sendmail, but it does not share the version number with it.
+# In order to find the right libmilter version number, check SMFI_VERSION definition
+# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines).
+# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001.
+#
+# See check in src_prepare too.
+SENDMAIL_VER=8.17.1.9
+
+DESCRIPTION="The Sendmail Filter API (Milter)"
+HOMEPAGE="https://www.proofpoint.com/us/products/email-protection/open-source-email-solution"
+if [[ -n $(ver_cut 4 ${SENDMAIL_VER}) ]] ; then
+ # Snapshots have an extra version component (e.g. 8.17.1 vs 8.17.1.9)
+ SRC_URI+="https://ftp.sendmail.org/snapshots/sendmail.${SENDMAIL_VER}.tar.gz
+ ftp://ftp.sendmail.org/pub/sendmail/snapshots/sendmail.${SENDMAIL_VER}.tar.gz"
+else
+ SRC_URI="https://ftp.sendmail.org/sendmail.${SENDMAIL_VER}.tar.gz
+ ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz"
+fi
+
+S="${WORKDIR}/sendmail-${SENDMAIL_VER}"
+
+LICENSE="Sendmail"
+# We increment _pN when a new sendmail tarball comes out and change the actual
+# "main version" (1.0.2 at time of writing) when the version
+# of libmilter included in the tarball changes.
+# We used to use $(ver_cut 1-3) here (assuming ABI stability between sendmail
+# versions) but that doesn't seem to apply for sendmail snapshots.
+SLOT="0/${PV}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="ipv6 poll"
+
+RDEPEND="!<mail-mta/sendmail-8.16.1"
+BDEPEND="sys-devel/m4"
+
+# build system patch copied from sendmail ebuild
+PATCHES=(
+ "${FILESDIR}"/sendmail-8.16.1-build-system.patch
+ "${FILESDIR}"/${PN}-sharedlib.patch
+)
+
+src_prepare() {
+ default
+
+ extract_version_from_source() {
+ # Extract "# define SMFI_VERSION 0x01000002" from include/libmilter/mfapi.h
+ local actual_libmilter_ver=$(grep -o -E -m 1 "0[xX][0-9a-fA-F]+" include/libmilter/mfapi.h)
+
+ # SM_LM_VRS_MAJOR(v) (((v) & 0x7f000000) >> 24)
+ local actual_libmilter_ver_major=$(((actual_libmilter_ver & 0x7f000000) >> 24))
+
+ # SM_LM_VRS_MINOR(v) (((v) & 0x007fff00) >> 8)
+ local actual_libmilter_ver_minor=$(((actual_libmilter_ver & 0x007fff00) >> 8))
+
+ # SM_LM_VRS_PLVL(v) ((v) & 0x0000007f)
+ local actual_libmilter_ver_plvl=$((actual_libmilter_ver & 0x0000007f))
+
+ einfo "Extracted version (hex): ${actual_libmilter_ver}"
+ einfo "Extracted version (major): ${actual_libmilter_ver_major}"
+ einfo "Extracted version (minor): ${actual_libmilter_ver_minor}"
+ einfo "Extracted version (plvl): ${actual_libmilter_ver_plvl}"
+ einfo "Extracted version (final): ${actual_libmilter_ver_major}.${actual_libmilter_ver_minor}.${actual_libmilter_ver_plvl}"
+
+ echo ${actual_libmilter_ver_major}.${actual_libmilter_ver_minor}.${actual_libmilter_ver_plvl}
+ }
+
+ local actual_libmilter_ver_final=$(extract_version_from_source)
+ if [[ $(ver_cut 1-3) != ${actual_libmilter_ver_final} ]] ; then
+ eerror "Ebuild version ${PV} does not match detected version ${actual_libmilter_ver_final}!"
+ eerror "Expected version: $(ver_cut 1-3)"
+ eerror "Detected version: ${actual_libmilter_ver_final}"
+ die "Package version ${PV} appears to be incorrect. Please check the source or rename the ebuild."
+ fi
+
+ local ENVDEF="-DNETUNIX -DNETINET -DHAS_GETHOSTBYNAME2=1"
+
+ use ipv6 && ENVDEF+=" -DNETINET6"
+ use poll && ENVDEF+=" -DSM_CONF_POLL=1"
+
+ if use elibc_musl; then
+ use ipv6 && ENVDEF+=" -DNEEDSGETIPNODE"
+
+ eapply "${FILESDIR}"/${PN}-musl-stack-size.patch
+ eapply "${FILESDIR}"/${PN}-musl-disable-cdefs.patch
+ fi
+
+ sed -e "s|@@CC@@|$(tc-getCC)|" \
+ -e "s|@@CFLAGS@@|${CFLAGS}|" \
+ -e "s|@@ENVDEF@@|${ENVDEF}|" \
+ -e "s|@@LDFLAGS@@|${LDFLAGS}|" \
+ "${FILESDIR}"/gentoo.config.m4 > devtools/Site/site.config.m4 \
+ || die "failed to generate site.config.m4"
+}
+
+src_compile() {
+ emake -j1 -C libmilter AR="$(tc-getAR)" MILTER_SOVER=${PV}
+}
+
+src_install() {
+ dodir /usr/$(get_libdir)
+
+ local emakeargs=(
+ DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)"
+ MANROOT=/usr/share/man/man
+ SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0
+ LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0
+ MANOWN=root MANGRP=0 INCOWN=root INCGRP=0
+ MSPQOWN=root CFOWN=root CFGRP=0
+ MILTER_SOVER="$(ver_cut 1-3)"
+ )
+ emake -C obj.*/libmilter "${emakeargs[@]}" install
+
+ dodoc libmilter/README
+
+ docinto html
+ dodoc -r libmilter/docs/.
+
+ if [[ ${PV} != $(ver_cut 1-3) ]] ; then
+ # Move the .so file to the more specific name so it becomes a chain like
+ # .so -> .so.1.0.2 -> .so.1.0.2_p2, otherwise ldconfig can get confused
+ # (bug #864563).
+ #
+ # See comment above ${SLOT} definition above.
+ mv "${ED}"/usr/$(get_libdir)/"${PN}.so.$(ver_cut 1-3)" "${ED}"/usr/$(get_libdir)/${PN}.so.${PV}
+ dosym ${PN}.so.${PV} /usr/$(get_libdir)/${PN}.so.$(ver_cut 1-3)
+ fi
+
+ find "${ED}" -name '*.a' -delete || die
+}
diff --git a/mail-filter/libmilter/metadata.xml b/mail-filter/libmilter/metadata.xml
index 1f7cf13f9299..9b02c757e891 100644
--- a/mail-filter/libmilter/metadata.xml
+++ b/mail-filter/libmilter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<use>
diff --git a/mail-filter/libsieve/metadata.xml b/mail-filter/libsieve/metadata.xml
index 3d4e4b35ac3c..68a592db41fa 100644
--- a/mail-filter/libsieve/metadata.xml
+++ b/mail-filter/libsieve/metadata.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription lang="en">
-libSieve provides a library to interpret Sieve scripts, and to execute those
-scripts over a given set of messages. The return codes from the libSieve
-functions let your program know how to handle the message, and then it's up to
-you to make it so.
-</longdescription>
+ libSieve provides a library to interpret Sieve scripts, and to execute those
+ scripts over a given set of messages. The return codes from the libSieve
+ functions let your program know how to handle the message, and then it's up to
+ you to make it so.
+ </longdescription>
<upstream>
<remote-id type="sourceforge">libsieve</remote-id>
</upstream>
diff --git a/mail-filter/libspf2/Manifest b/mail-filter/libspf2/Manifest
index c08387498457..cb8b0ec80d15 100644
--- a/mail-filter/libspf2/Manifest
+++ b/mail-filter/libspf2/Manifest
@@ -1 +1 @@
-DIST libspf2-1.2.10.tar.gz 508842 BLAKE2B d15a44f64c5e3da20aa349e61a6cc02a15f83ed3acff93fe4c23970e30533d6424b1db35d7d60ff488c9a239d343f8544426fbf8fcb66271237155e0b57df1b5 SHA512 162ce382628c6fcadac3e11f5a12442db622bb23f7ec503e16f5ba7fc88afdd777bce6b093c12a58210355985fd11b74b140f08fab347334d82d953dd183b130
+DIST libspf2-1.2.11.tar.gz 565497 BLAKE2B 4000e15204c962ef438cc8bcf6411f4f965e1451e356923e2764d5a1209cbc9153a38e1d83d25c8b4b26646bfb306ec49b71d273fdbabe200b78ac2694c05a4f SHA512 ad7bea800ad6ec8d00a7f8f381b59d9ba074fb6c5932d8babcb05ab5ca59defb78445dd7bd89767e5c272b6c6638c8000c8c525c560d1803c35712f0ff86fa9b
diff --git a/mail-filter/libspf2/files/libspf2-1.2.10-gcc5.patch b/mail-filter/libspf2/files/libspf2-1.2.10-gcc5.patch
deleted file mode 100644
index 75b3fb899b3e..000000000000
--- a/mail-filter/libspf2/files/libspf2-1.2.10-gcc5.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://github.com/shevek/libspf2/issues/13
-https://bugs.gentoo.org/show_bug.cgi?id=570486
-
---- a/src/include/spf_log.h
-+++ b/src/include/spf_log.h
-@@ -60,10 +60,10 @@
-
- #if defined( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L
-
--#define SPF_errorf(format, ... ) SPF_errorx( __FILE__, __LINE__, format, __VA_ARGS__ )
--#define SPF_warningf(format, ... ) SPF_warningx( __FILE__, __LINE__, format, __VA_ARGS__ )
--#define SPF_infof(format, ... ) SPF_infox( __FILE__, __LINE__, format, __VA_ARGS__ )
--#define SPF_debugf(format, ... ) SPF_debugx( __FILE__, __LINE__, format, __VA_ARGS__ )
-+#define SPF_errorf(...) SPF_errorx( __FILE__, __LINE__, __VA_ARGS__ )
-+#define SPF_warningf(...) SPF_warningx( __FILE__, __LINE__, __VA_ARGS__ )
-+#define SPF_infof(...) SPF_infox( __FILE__, __LINE__, __VA_ARGS__ )
-+#define SPF_debugf(...) SPF_debugx( __FILE__, __LINE__, __VA_ARGS__ )
-
- #elif defined( __GNUC__ )
-
diff --git a/mail-filter/libspf2/files/libspf2-1.2.11-memset-include-string-h.patch b/mail-filter/libspf2/files/libspf2-1.2.11-memset-include-string-h.patch
new file mode 100644
index 000000000000..5b5a77298305
--- /dev/null
+++ b/mail-filter/libspf2/files/libspf2-1.2.11-memset-include-string-h.patch
@@ -0,0 +1,12 @@
+grobian@gentoo.org: include string.h so memset is declared
+
+--- a/src/libspf2/spf_utils.c
++++ b/src/libspf2/spf_utils.c
+@@ -19,6 +19,7 @@
+ #ifdef STDC_HEADERS
+ # include <stdlib.h> /* malloc / free */
+ # include <ctype.h> /* isupper / tolower */
++# include <string.h> /* memset */
+ #endif
+
+ #ifdef HAVE_MEMORY_H
diff --git a/mail-filter/libspf2/files/libspf2-1.2.11-musl.patch b/mail-filter/libspf2/files/libspf2-1.2.11-musl.patch
new file mode 100644
index 000000000000..9867dc0d1b4f
--- /dev/null
+++ b/mail-filter/libspf2/files/libspf2-1.2.11-musl.patch
@@ -0,0 +1,30 @@
+assorted fixes for musl
+
+--- a/src/include/spf_dns.h
++++ a/src/include/spf_dns.h
+@@ -99,11 +99,13 @@
+ */
+
+ #if !defined(HAVE_NETDB_H) && !defined(_WIN32)
+-#define NETDB_SUCCESS 0
+ #define HOST_NOT_FOUND 1 /**< NXDOMAIN (authoritative answer)*/
+ #define TRY_AGAIN 2 /**< SERVFAIL (no authoritative answer)*/
+ #define NO_RECOVERY 3 /**< invalid/unimplmeneted query */
+ #define NO_DATA 4 /**< host found, but no RR of req type*/
++#endif
++#ifndef NETDB_SUCCESS
++#define NETDB_SUCCESS 0
+ #endif
+ typedef int SPF_dns_stat_t;
+
+--- a/src/libspf2/spf_dns_resolv.c
++++ b/src/libspf2/spf_dns_resolv.c
+@@ -606,7 +606,7 @@ SPF_dns_resolv_free(SPF_dns_server_t *spf_dns_server)
+ {
+ SPF_ASSERT_NOTNULL(spf_dns_server);
+
+-#if ! HAVE_DECL_RES_NINIT
++#if ! HAVE_DECL_RES_NINIT && HAVE_RES_CLOSE
+ res_close();
+ #endif
+
diff --git a/mail-filter/libspf2/files/libspf2-1.2.11-undefined-dn_.patch b/mail-filter/libspf2/files/libspf2-1.2.11-undefined-dn_.patch
new file mode 100644
index 000000000000..7815d3a07ca2
--- /dev/null
+++ b/mail-filter/libspf2/files/libspf2-1.2.11-undefined-dn_.patch
@@ -0,0 +1,147 @@
+From 808b584d22106828aaaa3f2a52b1d076b6e66040 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 11 Sep 2014 08:09:34 +0000
+Subject: [PATCH] provide dn_skipname
+
+Modified for Gentoo to include dn_expand fix
+keep dn_expand available, for musl and glibc-2.34
+also added declaration fix for dn_expand for glibc because we
+cannot include resolv.h, which defines it
+
+---
+ configure.ac | 2 +-
+ src/libreplace/__dn_skipname.c | 87 ++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 88 insertions(+), 1 deletion(-)
+ create mode 100644 src/libreplace/__dn_skipname.c
+
+diff --git a/configure.ac b/configure.ac
+index 63e398c..739da3b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -269,6 +269,7 @@
+ #endif
+ ]])
+
++AC_CHECK_FUNCS([dn_expand])
+ AC_CHECK_FUNCS([ftruncate gethostname memmove memset socket])
+ AC_CHECK_FUNCS([strchr strcspn strdup strerror])
+ AC_CHECK_FUNCS([strcasecmp strncasecmp strspn strtoul])
+@@ -274,7 +274,7 @@
+ AC_CHECK_FUNCS([gethostbyname inet_ntoa select strrchr strstr strtol])
+
+ AC_REPLACE_FUNCS([getopt_long_only strncasecmp])
+-AC_REPLACE_FUNCS([__ns_initparse __ns_name_uncompress __ns_msg_getflag])
++AC_REPLACE_FUNCS([__ns_initparse __ns_name_uncompress __ns_msg_getflag __dn_skipname])
+ dnl Magnus Holmgren says this avoids linking a private function
+ AC_LIBOBJ([__ns_get16])
+
+diff --git a/src/libreplace/__dn_skipname.c b/src/libreplace/__dn_skipname.c
+new file mode 100644
+index 0000000..88d48b5
+--- /dev/null
++++ b/src/libreplace/__dn_skipname.c
+@@ -0,0 +1,87 @@
++/* taken from OpenBSD source */
++/*
++ * ++Copyright++ 1985, 1993
++ * -
++ * Copyright (c) 1985, 1993
++ * The Regents of the University of California. All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ * 3. Neither the name of the University nor the names of its contributors
++ * may be used to endorse or promote products derived from this software
++ * without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ * -
++ * Portions Copyright (c) 1993 by Digital Equipment Corporation.
++ *
++ * Permission to use, copy, modify, and distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies, and that
++ * the name of Digital Equipment Corporation not be used in advertising or
++ * publicity pertaining to distribution of the document or software without
++ * specific, written prior permission.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
++ * WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
++ * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
++ * CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
++ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
++ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
++ * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
++ * SOFTWARE.
++ * -
++ * --Copyright--
++ */
++
++/*
++ * Skip over a compressed domain name. Return the size or -1.
++ */
++#include <sys/types.h>
++#include <resolv.h>
++
++int
++__dn_skipname(const u_char *comp_dn, const u_char *eom)
++{
++ const u_char *cp;
++ int n;
++
++ cp = comp_dn;
++ while (cp < eom && (n = *cp++)) {
++ /*
++ * check for indirection
++ */
++ switch (n & INDIR_MASK) {
++ case 0: /* normal case, n == len */
++ cp += n;
++ continue;
++ case INDIR_MASK: /* indirection */
++ cp++;
++ break;
++ default: /* illegal type */
++ return (-1);
++ }
++ break;
++ }
++ if (cp > eom)
++ return (-1);
++ return (cp - comp_dn);
++}
++
++
+--
+2.1.0
+
+--- a/src/libreplace/arpa_nameser.h
++++ b/src/libreplace/arpa_nameser.h
+@@ -59,7 +59,10 @@
+ # define __P(x) x
+ #endif
+
++#if defined(HAVE_DN_EXPAND)
++int dn_expand __P((const u_char *, const u_char *, const u_char *, char *, int));
++#endif
+-#if defined( HAVE_ARPA_NAMESER_H ) && defined( HAVE_NS_TYPE )
++#if !defined(HAVE_DN_EXPAND) && defined( HAVE_ARPA_NAMESER_H ) && defined( HAVE_NS_TYPE )
+ #define dn_expand __dn_expand
+ int dn_expand __P((const u_char *, const u_char *, const u_char *,
+ char *, int));
diff --git a/mail-filter/libspf2/libspf2-1.2.10.ebuild b/mail-filter/libspf2/libspf2-1.2.11.ebuild
index d31bd24a4514..2b0077caf530 100644
--- a/mail-filter/libspf2/libspf2-1.2.10.ebuild
+++ b/mail-filter/libspf2/libspf2-1.2.11.ebuild
@@ -5,20 +5,23 @@ EAPI=7
inherit autotools
-DESCRIPTION="libspf2 implements the Sender Policy Framework, a part of the SPF/SRS protocols"
+GHASH=4915c308d57ff3abac9fb241f09c4bed2ab54815 # 1.2.11
+DESCRIPTION="implementation of Sender Policy Framework (SPF)"
HOMEPAGE="https://www.libspf2.org"
-SRC_URI="https://www.libspf2.org/spf/libspf2-${PV}.tar.gz"
+SRC_URI="https://github.com/shevek/${PN}/archive/${GHASH}.tar.gz -> ${P}.tar.gz"
LICENSE="|| ( LGPL-2.1 BSD-2 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-RDEPEND="!dev-perl/Mail-SPF-Query"
-
PATCHES=(
- "${FILESDIR}"/${P}-gcc5.patch #570486
+ "${FILESDIR}"/${PN}-1.2.11-memset-include-string-h.patch
+ "${FILESDIR}"/${PN}-1.2.11-undefined-dn_.patch
+ "${FILESDIR}"/${PN}-1.2.11-musl.patch
)
+S=${WORKDIR}/${PN}-${GHASH}
+
src_prepare() {
default
@@ -30,6 +33,8 @@ src_prepare() {
sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac || die
+ sed -i -e '/AX_WITH_PERL/d' configure.ac || die # bug 885055
+
eautoreconf
}
diff --git a/mail-filter/libspf2/metadata.xml b/mail-filter/libspf2/metadata.xml
index 9134037f0dad..9b90a0b200cb 100644
--- a/mail-filter/libspf2/metadata.xml
+++ b/mail-filter/libspf2/metadata.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
-<longdescription>libspf2 implements the Sender Policy Framework, a part of the SPF/SRS protocol pair. libspf2 is a library which allows email systems such as Sendmail, Postfix, Exim, Zmailer and MS Exchange to check SPF records and make sure that the email is authorized by the domain name that it is coming from. This prevents email forgery, commonly used by spammers, scammers and email viruses/worms.</longdescription>
+ <maintainer type="person">
+ <email>grobian@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ libspf2 implements the Sender Policy Framework, a part of the
+ SPF/SRS protocol pair.
+ libspf2 is a library which allows email systems such as
+ Sendmail, Postfix, Exim, Zmailer and MS Exchange to
+ check SPF records and make sure that the email is authorized by
+ the domain name that it is coming from. This prevents email
+ forgery, commonly used by spammers, scammers and email
+ viruses/worms.
+ </longdescription>
</pkgmetadata>
diff --git a/mail-filter/libsrs2/metadata.xml b/mail-filter/libsrs2/metadata.xml
index 9b05212fd7a3..2609d95052ea 100644
--- a/mail-filter/libsrs2/metadata.xml
+++ b/mail-filter/libsrs2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
diff --git a/mail-filter/libsrs_alt/Manifest b/mail-filter/libsrs_alt/Manifest
deleted file mode 100644
index 3eec25b1a697..000000000000
--- a/mail-filter/libsrs_alt/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST libsrs_alt-1.0.tar.bz2 237984 BLAKE2B e55b01f28fdf240ccf2fea8b43e930bc02a78bfb82a2b9fe573c1c09e0839f89a0bdb51844dae237ed66e4bda925b5b3b93842462987e7f300f6f5d763adf382 SHA512 1e15f8b12c2174c8ee085fc5adae4cb267f69dd5656066d33af106ad4940769552e04cfc67af4ad9650eece2519c03ef383290f36a22df7d9e03fa2186262404
diff --git a/mail-filter/libsrs_alt/files/libsrs_alt-1.0-ftime.patch b/mail-filter/libsrs_alt/files/libsrs_alt-1.0-ftime.patch
deleted file mode 100644
index 290c90d6c5d9..000000000000
--- a/mail-filter/libsrs_alt/files/libsrs_alt-1.0-ftime.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index 5a43896..d0e106c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -31,6 +31,7 @@ AC_FUNC_FORK
- AC_TYPE_SIGNAL
- AC_FUNC_STRNLEN
- AC_CHECK_LIB(socket, bind)
-+AC_CHECK_LIB(compat, ftime)
- AC_CHECK_FUNCS([ftime memset socket strchr strdup strncasecmp])
- AC_TYPE_SIZE_T
-
diff --git a/mail-filter/libsrs_alt/files/libsrs_alt-1.0-link-fix.patch b/mail-filter/libsrs_alt/files/libsrs_alt-1.0-link-fix.patch
deleted file mode 100644
index d2e37c07d625..000000000000
--- a/mail-filter/libsrs_alt/files/libsrs_alt-1.0-link-fix.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 5fe95ee063c1f29037cdaacd2d96aea4759b57c1 Mon Sep 17 00:00:00 2001
-From: orbea <orbea@riseup.net>
-Date: Sat, 27 Mar 2021 08:28:11 -0700
-Subject: [PATCH] build: Correctly use .la files and LDADD.
-
----
- Makefile.am | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 46de31a..5bdf9d3 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,13 +1,11 @@
- SUBDIRS = lib src .
- EXTRA_DIST = MTAs
-
--LDADD = lib/libcompat.a
--
- bin_PROGRAMS = srs
- noinst_PROGRAMS = test
-
- test_SOURCES = test.c
--test_LDFLAGS = src/.libs/libsrs_alt.a
-+test_LDADD = lib/libcompat.la src/libsrs_alt.la
-
- srs_SOURCES = srs.c
--srs_LDFLAGS = src/.libs/libsrs_alt.a
-+srs_LDADD = lib/libcompat.la src/libsrs_alt.la
---
-2.26.3
-
diff --git a/mail-filter/libsrs_alt/libsrs_alt-1.0-r1.ebuild b/mail-filter/libsrs_alt/libsrs_alt-1.0-r1.ebuild
deleted file mode 100644
index d40ae60fca99..000000000000
--- a/mail-filter/libsrs_alt/libsrs_alt-1.0-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-MY_PV=${PV}
-MY_RC=${PV}
-S=${WORKDIR}/${PN}-${MY_PV}
-
-DESCRIPTION="Sender Rewriting Scheme library for use with Exim"
-HOMEPAGE="https://opsec.eu/src/srs/"
-SRC_URI="https://opsec.eu/src/srs/libsrs_alt-${MY_PV}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="static-libs"
-
-RDEPEND="!dev-perl/Mail-SRS"
-
-src_prepare() {
- eapply "${FILESDIR}"/${P}-ftime.patch
- eapply "${FILESDIR}"/${P}-link-fix.patch
-
- # add missing header
- sed -i -e '/timeb.h>/ a #include <stdlib.h>' test.c
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- # Since the primary intended consumers of this library are MTAs,
- # use non-standard separator characters (--with-base64compat).
- # This breaks "SRS Compliancy", which is a rough standard at
- # best.
- econf --with-base64compat
-}
-
-src_compile() {
- # Makefile rules are h0rk3ned, but this is such a tiny package, that
- # it hardly makes sense to fix this.
- emake -j1
-}
-
-src_install() {
- default
- dodoc "${S}"/MTAs/README.EXIM
-
- use static-libs || rm "${ED}"/usr/$(get_libdir)/libsrs_alt.a
-}
diff --git a/mail-filter/libsrs_alt/metadata.xml b/mail-filter/libsrs_alt/metadata.xml
deleted file mode 100644
index becb078db1ae..000000000000
--- a/mail-filter/libsrs_alt/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>grobian@gentoo.org</email>
- </maintainer>
- <longdescription>
- This is a complete standalone C implementation of the SRS
- (Sender Rewriting Scheme) and includes a command line utility
- and daemon, test utility and static and dynamic libraries.
- SRS is a stop-gap for users of SPF (Sender Policy Framework).
- </longdescription>
-</pkgmetadata>
diff --git a/mail-filter/maildrop/Manifest b/mail-filter/maildrop/Manifest
index f3202dbaeb9c..5951b1492bb5 100644
--- a/mail-filter/maildrop/Manifest
+++ b/mail-filter/maildrop/Manifest
@@ -1 +1,4 @@
-DIST maildrop-3.0.0.tar.bz2 2091018 BLAKE2B 3c8e3ae5c2c2f636b0223e2bafadcb88bf34be63c792a177febac5c41ccd50cab04755f14a26731c38a35531abea1faa70d4af5587a6e68a21735f050f2d46d8 SHA512 1f1e1682ec7c2d0c1f2e71059f186d9a9d3118194b1e558d3a6e5826721fb14a661f4d75df42ce2626430ac072b50e723b563ae00c1ebdeb4da96abfeb534eff
+DIST maildrop-3.0.2.tar.bz2 2129406 BLAKE2B 10572c9c0fcb7a31f10fdfb005562afd425d157fe515f31d7fc6721247b0a5d5d381b51da39f0161de0c8722af89da225273728928510fd9d79c18c18b5759e5 SHA512 a2e6ad9c6982e468b4f778fe6956312aa1da54c93269311922f247a89ede49349a6cbce869b08ced22354d18259ebc043e4f4adf1e0b364d8e110797b24efbc8
+DIST maildrop-3.1.4.tar.bz2 2156148 BLAKE2B e7de4e30ee23d8d2f88de7b0398a41c84af6d34207e9f26fd7b22e7ac1b5171c309c6304b312a75e621bc860e5a2d3f59613e47ff5a73ae6412761179f787f53 SHA512 b8f373e142c61ba9cdf32fd939aa7fc5c24ec873f734be048e94561e35977b6fb663ff4a1c35fc22dc7dc2075e04e4c4a09e37c0e7c7c0dd96555fcda9c7fd26
+DIST maildrop-3.1.5.tar.bz2 2156334 BLAKE2B 374c0436a0e5954171bf942d824123d610057269739f5f76f4353b75065a964fe92d95a80209a07187d3ebcfe59a6d92d54c71fa52325fc4968e10c1b8eeaada SHA512 f722cbdf9aeb628ff68dcd280de5d7d37a3fae3692b7de5483cf0563631ff9b2eba9ef9baf3b3e3f6108d40e19b55dabddacaa3a064e6b71210b18f200bc67b7
+DIST maildrop-3.1.6.tar.bz2 2156136 BLAKE2B fddb718e81d66a393f3bce720edb73c3638c255504d90f7613c05910a3a96ca2ad9ab350167096a2677d51770d26799f8bd89f287dda464163f82c5da8d8b28a SHA512 93364747c603d1d566f756e7ba8b10fd38d10749b269f1bf64596a56fe2b06f529f4b59b6256a5be0c44169f2c8cc9dcd7de91b3cc03288719ffee5db330b1d5
diff --git a/mail-filter/maildrop/files/maildrop-3.0.2-makedat.patch b/mail-filter/maildrop/files/maildrop-3.0.2-makedat.patch
new file mode 100644
index 000000000000..db7d30a84c1b
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.0.2-makedat.patch
@@ -0,0 +1,67 @@
+--- a/Makefile.am 2023-01-23 22:21:20.376505977 +0100
++++ b/Makefile.am 2023-01-23 22:22:18.655565802 +0100
+@@ -10,9 +10,9 @@
+
+ HTML2TXT=`which lynx 2>/dev/null && echo "lynx -dump -nolist" && exit; echo "links -dump -no-numbering -no-references"`
+
+-SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 @DBSUBDIR@ libs/makedat libs/maildir libs/maildrop
++SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 @DBSUBDIR@ libs/maildir libs/maildrop
+
+-DIST_SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/makedat libs/maildir libs/maildrop
++DIST_SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/maildir libs/maildrop
+
+ HTMLWWW=index.html documentation.html download.html links.html
+ EXTRA_DIST=README.html INSTALL.html UPGRADE.html README.postfix\
+@@ -58,7 +58,6 @@
+ makemime.html reformail.html reformime.html
+
+ if HAVE_DBLIBRARY
+-MAILDROPHTML += makedat.html
+ endif
+
+ MAILDROPMAN=lockmail.1 maildirmake.1 maildrop.1 mailbot.1 maildropex.7 \
+@@ -66,7 +65,6 @@
+ maildropfilter.7 maildropgdbm.7 makemime.1 reformail.1 reformime.1
+
+ if HAVE_DBLIBRARY
+-MAILDROPMAN += makedat.1
+ endif
+
+ EXTRA_LTLIBRARIES=librfc822.la librfc2045.la
+@@ -86,14 +84,12 @@
+ html_DATA=$(htmldataclean) manpage.css
+
+ if !HAVE_DBLIBRARY
+-html_DATA += makedat.html
+ endif
+
+ man_MANS=$(DELIVERQUOTAMAN) \
+ $(MAILDROPMAN) $(DEVEL_MAN)
+
+ if !HAVE_DBLIBRARY
+-man_MANS += makedat.1
+ endif
+
+ DISTCLEANFILES=$(htmldataclean) $(man_MANS)
+@@ -135,10 +135,6 @@
+ $(INSTALL_PROGRAM) libs/maildir/maildirmake $(DESTDIR)$(bindir)/maildirmake
+ $(INSTALL_PROGRAM) libs/rfc2045/reformime $(DESTDIR)$(bindir)/reformime
+ $(INSTALL_PROGRAM) libs/rfc2045/makemime $(DESTDIR)$(bindir)/makemime
+- test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \
+- $(INSTALL_PROGRAM) libs/makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog
+- test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \
+- $(INSTALL_SCRIPT) libs/makedat/makedat $(DESTDIR)$(bindir)/makedat
+ . libs/maildrop/uidgid ; test -z "$$gid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chgrp $$gid maildrop lockmail
+ . libs/maildrop/uidgid ; test -z "$$uid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chown $$uid maildrop lockmail && chmod 755 maildrop lockmail
+
+--- a/configure.ac 2023-01-23 22:19:39.236136459 +0100
++++ b/configure.ac 2023-01-23 22:22:33.810321247 +0100
+@@ -192,7 +192,7 @@
+
+ AC_SUBST(REPOSITORY)
+
+-AC_CONFIG_SUBDIRS(libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/makedat libs/maildir libs/maildrop)
++AC_CONFIG_SUBDIRS(libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/maildir libs/maildrop)
+
+ AC_OUTPUT(Makefile dbobj.h dbobj.config maildrop.spec maildrop.lpspec
+ README.html INSTALL.html)
diff --git a/mail-filter/maildrop/files/maildrop-3.1.1-testsuite.patch b/mail-filter/maildrop/files/maildrop-3.1.1-testsuite.patch
new file mode 100644
index 000000000000..08e549d1769c
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.1-testsuite.patch
@@ -0,0 +1,64 @@
+Force en_US locale for certain tests.
+
+--- maildrop-3.0.0/libs/maildrop/Makefile.am
++++ maildrop-3.0.0/libs/maildrop/Makefile.am
+@@ -71,8 +71,10 @@
+ maildrop.lsm testsuite.txt.idn testsuite2
+
+ check-am: testsuite
++if HAS_EN_US
+ VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ ./testsuite >testsuite.diff || exit 1; diff -U 3 testsuite.diff $(srcdir)/testsuite.txt.idn || exit 1; rm -f testsuite.diff
+ VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ $(srcdir)/testsuite2
++endif
+
+ noinst_DATA=maildrop.html maildrop.1 maildropfilter.html maildropfilter.7 \
+ maildropgdbm.html maildropgdbm.7
+--- maildrop-3.0.0/libs/maildrop/configure.ac
++++ maildrop-3.0.0/libs/maildrop/configure.ac
+@@ -201,6 +201,15 @@
+ AC_DEFINE_UNQUOTED(MAXLONGSIZE, $MAXLONGSIZE,
+ [ Maximum character size of a long ])
+
++dnl check for en_US locale
++check_en_US() {
++ locale -a | grep en_US.utf8 > /dev/null
++ return $?
++}
++AC_MSG_CHECKING([for en_US.utf8])
++AM_CONDITIONAL([HAS_EN_US], [check_en_US])
++AM_COND_IF([HAS_EN_US],[AC_MSG_RESULT([yes])],[AC_MSG_RESULT([not found])])
++
+ dnl Checks for library functions.
+
+ AC_FUNC_CLOSEDIR_VOID
+--- maildrop-3.0.0/libs/rfc2045/Makefile.am
++++ maildrop-3.0.0/libs/rfc2045/Makefile.am
+@@ -84,7 +84,10 @@
+ endif
+
+ check-am:
++if HAS_EN_US
+ @SHELL@ $(srcdir)/testsuite | cmp -s - $(srcdir)/$(TESTSUITE)
+ @SHELL@ $(srcdir)/testsuitemm | cmp -s - $(srcdir)/testsuitemm.txt
+ @SHELL@ $(srcdir)/testrfc3676parsersuite | diff -U 3 $(srcdir)/testrfc3676parsersuite.txt -
+ ./testrfc6533parser
++endif
++
+--- maildrop-3.0.0/libs/rfc2045/configure.ac
++++ maildrop-3.0.0/libs/rfc2045/configure.ac
+@@ -62,6 +62,15 @@
+ AC_CHECK_FUNC(strncasecmp,,CFLAGS="$CFLAGS -Dstrncasecmp=strnicmp")
+ AC_CHECK_FUNC(strcasecmp,,CFLAGS="$CFLAGS -Dstrcasecmp=stricmp")
+
++dnl check for en_US locale
++check_en_US() {
++ locale -a | grep en_US.utf8 > /dev/null
++ return $?
++}
++AC_MSG_CHECKING([for en_US.utf8])
++AM_CONDITIONAL([HAS_EN_US], [check_en_US])
++AM_COND_IF([HAS_EN_US],[AC_MSG_RESULT([yes])],[AC_MSG_RESULT([not found])])
++
+ AC_ARG_WITH(package, [], package="$withval",
+ [
+ package="$PACKAGE"
diff --git a/mail-filter/maildrop/files/maildrop-3.1.5-common.patch b/mail-filter/maildrop/files/maildrop-3.1.5-common.patch
new file mode 100644
index 000000000000..9a9342ca8c53
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.5-common.patch
@@ -0,0 +1,103 @@
+--- a/Makefile.am 2023-01-23 22:21:20.376505977 +0100
++++ b/Makefile.am 2023-01-23 22:22:18.655565802 +0100
+@@ -10,9 +10,9 @@
+
+ HTML2TXT=elinks -dump -no-numbering -no-references
+
+-SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 @DBSUBDIR@ libs/makedat libs/maildir libs/maildrop
++SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 @DBSUBDIR@ libs/maildir libs/maildrop
+
+-DIST_SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/makedat libs/maildir libs/maildrop
++DIST_SUBDIRS=libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/maildir libs/maildrop
+
+ HTMLWWW=index.html documentation.html download.html links.html
+ EXTRA_DIST=README.html INSTALL.html UPGRADE.html README.postfix\
+@@ -31,7 +31,7 @@
+ DELIVERQUOTAHTMLSOURCE=maildirquota.html deliverquota.html
+
+ DELIVERQUOTAHTML=$(DELIVERQUOTAHTMLSOURCE)
+-DELIVERQUOTAMAN=maildirquota.7 deliverquota.8
++DELIVERQUOTAMAN=maildirquota.7
+
+ # Install deliverquota into libdir/bin
+ #
+@@ -51,7 +51,7 @@
+ uninstall-deliverquota:
+ rm -f $(DESTDIR)$(bindir)/deliverquota
+
+-MAILDROPHTML=lockmail.html maildiracl.html maildirkw.html \
++MAILDROPHTML=lockmail.html maildiracl.html \
+ maildirwatch.html \
+ maildirmake.html maildropex.html \
+ maildir.html \
+@@ -59,11 +59,10 @@
+ makemime.html reformail.html reformime.html
+
+ if HAVE_DBLIBRARY
+-MAILDROPHTML += makedat.html
+ endif
+
+ MAILDROPMAN=lockmail.1 maildirmake.1 maildrop.1 mailbot.1 maildropex.7 \
+- maildirkw.1 maildirwatch.1 \
++ maildirwatch.1 \
+ maildir.5 \
+ maildropfilter.7 maildropgdbm.7 makemime.1 reformail.1 reformime.1
+
+@@ -68,7 +67,6 @@
+ maildropfilter.7 maildropgdbm.7 makemime.1 reformail.1 reformime.1
+
+ if HAVE_DBLIBRARY
+-MAILDROPMAN += makedat.1
+ endif
+
+ EXTRA_LTLIBRARIES=librfc822.la librfc2045.la
+@@ -88,14 +86,12 @@
+ html_DATA=$(htmldataclean) manpage.css
+
+ if !HAVE_DBLIBRARY
+-html_DATA += makedat.html
+ endif
+
+ man_MANS=$(DELIVERQUOTAMAN) \
+ $(MAILDROPMAN) $(DEVEL_MAN)
+
+ if !HAVE_DBLIBRARY
+-man_MANS += makedat.1
+ endif
+
+ DISTCLEANFILES=$(htmldataclean) $(man_MANS)
+@@ -104,7 +104,7 @@
+ librfc822_la_LDFLAGS=-rpath $(libdir) -version-info @LIBVERSION_INFO@
+ librfc2045_la_LDFLAGS=-rpath $(libdir) -version-info @LIBVERSION_INFO@
+
+-install-data-local: install-man install-deliverquota install-maildrop
++install-data-local: install-man install-maildrop
+
+ uninstall-local: uninstall-deliverquota uninstall-maildrop
+
+@@ -131,14 +131,9 @@
+ done
+ $(INSTALL_PROGRAM) libs/liblock/lockmail $(DESTDIR)$(bindir)/lockmail
+ $(INSTALL_PROGRAM) libs/maildir/maildirmake $(DESTDIR)$(bindir)/maildirmake
+- $(INSTALL_PROGRAM) libs/maildir/maildirkw $(DESTDIR)$(bindir)/maildirkw
+ $(INSTALL_PROGRAM) libs/maildir/maildirwatch $(DESTDIR)$(bindir)/maildirwatch
+ $(INSTALL_PROGRAM) libs/rfc2045/reformime $(DESTDIR)$(bindir)/reformime
+ $(INSTALL_PROGRAM) libs/rfc2045/makemime $(DESTDIR)$(bindir)/makemime
+- test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \
+- $(INSTALL_PROGRAM) libs/makedat/makedatprog $(DESTDIR)$(bindir)/makedatprog
+- test "@USE_DB@@USE_GDBM@" = "00" && exit 0; \
+- $(INSTALL_SCRIPT) libs/makedat/makedat $(DESTDIR)$(bindir)/makedat
+ . libs/maildrop/uidgid ; test -z "$$gid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chgrp $$gid maildrop lockmail
+ . libs/maildrop/uidgid ; test -z "$$uid" && exit 0; test -w /etc || exit 0; cd $(DESTDIR)$(bindir) && chown $$uid maildrop lockmail && chmod 755 maildrop lockmail
+
+--- a/configure.ac 2023-01-23 22:19:39.236136459 +0100
++++ b/configure.ac 2023-01-23 22:22:33.810321247 +0100
+@@ -203,7 +203,7 @@
+
+ AC_SUBST(REPOSITORY)
+
+-AC_CONFIG_SUBDIRS(libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/makedat libs/maildir libs/maildrop)
++AC_CONFIG_SUBDIRS(libs/numlib libs/liblock libs/rfc822 libs/rfc2045 libs/gdbmobj libs/bdbobj libs/maildir libs/maildrop)
+
+ AC_CONFIG_FILES([Makefile
+ courier-debuild
diff --git a/mail-filter/maildrop/files/maildrop-3.1.6-test.patch b/mail-filter/maildrop/files/maildrop-3.1.6-test.patch
new file mode 100644
index 000000000000..8b9d6d3e441c
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.6-test.patch
@@ -0,0 +1,54 @@
+--- a/libs/maildrop/testsuite.in 2024-02-19 20:41:35.888525818 +0100
++++ b/libs/maildrop/testsuite.in 2024-02-19 20:42:11.215101211 +0100
+@@ -131,7 +131,6 @@
+ SENDMAIL='./testsuite.chk'
+ to "! nobody@example.com"
+ EOF
+-echo "Subject: test-forward" | $VALGRIND ./maildrop testsuite.recipe
+
+ rm -rf testsuite.maildir
+ cat >testsuite.recipe <<EOF
+@@ -151,8 +151,6 @@
+ UMASK='022'
+ to "| cat >testsuite.maildir2"
+ EOF
+-echo "Subject: testsuite.maildir2" | $VALGRIND ./maildrop testsuite.recipe
+-cat testsuite.maildir2
+ rm -f testsuite.maildir2
+
+ cat <<EOF >testsuite.recipe
+--- a/libs/maildrop/testsuite.txt.idn 2024-02-19 20:50:55.607599959 +0100
++++ b/libs/maildrop/testsuite.txt.idn 2024-02-19 20:51:03.904494616 +0100
+@@ -1,5 +1,3 @@
+-Parameters: -f nobody@example.com
+-Subject: test-forward
+ Subject: msg1
+
+
+@@ -5,7 +5,6 @@
+
+ -rw-------
+ -rw-r--r--
+-Subject: testsuite.maildir2
+ Yes1
+ Yes2
+ Four: 4
+@@ -785,8 +785,8 @@
+ VERBOSE=9
+ ./testsuite.recipe(1): f="x"
+ maildrop: Filtering through `echo ' '; echo Yes; echo ' '`
+-./testsuite.recipe(2): f="Yes"
+-./testsuite.recipe(3): g="yYeszYes"
++./testsuite.recipe(2): f=""
++./testsuite.recipe(3): g="yz"
+ ./testsuite.recipe(4): g="\+"
+ +
+ ./testsuite.recipe(6): Evaluating IF condition.
+@@ -1020,6 +1020,7 @@
+ ./testsuite.recipe(27): Operation on: 5 and 5 - less than, result is 0
+ ./testsuite.recipe(27): While condition evaluated, result=0
+ maildrop: Executing system command exit 0
++This account is currently not available.
+ alpha
+ BETA
+ ./testsuite.recipe(35): unset i
diff --git a/mail-filter/maildrop/files/maildrop-3.1.6-valgrind.patch b/mail-filter/maildrop/files/maildrop-3.1.6-valgrind.patch
new file mode 100644
index 000000000000..f4b22914f395
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.6-valgrind.patch
@@ -0,0 +1,31 @@
+--- a/libs/maildrop/Makefile.am 2024-02-18 06:43:15.291095955 +0100
++++ b/libs/maildrop/Makefile.am 2024-02-18 06:43:37.317830695 +0100
+@@ -73,7 +73,7 @@
+ check-am: testsuite
+ if HAS_EN_US
+ VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ ./testsuite >testsuite.diff || exit 1; diff -U 3 testsuite.diff $(srcdir)/testsuite.txt.idn || exit 1; rm -f testsuite.diff
+- VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ $(srcdir)/testsuite2
++ VALGRIND=""; export VALGRIND; @SHELL@ $(srcdir)/testsuite2
+ endif
+
+ noinst_DATA=maildrop.html maildrop.1 maildropfilter.html maildropfilter.7 \
+--- a/libs/maildir/Makefile.am 2024-02-18 06:48:31.305134721 +0100
++++ b/libs/maildir/Makefile.am 2024-02-18 06:49:56.223057434 +0100
+@@ -152,17 +152,11 @@
+ test "@PCRE_LDFLAGS@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt
+ LC_ALL=C; export LC_ALL; ./maildirkwtest | cmp -s - $(srcdir)/maildirkwtest.txt
+ LC_ALL=C; export LC_ALL; ./maildiraclttest
+- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \
+- LC_ALL=C; export LC_ALL; valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./maildiraclttest
+- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \
+- LC_ALL=C; export LC_ALL; valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./maildirkwtest
+ ./testmaildirsearch iso-8859-1 needle haystack; test $$? = 2 && exit 0; exit 1
+ ./testmaildirsearch iso-8859-1 nEEdle needlE
+ ./testmaildirsearch iso-8859-1 "abra cadAbra" "abra cadabra"
+ ./testmaildirsearch iso-8859-1 " abra cadAbra " " abra cadabra"
+ ./testmaildirsearch iso-8859-1 " abra cadAbra " " abra cadabra "
+- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \
+- LC_ALL=C; export LC_ALL; export VALGRIND="@SHELL@ $(srcdir)/testsuitevalgrind"; rm -f confmdtesterror; @SHELL@ $(srcdir)/testsuite 2>&1 | tee testsuite.out; test ! -f confmdtesterror
+ rm -rf testsuite.out
+
+ if HAVE_SGML
diff --git a/mail-filter/maildrop/maildrop-3.0.2-r1.ebuild b/mail-filter/maildrop/maildrop-3.0.2-r1.ebuild
new file mode 100644
index 000000000000..13021dd5ca59
--- /dev/null
+++ b/mail-filter/maildrop/maildrop-3.0.2-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit flag-o-matic autotools
+
+DESCRIPTION="Mail delivery agent/filter"
+[[ -z ${PV/?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${PV/?.?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${SRC_URI} ]] && SRC_URI="https://www.courier-mta.org/beta/${PN}/${P%%_pre}.tar.bz2"
+HOMEPAGE="https://www.courier-mta.org/maildrop/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="berkdb debug dovecot fam gdbm ldap mysql postgres static-libs authlib +tools trashquota"
+
+CDEPEND="!mail-mta/courier
+ net-mail/mailbase
+ dev-libs/libpcre
+ net-dns/libidn:0=
+ >=net-libs/courier-unicode-2.0:=
+ gdbm? ( >=sys-libs/gdbm-1.8.0:= )
+ mysql? ( net-libs/courier-authlib )
+ postgres? ( net-libs/courier-authlib )
+ ldap? ( net-libs/courier-authlib )
+ authlib? ( net-libs/courier-authlib )
+ fam? ( virtual/fam )
+ !gdbm? (
+ berkdb? ( >=sys-libs/db-3:= )
+ )
+ gdbm? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ berkdb? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ tools? (
+ !mail-mta/netqmail
+ !net-mail/courier-imap
+ )"
+DEPEND="${CDEPEND}"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dovecot? ( net-mail/dovecot )"
+BDEPEND="virtual/pkgconfig"
+
+REQUIRED_USE="
+ mysql? ( authlib )
+ postgres? ( authlib )
+ ldap? ( authlib )"
+
+S=${WORKDIR}/${P%%_pre}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.0.0-testsuite.patch
+ "${FILESDIR}"/${P}-makedat.patch
+)
+
+src_prepare() {
+ # Prefer gdbm over berkdb
+ if use gdbm ; then
+ use berkdb && elog "Both gdbm and berkdb selected. Using gdbm."
+ fi
+
+ if ! use fam ; then
+ eapply -p0 "${FILESDIR}"/${PN}-disable-fam.patch
+ fi
+
+ # no need to error out if no default - it will be given to econf anyway
+ sed -i -e \
+ 's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \
+ "${S}"/libs/maildrop/configure.ac || die "sed failed"
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable fam)
+ --with-devel
+ --disable-tempdir
+ --enable-syslog=1
+ --enable-use-flock=1
+ --enable-use-dotlock=1
+ --enable-restrict-trusted=1
+ --enable-maildrop-uid=root
+ --enable-maildrop-gid=mail
+ --enable-sendmail=/usr/sbin/sendmail
+ --cache-file="${S}"/configuring.cache
+ $(use_enable static-libs static)
+ $(use_enable dovecot dovecotauth)
+ $(use_with trashquota)
+ )
+
+ local mytrustedusers="apache dspam root mail fetchmail"
+ mytrustedusers+=" daemon postmaster qmaild mmdf vmail alias"
+ myeconfargs+=( --enable-trusted-users="${mytrustedusers}" )
+
+ # These flags make maildrop cry
+ replace-flags -Os -O2
+ filter-flags -fomit-frame-pointer
+
+ if use gdbm ; then
+ myeconfargs+=( --with-db=gdbm )
+ elif use berkdb ; then
+ myeconfargs+=( --with-db=db )
+ else
+ myeconfargs+=( --without-db )
+ fi
+
+ if ! use mysql && ! use postgres && ! use ldap && ! use authlib ; then
+ myeconfargs+=( --disable-authlib )
+ fi
+
+ # default mailbox is $HOME/.maildir for Gentoo
+ maildrop_cv_SYS_INSTALL_MBOXDIR="./.maildir" econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use authlib ; then
+ fperms 4755 /usr/bin/maildrop
+ fi
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README \
+ README.postfix README.dovecotauth UPGRADE \
+ maildroptips.txt
+ docinto maildir
+ dodoc libs/maildir/AUTHORS libs/maildir/INSTALL \
+ libs/maildir/README*.txt libs/maildir/*.html
+
+ # bugs 61116, 374009, and 639124
+ if ! use tools ; then
+ for tool in "maildirmake" "deliverquota"; do
+ rm "${D}/usr/bin/${tool}" || die
+ rm "${D}/usr/share/man/man"[0-9]"/${tool}."[0-9] || die
+ done
+ rm "${D}/usr/share/man/man5/maildir.5" || die
+ fi
+
+ insinto /etc
+ doins "${FILESDIR}"/maildroprc
+
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/mail-filter/maildrop/maildrop-3.0.0.ebuild b/mail-filter/maildrop/maildrop-3.0.2.ebuild
index 19404652d9ca..b392ea48accb 100644
--- a/mail-filter/maildrop/maildrop-3.0.0.ebuild
+++ b/mail-filter/maildrop/maildrop-3.0.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,15 +12,15 @@ HOMEPAGE="https://www.courier-mta.org/maildrop/"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~ppc ppc64 ~s390 sparc x86"
IUSE="berkdb debug dovecot fam gdbm ldap mysql postgres static-libs authlib +tools trashquota"
CDEPEND="!mail-mta/courier
net-mail/mailbase
dev-libs/libpcre
net-dns/libidn:0=
- >=net-libs/courier-unicode-2.0
- gdbm? ( >=sys-libs/gdbm-1.8.0 )
+ >=net-libs/courier-unicode-2.0:=
+ gdbm? ( >=sys-libs/gdbm-1.8.0:= )
mysql? ( net-libs/courier-authlib )
postgres? ( net-libs/courier-authlib )
ldap? ( net-libs/courier-authlib )
@@ -32,14 +32,13 @@ CDEPEND="!mail-mta/courier
tools? (
!mail-mta/netqmail
!net-mail/courier-imap
- !mail-mta/mini-qmail
- !mail-mta/qmail-ldap
)"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
+DEPEND="${CDEPEND}"
RDEPEND="${CDEPEND}
dev-lang/perl
dovecot? ( net-mail/dovecot )"
+BDEPEND="virtual/pkgconfig"
+
REQUIRED_USE="
mysql? ( authlib )
postgres? ( authlib )
@@ -62,7 +61,7 @@ src_prepare() {
's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \
"${S}"/libs/maildrop/configure.ac || die "sed failed"
- eapply "${FILESDIR}"/${P}-testsuite.patch
+ eapply "${FILESDIR}"/${PN}-3.0.0-testsuite.patch
eapply_user
eautoreconf
}
diff --git a/mail-filter/maildrop/maildrop-3.1.4.ebuild b/mail-filter/maildrop/maildrop-3.1.4.ebuild
new file mode 100644
index 000000000000..982f08213236
--- /dev/null
+++ b/mail-filter/maildrop/maildrop-3.1.4.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit flag-o-matic autotools
+
+DESCRIPTION="Mail delivery agent/filter"
+[[ -z ${PV/?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${PV/?.?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${SRC_URI} ]] && SRC_URI="https://www.courier-mta.org/beta/${PN}/${P%%_pre}.tar.bz2"
+HOMEPAGE="https://www.courier-mta.org/maildrop/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib +tools trashquota"
+
+CDEPEND="!mail-mta/courier
+ net-mail/mailbase
+ dev-libs/libpcre2
+ net-dns/libidn2:=
+ >=net-libs/courier-unicode-2.0:=
+ gdbm? ( >=sys-libs/gdbm-1.8.0:= )
+ mysql? ( net-libs/courier-authlib )
+ postgres? ( net-libs/courier-authlib )
+ ldap? ( net-libs/courier-authlib )
+ authlib? ( net-libs/courier-authlib )
+ !gdbm? (
+ berkdb? ( >=sys-libs/db-3:= )
+ )
+ gdbm? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ berkdb? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ tools? (
+ !mail-mta/netqmail
+ !net-mail/courier-imap
+ )"
+DEPEND="${CDEPEND}"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dovecot? ( net-mail/dovecot )"
+BDEPEND="virtual/pkgconfig"
+
+REQUIRED_USE="
+ mysql? ( authlib )
+ postgres? ( authlib )
+ ldap? ( authlib )"
+
+S=${WORKDIR}/${P%%_pre}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.1.1-testsuite.patch
+ "${FILESDIR}"/${PN}-3.0.2-makedat.patch
+)
+
+src_prepare() {
+ # Prefer gdbm over berkdb
+ if use gdbm ; then
+ use berkdb && elog "Both gdbm and berkdb selected. Using gdbm."
+ fi
+
+ # no need to error out if no default - it will be given to econf anyway
+ sed -i -e \
+ 's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \
+ "${S}"/libs/maildrop/configure.ac || die "sed failed"
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-devel
+ --disable-tempdir
+ --enable-syslog=1
+ --enable-use-flock=1
+ --enable-use-dotlock=1
+ --enable-restrict-trusted=1
+ --enable-maildrop-uid=root
+ --enable-maildrop-gid=mail
+ --enable-sendmail=/usr/sbin/sendmail
+ --cache-file="${S}"/configuring.cache
+ $(use_enable static-libs static)
+ $(use_enable dovecot dovecotauth)
+ $(use_with trashquota)
+ )
+
+ local mytrustedusers="apache dspam root mail fetchmail"
+ mytrustedusers+=" daemon postmaster qmaild mmdf vmail alias"
+ myeconfargs+=( --enable-trusted-users="${mytrustedusers}" )
+
+ # These flags make maildrop cry
+ replace-flags -Os -O2
+ filter-flags -fomit-frame-pointer
+
+ if use gdbm ; then
+ myeconfargs+=( --with-db=gdbm )
+ elif use berkdb ; then
+ myeconfargs+=( --with-db=db )
+ else
+ myeconfargs+=( --without-db )
+ fi
+
+ if ! use mysql && ! use postgres && ! use ldap && ! use authlib ; then
+ myeconfargs+=( --disable-authlib )
+ fi
+
+ # default mailbox is $HOME/.maildir for Gentoo
+ maildrop_cv_SYS_INSTALL_MBOXDIR="./.maildir" econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use authlib ; then
+ fperms 4755 /usr/bin/maildrop
+ fi
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README \
+ README.postfix README.dovecotauth UPGRADE \
+ maildroptips.txt
+ docinto maildir
+ dodoc libs/maildir/AUTHORS libs/maildir/INSTALL \
+ libs/maildir/README*.txt libs/maildir/*.html
+
+ # bugs 61116, 374009, and 639124
+ if ! use tools ; then
+ for tool in "maildirmake" "deliverquota"; do
+ rm "${D}/usr/bin/${tool}" || die
+ rm "${D}/usr/share/man/man"[0-9]"/${tool}."[0-9] || die
+ done
+ rm "${D}/usr/share/man/man5/maildir.5" || die
+ fi
+
+ insinto /etc
+ doins "${FILESDIR}"/maildroprc
+
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/mail-filter/maildrop/maildrop-3.1.5.ebuild b/mail-filter/maildrop/maildrop-3.1.5.ebuild
new file mode 100644
index 000000000000..2eb21177cba2
--- /dev/null
+++ b/mail-filter/maildrop/maildrop-3.1.5.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit flag-o-matic autotools
+
+DESCRIPTION="Mail delivery agent/filter"
+[[ -z ${PV/?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${PV/?.?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${SRC_URI} ]] && SRC_URI="https://www.courier-mta.org/beta/${PN}/${P%%_pre}.tar.bz2"
+HOMEPAGE="https://www.courier-mta.org/maildrop/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib +tools trashquota"
+
+CDEPEND="!mail-mta/courier
+ net-mail/mailbase
+ dev-libs/libpcre2
+ net-dns/libidn2:=
+ >=net-libs/courier-unicode-2.0:=
+ net-mail/courier-common[berkdb?,gdbm?]
+ gdbm? ( >=sys-libs/gdbm-1.8.0:= )
+ mysql? ( net-libs/courier-authlib )
+ postgres? ( net-libs/courier-authlib )
+ ldap? ( net-libs/courier-authlib )
+ authlib? ( net-libs/courier-authlib )
+ !gdbm? (
+ berkdb? ( >=sys-libs/db-3:= )
+ )
+ gdbm? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ berkdb? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ tools? (
+ !mail-mta/netqmail
+ !net-mail/courier-imap
+ )"
+DEPEND="${CDEPEND}"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dovecot? ( net-mail/dovecot )"
+BDEPEND="virtual/pkgconfig"
+
+REQUIRED_USE="
+ mysql? ( authlib )
+ postgres? ( authlib )
+ ldap? ( authlib )"
+
+S=${WORKDIR}/${P%%_pre}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.1.1-testsuite.patch
+ "${FILESDIR}"/${P}-common.patch
+)
+
+src_prepare() {
+ # Prefer gdbm over berkdb
+ if use gdbm ; then
+ use berkdb && elog "Both gdbm and berkdb selected. Using gdbm."
+ fi
+
+ # no need to error out if no default - it will be given to econf anyway
+ sed -i -e \
+ 's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \
+ "${S}"/libs/maildrop/configure.ac || die "sed failed"
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-devel
+ --disable-tempdir
+ --enable-syslog=1
+ --enable-use-flock=1
+ --enable-use-dotlock=1
+ --enable-restrict-trusted=1
+ --enable-maildrop-uid=root
+ --enable-maildrop-gid=mail
+ --enable-sendmail=/usr/sbin/sendmail
+ --cache-file="${S}"/configuring.cache
+ $(use_enable static-libs static)
+ $(use_enable dovecot dovecotauth)
+ $(use_with trashquota)
+ )
+
+ local mytrustedusers="apache dspam root mail fetchmail"
+ mytrustedusers+=" daemon postmaster qmaild mmdf vmail alias"
+ myeconfargs+=( --enable-trusted-users="${mytrustedusers}" )
+
+ # These flags make maildrop cry
+ replace-flags -Os -O2
+ filter-flags -fomit-frame-pointer
+
+ if use gdbm ; then
+ myeconfargs+=( --with-db=gdbm )
+ elif use berkdb ; then
+ myeconfargs+=( --with-db=db )
+ else
+ myeconfargs+=( --without-db )
+ fi
+
+ if ! use mysql && ! use postgres && ! use ldap && ! use authlib ; then
+ myeconfargs+=( --disable-authlib )
+ fi
+
+ # default mailbox is $HOME/.maildir for Gentoo
+ maildrop_cv_SYS_INSTALL_MBOXDIR="./.maildir" econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use authlib ; then
+ fperms 4755 /usr/bin/maildrop
+ fi
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README \
+ README.postfix README.dovecotauth UPGRADE \
+ maildroptips.txt
+ docinto maildir
+ dodoc libs/maildir/AUTHORS libs/maildir/INSTALL \
+ libs/maildir/README*.txt libs/maildir/*.html
+
+ # bugs 61116, 374009, and 639124
+ if ! use tools ; then
+ for tool in "maildirmake"; do
+ rm "${D}/usr/bin/${tool}" || die
+ rm "${D}/usr/share/man/man"[0-9]"/${tool}."[0-9] || die
+ done
+ rm "${D}/usr/share/man/man5/maildir.5" || die
+ fi
+
+ insinto /etc
+ doins "${FILESDIR}"/maildroprc
+
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/mail-filter/maildrop/maildrop-3.1.6-r2.ebuild b/mail-filter/maildrop/maildrop-3.1.6-r2.ebuild
new file mode 100644
index 000000000000..b1ae6e4c56ea
--- /dev/null
+++ b/mail-filter/maildrop/maildrop-3.1.6-r2.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit flag-o-matic autotools
+
+DESCRIPTION="Mail delivery agent/filter"
+[[ -z ${PV/?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${PV/?.?.?/} ]] && SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+[[ -z ${SRC_URI} ]] && SRC_URI="https://www.courier-mta.org/beta/${PN}/${P%%_pre}.tar.bz2"
+HOMEPAGE="https://www.courier-mta.org/maildrop/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~ppc ppc64 ~s390 sparc x86"
+IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib +tools trashquota"
+
+CDEPEND="!mail-mta/courier
+ net-mail/mailbase
+ dev-libs/libpcre2
+ net-dns/libidn2:=
+ net-libs/courier-unicode:=
+ gdbm? ( sys-libs/gdbm:= )
+ mysql? ( net-libs/courier-authlib )
+ postgres? ( net-libs/courier-authlib )
+ ldap? ( net-libs/courier-authlib )
+ authlib? ( net-libs/courier-authlib )
+ !gdbm? (
+ berkdb? ( sys-libs/db:= )
+ )
+ gdbm? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ berkdb? ( net-mail/courier-imap[gdbm?,berkdb?] )
+ tools? (
+ !mail-mta/netqmail
+ !<net-mail/courier-imap-5.2.6
+ net-mail/courier-common
+ )"
+DEPEND="${CDEPEND}"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dovecot? ( net-mail/dovecot )"
+BDEPEND="virtual/pkgconfig"
+
+REQUIRED_USE="
+ mysql? ( authlib )
+ postgres? ( authlib )
+ ldap? ( authlib )"
+
+S=${WORKDIR}/${P%%_pre}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.1.1-testsuite.patch
+ "${FILESDIR}"/${P}-valgrind.patch
+ "${FILESDIR}"/${P}-test.patch
+)
+
+src_prepare() {
+ # Prefer gdbm over berkdb
+ if use gdbm ; then
+ use berkdb && elog "Both gdbm and berkdb selected. Using gdbm."
+ fi
+
+ # no need to error out if no default - it will be given to econf anyway
+ sed -i -e \
+ 's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \
+ "${S}"/libs/maildrop/configure.ac || die "sed failed"
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-devel
+ --disable-tempdir
+ --enable-syslog=1
+ --enable-use-flock=1
+ --enable-use-dotlock=1
+ --enable-restrict-trusted=1
+ --enable-maildrop-uid=root
+ --enable-maildrop-gid=mail
+ --enable-sendmail=/usr/sbin/sendmail
+ --cache-file="${S}"/configuring.cache
+ $(use_enable static-libs static)
+ $(use_enable dovecot dovecotauth)
+ $(use_with trashquota)
+ )
+
+ local mytrustedusers="apache dspam root mail fetchmail"
+ mytrustedusers+=" daemon postmaster qmaild mmdf vmail alias"
+ myeconfargs+=( --enable-trusted-users="${mytrustedusers}" )
+
+ # These flags make maildrop cry
+ replace-flags -Os -O2
+ filter-flags -fomit-frame-pointer
+
+ if use gdbm ; then
+ myeconfargs+=( --with-db=gdbm )
+ elif use berkdb ; then
+ myeconfargs+=( --with-db=db )
+ else
+ myeconfargs+=( --without-db )
+ fi
+
+ if ! use mysql && ! use postgres && ! use ldap && ! use authlib ; then
+ myeconfargs+=( --disable-authlib )
+ fi
+
+ # default mailbox is $HOME/.maildir for Gentoo
+ maildrop_cv_SYS_INSTALL_MBOXDIR="./.maildir" econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use authlib ; then
+ fperms 4755 /usr/bin/maildrop
+ fi
+
+ # Moved to courier-common
+ rm "${D}"/usr/bin/deliverquota || die
+ rm "${D}"/usr/bin/maildirkw || die
+ if use gdbm; then
+ rm "${D}"/usr/bin/makedat || die
+ rm "${D}"/usr/bin/makedatprog || die
+ fi
+ rm "${D}"/usr/share/man/man1/maildirkw.1 || die
+ rm "${D}"/usr/share/man/man1/makedat.1 || die
+ rm "${D}"/usr/share/man/man8/deliverquota.8 || die
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README \
+ README.postfix README.dovecotauth UPGRADE \
+ maildroptips.txt
+ docinto maildir
+ dodoc libs/maildir/AUTHORS libs/maildir/INSTALL \
+ libs/maildir/README*.txt libs/maildir/*.html
+
+ # bugs 61116, 639124
+ if ! use tools ; then
+ for tool in "maildirmake" "maildirwatch"; do
+ rm "${D}/usr/bin/${tool}" || die
+ rm "${D}/usr/share/man/man"[0-9]"/${tool}."[0-9] || die
+ done
+ rm "${D}/usr/share/man/man5/maildir.5" || die
+ fi
+
+ insinto /etc
+ doins "${FILESDIR}"/maildroprc
+
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/mail-filter/maildrop/metadata.xml b/mail-filter/maildrop/metadata.xml
index 2387e5014002..9e9b118b676d 100644
--- a/mail-filter/maildrop/metadata.xml
+++ b/mail-filter/maildrop/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
<use>
<flag name="authlib">Add courier-authlib support</flag>
<flag name="dovecot">Add dovecot authentication support</flag>
diff --git a/mail-filter/mailfilter/Manifest b/mail-filter/mailfilter/Manifest
index 078a0d506bd1..5408580e14ff 100644
--- a/mail-filter/mailfilter/Manifest
+++ b/mail-filter/mailfilter/Manifest
@@ -1 +1 @@
-DIST mailfilter-0.8.4.tar.gz 424789 BLAKE2B 3ffee855a52b6d85ca7241ab55fd31093ff7dad218b37d2caeaf61dbe0a6ce14a283a60f6bee33409363e516902d8024ec4e5008041ddc28b48d7fc1313d5de3 SHA512 d6cd3399240f60020bf17f460376bfa73132e0714adf1e9b34e2993367440eba28d3cb8ef20b997b1ecf02419f69b761f704598641222d32b3aefdb8a96930e7
+DIST mailfilter-0.8.9.tar.gz 573811 BLAKE2B 7648496c1fbde31da776c7d55517b5824cdc33f91e4543784460838edac7bd6435a09ccece54f4e8f21142330458bf28773934bf8b6bcc40289086ab82142c70 SHA512 8c18d2edf92816cec38359af5e2daf5730fac497a46f89225d938df750144d2bad6fa6dc5e99257423afdf626edf6caeccdf884c90e0b9e70b9c5d03f746ba5f
diff --git a/mail-filter/mailfilter/files/0.8.4-fix-parallel-build.patch b/mail-filter/mailfilter/files/0.8.4-fix-parallel-build.patch
deleted file mode 100644
index f697f94e4502..000000000000
--- a/mail-filter/mailfilter/files/0.8.4-fix-parallel-build.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-https://github.com/nondeterministic/mailfilter/commit/4b3991b1334d83d5f209723ab3ec58d168baff2d
-
-https://bugs.gentoo.org/649514
-
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -31,15 +31,11 @@ bin_PROGRAMS = mailfilter
- rcfile.cc: rcfile.ll rcparser.hh
- $(LEX) $(AM_LFLAGS) -Prc -o$@ $<
-
--# The final `touch' is necessary to be able to invoke flex/bison more
--# than once and to not confuse the ../ylwrap script.
--rcparser.hh: y.tab.c
--y.tab.c: rcfile.yy
-- $(YACC) -p rc $(YFLAGS) -o$@ $<; \
-- mv -f y.tab.c rcparser.cc; \
-- mv -f y.tab.h rcparser.hh; \
-- $(CXXCOMPILE) -c rcparser.cc; \
-- touch y.tab.c
-+rcparser.hh: rcparser.cc
-+rcparser.cc: rcfile.yy
-+ $(YACC) $(YFLAGS) -b rc -p rc $<; \
-+ mv rc.tab.c rcparser.cc; \
-+ mv rc.tab.h rcparser.hh
-
- # Almost the same as above, but this time for the RFC 822 parser:
- rfc822.cc: rfc822.ll rfc822parser.hh
-@@ -47,58 +43,41 @@ rfc822.cc: rfc822.ll rfc822parser.hh
-
- rfc822parser.hh: rfc822parser.cc
- rfc822parser.cc: rfc822.yy
-- $(YACC) $(YFLAGS) -p rfc -o$@ $<; \
-- $(CXXCOMPILE) -c rfc822parser.cc; \
-- touch y.tab.c
-+ $(YACC) $(YFLAGS) -b rfc -p rfc $<; \
-+ mv rfc.tab.c rfc822parser.cc; \
-+ mv rfc.tab.h rfc822parser.hh
-
--# This thing is a workaround to avoid compile errors.
--# We always re-generate the source from the flex/bison input, so it
--# always matches the installed versions and does not lead to errors.
--CLEANFILES = rcfile.cc rcparser.hh rcparser.cc y.tab.c ylwrap \
-- rfc822parser.output rfc822parser.cc rfc822parser.hh \
-- rfc822.cc y.output
--
--nodist_mailfilter_SOURCES = rcfile.cc rcparser.hh y.tab.c rfc822.cc
--
--nodist_mailfilter_OBJECTS = y.tab.$(OBJEXT)
--
--# Looks like automake still wants to distribute rcfile.cc, even if it
--# is in nodist_*_sources.
--dist-hook:
-- rm -f $(distdir)/rcfile.cc \
-- $(distdir)/rfc822parser.cc \
-- $(distdir)/rfcparser.cc
-+CLEANFILES = *.output
-
- # If this gets updated, remember to update the doxygen.in config file!
--mailfilter_SOURCES = md5c.c md5.h \
-- defines.hh \
-- rcfile.ll rcfile.hh \
-- rfc822.ll \
-- mailfilter.hh mailfilter.cc \
-- header.hh header.cc \
-- weeder.hh weeder.cc \
-- preferences.hh preferences.cc \
-- feedback.hh feedback.cc \
-- filter.hh filter.cc \
-- score.hh score.cc \
-- account.hh account.cc \
-- protocol.hh protocol.cc \
-- connection.hh \
-- socket.hh socket.cc \
-- pop3.hh pop3.cc \
-- apop.hh apop.cc \
-+mailfilter_SOURCES = md5c.c md5.h \
-+ defines.hh \
-+ rcfile.ll rcfile.hh \
-+ rcparser.hh rcparser.cc \
-+ rfc822.ll rfc822parser.hh rfc822parser.cc \
-+ mailfilter.hh mailfilter.cc \
-+ header.hh header.cc \
-+ weeder.hh weeder.cc \
-+ preferences.hh preferences.cc \
-+ feedback.hh feedback.cc \
-+ filter.hh filter.cc \
-+ score.hh score.cc \
-+ account.hh account.cc \
-+ protocol.hh protocol.cc \
-+ connection.hh \
-+ socket.hh socket.cc \
-+ pop3.hh pop3.cc \
-+ apop.hh apop.cc \
- imap.hh imap.cc
-
- if !GETOPT
- mailfilter_SOURCES += getopt.c getopt1.c getopt.h
- endif
-
--mailfilter_LDADD = rcparser.o rfc822parser.o
--
--INCLUDES = -I$(includedir) \
-- -I$(srcdir) -I$(top_srcdir)/include -I$(top_srcdir) \
-- -DLOCALEDIR=\"$(datadir)/locale\" \
-- -I$(top_srcdir)/intl \
-- -I$(top_builddir) -I$(top_builddir)/include -I.
-+AM_CPPFLAGS = -I$(includedir) \
-+ -I$(srcdir) -I$(top_srcdir)/include -I$(top_srcdir) \
-+ -DLOCALEDIR=\"$(datadir)/locale\" \
-+ -I$(top_srcdir)/intl \
-+ -I$(top_builddir) -I$(top_builddir)/include -I.
-
- LIBS = @LEXLIB@ @LIBS@
diff --git a/mail-filter/mailfilter/files/0.8.9-bashisms.patch b/mail-filter/mailfilter/files/0.8.9-bashisms.patch
new file mode 100644
index 000000000000..d3fcecb7b5f0
--- /dev/null
+++ b/mail-filter/mailfilter/files/0.8.9-bashisms.patch
@@ -0,0 +1,26 @@
+
+Fix configure bashisms with dash as /bin/sh as reported in
+https://github.com/gentoo/gentoo/pull/27134
+
+Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
+
+--- mailfilter-0.8.9/configure 2022-09-04 12:23:29.000000000 +0200
++++ mailfilter-0.8.9-dash/configure 2022-09-17 19:12:32.174505949 +0200
+@@ -5322,7 +5322,7 @@ fi
+ done
+ test -n "$YACC" || YACC="yacc"
+
+-if test x"$YACC" == x"yacc"
++if test x"$YACC" = x"yacc"
+ then :
+ as_fn_error $? "Please install bison or byacc before configuring." "$LINENO" 5
+ fi
+@@ -5545,7 +5545,7 @@ fi
+ rm -f conftest.l $LEX_OUTPUT_ROOT.c
+
+ fi
+-if test x"$LEX" == x":"
++if test x"$LEX" = x":"
+ then :
+ as_fn_error $? "Please install flex before configuring." "$LINENO" 5
+ fi
diff --git a/mail-filter/mailfilter/files/0.8.9-prototypes.patch b/mail-filter/mailfilter/files/0.8.9-prototypes.patch
new file mode 100644
index 000000000000..22cb739464af
--- /dev/null
+++ b/mail-filter/mailfilter/files/0.8.9-prototypes.patch
@@ -0,0 +1,132 @@
+
+Patch from: https://github.com/nondeterministic/mailfilter/pull/7
+Bug: https://bugs.gentoo.org/870625
+
+From c8ce051933c29561bdc57de782d0445f1513100d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Holger=20Hoffst=C3=A4tte?= <holger@applied-asynchrony.com>
+Date: Wed, 14 Sep 2022 18:49:20 +0200
+Subject: [PATCH] Fix warnings about incorrect prototypes & use standard memcpy/memset
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Clang-15 rightfully complains about function definitions without proper
+prototypes. Also replace handrolled memcpy/memset with standard
+C library calls.
+
+Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
+---
+ src/md5c.c | 47 +++++++++++------------------------------------
+ 1 file changed, 11 insertions(+), 36 deletions(-)
+
+diff --git a/src/md5c.c b/src/md5c.c
+index 2c2c564..ae5ec8d 100644
+--- a/src/md5c.c
++++ b/src/md5c.c
+@@ -24,6 +24,7 @@ documentation and/or software.
+ */
+
+ #include "md5.h"
++#include <string.h>
+
+ /* Constants for MD5Transform routine.
+ */
+@@ -94,8 +95,7 @@ Rotation is separate from addition to prevent recomputation.
+
+ /* MD5 initialization. Begins an MD5 operation, writing a new context.
+ */
+-void MD5Init (context)
+-MD5_CTX *context; /* context */
++void MD5Init (MD5_CTX *context)
+ {
+ context->count[0] = context->count[1] = 0;
+ /* Load magic initialization constants.
+@@ -110,10 +110,7 @@ MD5_CTX *context; /* context */
+ operation, processing another message block, and updating the
+ context.
+ */
+-void MD5Update (context, input, inputLen)
+-MD5_CTX *context; /* context */
+-unsigned char *input; /* input block */
+-unsigned int inputLen; /* length of input block */
++void MD5Update (MD5_CTX *context, unsigned char *input, unsigned int inputLen)
+ {
+ unsigned int i, index, partLen;
+
+@@ -152,9 +149,7 @@ unsigned int inputLen; /* length of input block */
+ /* MD5 finalization. Ends an MD5 message-digest operation, writing the
+ the message digest and zeroizing the context.
+ */
+-void MD5Final (digest, context)
+-unsigned char digest[16]; /* message digest */
+-MD5_CTX *context; /* context */
++void MD5Final (unsigned char digest[16], MD5_CTX *context)
+ {
+ unsigned char bits[8];
+ unsigned int index, padLen;
+@@ -180,9 +175,7 @@ MD5_CTX *context; /* context */
+
+ /* MD5 basic transformation. Transforms state based on block.
+ */
+-static void MD5Transform (state, block)
+-uint32_t state[4];
+-unsigned char block[64];
++static void MD5Transform (uint32_t state[4], unsigned char block[64])
+ {
+ uint32_t a = state[0], b = state[1], c = state[2], d = state[3], x[16];
+
+@@ -272,10 +265,7 @@ unsigned char block[64];
+ /* Encodes input (uint32_t) into output (unsigned char). Assumes len is
+ a multiple of 4.
+ */
+-static void Encode (output, input, len)
+-unsigned char *output;
+-uint32_t *input;
+-unsigned int len;
++static void Encode (unsigned char *output, uint32_t *input, unsigned int len)
+ {
+ unsigned int i, j;
+
+@@ -290,10 +280,7 @@ unsigned int len;
+ /* Decodes input (unsigned char) into output (uint32_t). Assumes len is
+ a multiple of 4.
+ */
+-static void Decode (output, input, len)
+-uint32_t *output;
+-unsigned char *input;
+-unsigned int len;
++static void Decode (uint32_t *output, unsigned char *input, unsigned int len)
+ {
+ unsigned int i, j;
+
+@@ -305,26 +292,14 @@ unsigned int len;
+ /* Note: Replace "for loop" with standard memcpy if possible.
+ */
+
+-static void MD5_memcpy (output, input, len)
+-POINTER output;
+-POINTER input;
+-unsigned int len;
++static void MD5_memcpy (POINTER output, POINTER input, unsigned int len)
+ {
+- unsigned int i;
+-
+- for (i = 0; i < len; i++)
+- output[i] = input[i];
++ memcpy(output, input, len);
+ }
+
+ /* Note: Replace "for loop" with standard memset if possible.
+ */
+-static void MD5_memset (output, value, len)
+-POINTER output;
+-int value;
+-unsigned int len;
++static void MD5_memset (POINTER output, int value, unsigned int len)
+ {
+- unsigned int i;
+-
+- for (i = 0; i < len; i++)
+- ((char *)output)[i] = (char)value;
++ memset(output, value, len);
+ }
diff --git a/mail-filter/mailfilter/mailfilter-0.8.4.ebuild b/mail-filter/mailfilter/mailfilter-0.8.9.ebuild
index 705603c899b0..8a49d13864f9 100644
--- a/mail-filter/mailfilter/mailfilter-0.8.4.ebuild
+++ b/mail-filter/mailfilter/mailfilter-0.8.9.ebuild
@@ -1,25 +1,25 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DESCRIPTION="Mailfilter is a utility to get rid of unwanted spam mails"
-HOMEPAGE="http://mailfilter.sourceforge.net/"
+HOMEPAGE="https://mailfilter.sourceforge.io/"
SRC_URI="mirror://sourceforge/mailfilter/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ppc sparc x86"
+KEYWORDS="amd64 ~arm ~arm64 ppc sparc x86"
IUSE="+ssl"
-DEPEND="sys-devel/flex
- ssl? (
- dev-libs/openssl:0=
-)"
+PATCHES=(
+ "${FILESDIR}"/${PV}-bashisms.patch
+ "${FILESDIR}"/${PV}-prototypes.patch
+)
-RDEPEND=""
-
-PATCHES=( "${FILESDIR}"/0.8.4-fix-parallel-build.patch )
+DEPEND="app-alternatives/lex
+ ssl? ( dev-libs/openssl:= )"
+RDEPEND="ssl? ( dev-libs/openssl:= )"
src_configure() {
econf $(use_with ssl openssl)
diff --git a/mail-filter/mailfilter/metadata.xml b/mail-filter/mailfilter/metadata.xml
index 655e4b29d6ab..7022c58fc2cc 100644
--- a/mail-filter/mailfilter/metadata.xml
+++ b/mail-filter/mailfilter/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>holger@applied-asynchrony.com</email>
+ <name>Holger Hoffstätte</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">mailfilter</remote-id>
</upstream>
diff --git a/mail-filter/mapson/metadata.xml b/mail-filter/mapson/metadata.xml
index 40a6cc84362c..f9c6f8d56d4e 100644
--- a/mail-filter/mapson/metadata.xml
+++ b/mail-filter/mapson/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/metadata.xml b/mail-filter/metadata.xml
index 11adcc49fd3e..5797bf844071 100644
--- a/mail-filter/metadata.xml
+++ b/mail-filter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The mail-filter category contains email filtering software.
diff --git a/mail-filter/milter-regex/files/milter-regex-2.7-implicit-func-decl.patch b/mail-filter/milter-regex/files/milter-regex-2.7-implicit-func-decl.patch
new file mode 100644
index 000000000000..c2edaa8e0b8f
--- /dev/null
+++ b/mail-filter/milter-regex/files/milter-regex-2.7-implicit-func-decl.patch
@@ -0,0 +1,10 @@
+https://bugs.gentoo.org/871366
+--- a/eval.h
++++ b/eval.h
+@@ -107,4 +107,6 @@ struct action *eval_end(struct ruleset *, int *, int, int);
+ void eval_clear(struct ruleset *, int *, int);
+ void free_ruleset(struct ruleset *);
+
++int yylex(void);
++
+ #endif
diff --git a/mail-filter/milter-regex/files/milter-regex-init-2.6 b/mail-filter/milter-regex/files/milter-regex-init-2.6
deleted file mode 100644
index 9987363e272f..000000000000
--- a/mail-filter/milter-regex/files/milter-regex-init-2.6
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-pidfile="/run/${RC_SVCNAME}.pid"
-command="/usr/bin/milter-regex"
-command_args="-c ${MR_CONF} -r ${pidfile} -u ${MR_USER} -p ${MR_SOCKET} -P ${MR_PERM} -U ${MR_USER} -G ${MR_GROUP} ${MR_OPTS}"
-
-depend() {
- before mta
-}
-
-start_pre() {
- checkpath --directory --mode 0755 --owner ${MR_USER}:${MR_GROUP} ${MR_RUNDIR}
-}
diff --git a/mail-filter/milter-regex/metadata.xml b/mail-filter/milter-regex/metadata.xml
index 0e2aea024b19..1da5338f4763 100644
--- a/mail-filter/milter-regex/metadata.xml
+++ b/mail-filter/milter-regex/metadata.xml
@@ -1,14 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>gentoo@seichter.de</email>
- <name>Ralph Seichter</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
+ <!-- maintainer-needed -->
<longdescription>
milter-regex is a very simple milter-based plugin that rejects or
discards messages matching regular expressions. It doesn't add much
diff --git a/mail-filter/milter-regex/milter-regex-2.7.ebuild b/mail-filter/milter-regex/milter-regex-2.7-r3.ebuild
index e2b98ff9e61f..1c41bfdd4be4 100644
--- a/mail-filter/milter-regex/milter-regex-2.7.ebuild
+++ b/mail-filter/milter-regex/milter-regex-2.7-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,18 +8,19 @@ inherit toolchain-funcs
DESCRIPTION="A milter-based regular expression filter"
HOMEPAGE="https://www.benzedrine.ch/milter-regex.html"
SRC_URI="https://www.benzedrine.ch/${P}.tar.gz"
-LICENSE="BSD"
+LICENSE="BSD GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
RDEPEND="acct-user/milter-regex
- || ( mail-filter/libmilter mail-mta/sendmail )"
+ >=mail-filter/libmilter-1.0.2_p2:="
DEPEND="${RDEPEND}
- virtual/yacc"
+ app-alternatives/yacc"
src_prepare() {
eapply "${FILESDIR}/${PN}-2.6-gentoo.patch"
+ eapply "${FILESDIR}"/milter-regex-2.7-implicit-func-decl.patch
eapply_user
# Change default user
sed -i -e 's/_\(milter-regex\)/\1/g' ${PN}.[8c] || die
diff --git a/mail-filter/mimedefang/Manifest b/mail-filter/mimedefang/Manifest
index 2e890f20fb13..93ea29b20981 100644
--- a/mail-filter/mimedefang/Manifest
+++ b/mail-filter/mimedefang/Manifest
@@ -1 +1,2 @@
DIST mimedefang-2.84.tar.gz 371596 BLAKE2B b9b871d6a438792afbcebfcd99a77a1f9bb2c0dc7826abea74db913c6dc154403753a3016dc0647e9873256fe354649dea096c0e50d54f8db16ff8d2b91f54f4 SHA512 ffe039654d2e3f649219efc559380e39b21ce910becc36e262356d59d50129f8683ee2e59dd9680aff46478ccebd6b3d9c4567f85ade9a8464077350f4e52f48
+DIST mimedefang-3.1.tar.gz 494467 BLAKE2B 4b1f9156c606b83bf9895ab76c4929fa37c2e0bd4454cb7177f1a2b8e8bfcac1b0eedfaefd1c32ceb29d9e0425ab09fb22c552ebe37a587f517d073dd46e16f6 SHA512 392c2bfa1f4e6bb2503ba6887d79696ccc861ded17a780d3ff44bd12c14ae248536aa8f056ec4679bf9c76b6a82d0357d5fdfe467b664b8992a0c11056c5180f
diff --git a/mail-filter/mimedefang/files/mimedefang-tests.patch b/mail-filter/mimedefang/files/mimedefang-tests.patch
index 82f8b9b56160..a6bb02e85ae7 100644
--- a/mail-filter/mimedefang/files/mimedefang-tests.patch
+++ b/mail-filter/mimedefang/files/mimedefang-tests.patch
@@ -1,5 +1,5 @@
---- a/t/lib/MIMEDefang/Unit.pm.ori 2010-05-13 23:12:23.000000000 +0200
-+++ b/t/lib/MIMEDefang/Unit.pm 2019-07-10 15:08:35.190824853 +0200
+--- a/t/lib/MIMEDefang/Unit.pm.ori
++++ b/t/lib/MIMEDefang/Unit.pm
@@ -12,7 +12,7 @@
no warnings 'redefine';
local *CORE::GLOBAL::exit = sub { };
diff --git a/mail-filter/mimedefang/files/mimedefang-tests2.patch b/mail-filter/mimedefang/files/mimedefang-tests2.patch
new file mode 100644
index 000000000000..90753ef40680
--- /dev/null
+++ b/mail-filter/mimedefang/files/mimedefang-tests2.patch
@@ -0,0 +1,21 @@
+--- a/t/net.t
++++ b/t/net.t
+@@ -54,9 +54,15 @@
+ my @rbl;
+ $rbl[0] = "dnsbltest.spamassassin.org";
+ my $relayip = "144.137.3.98";
+- detect_and_load_perl_modules();
+- my $res = relay_is_blacklisted_multi($relayip, 10, 1, \@rbl);
+- is($res->{"dnsbltest.spamassassin.org"}[0], "127.0.0.2");
++
++ SKIP: {
++ if ( (not defined $ENV{'NET_TEST'}) or ($ENV{'NET_TEST'} ne 'yes' )) {
++ skip "Net test disabled", 1
++ }
++ detect_and_load_perl_modules();
++ my $res = relay_is_blacklisted_multi($relayip, 10, 1, \@rbl);
++ is($res->{"dnsbltest.spamassassin.org"}[0], "127.0.0.2");
++ }
+ }
+
+ __PACKAGE__->runtests();
diff --git a/mail-filter/mimedefang/files/mimedefang-vendor.patch b/mail-filter/mimedefang/files/mimedefang-vendor.patch
new file mode 100644
index 000000000000..a66bd66046f5
--- /dev/null
+++ b/mail-filter/mimedefang/files/mimedefang-vendor.patch
@@ -0,0 +1,30 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -42,7 +42,7 @@
+ PERLINSTALLSITELIB=@PERLINSTALLSITELIB@
+ PERLINSTALLPRIVLIB=@PERLINSTALLPRIVLIB@
+ PERLVENDORPREFIX=@PERLVENDORPREFIX@
+-PERLVENDORLIB=@PERLINSTALLPRIVLIB@/vendor_perl
++PERLVENDORLIB=@PERLVENDORLIB@
+ LDFLAGS=@LDFLAGS@
+ IP_HEADER=@IP_HEADER@
+ SPOOLDIR=@SPOOLDIR@
+--- a/configure
++++ b/configure
+@@ -662,6 +662,7 @@
+ PERLINSTALLPRIVLIB
+ PERLINSTALLARCHLIB
+ PERLVENDORPREFIX
++PERLVENDORLIB
+ PERLSITEPREFIX
+ PERLPREFIX
+ CONFDIR_EVAL
+@@ -3962,7 +3963,7 @@
+ fi
+ rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+
+-for thing in prefix siteprefix vendorprefix installarchlib installprivlib installbin installman1dir installman3dir installscript installsitearch installsitelib; do
++for thing in prefix siteprefix vendorprefix vendorlib installarchlib installprivlib installbin installman1dir installman3dir installscript installsitearch installsitelib; do
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Perl installation variable $thing" >&5
+ printf %s "checking for Perl installation variable $thing... " >&6; }
+ val=`$PERL -V:$thing | sed -e "s/^.*='//" -e "s/';$//"`
diff --git a/mail-filter/mimedefang/files/mimedefang.conf b/mail-filter/mimedefang/files/mimedefang.conf
index 5deb1401d5ef..051ffb1823b3 100644
--- a/mail-filter/mimedefang/files/mimedefang.conf
+++ b/mail-filter/mimedefang/files/mimedefang.conf
@@ -2,6 +2,9 @@
# Mandatory options for MIMEDefang #
####################################
+# PID directory
+PIDDIR='/run/MIMEDefang'
+
# spool directory
SPOOLDIR='/var/spool/MIMEDefang'
diff --git a/mail-filter/mimedefang/files/mimedefang.init b/mail-filter/mimedefang/files/mimedefang.init
index 931f47bf5919..4d9624a93ce6 100644
--- a/mail-filter/mimedefang/files/mimedefang.init
+++ b/mail-filter/mimedefang/files/mimedefang.init
@@ -1,10 +1,12 @@
#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+PIDDIR="${PIDDIR:-/run/MIMEDefang}"
+PID="${PIDDIR}/mimedefang.pid"
+MXPID="${PIDDIR}/mimedefang-multiplexor.pid"
+
SPOOLDIR="${SPOOLDIR:-/var/spool/MIMEDefang}"
-PID="${SPOOLDIR}/mimedefang.pid"
-MXPID="${SPOOLDIR}/mimedefang-multiplexor.pid"
LOCK="${SPOOLDIR}/mimedefang.lock"
MXLOCK="${SPOOLDIR}/mimedefang-multiplexor.lock"
@@ -21,6 +23,7 @@ depend() {
}
checkconfig() {
+ checkpath -d "${PIDDIR}"
checkpath -d "${SPOOLDIR}"
einfo "multiplexor socket: ${MX_SOCKET}"
einfo "sendmail socket: ${SOCKET}"
diff --git a/mail-filter/mimedefang/metadata.xml b/mail-filter/mimedefang/metadata.xml
index 4c478214ae24..8ff02c7d4fea 100644
--- a/mail-filter/mimedefang/metadata.xml
+++ b/mail-filter/mimedefang/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>rentorbuy@yahoo.com</email>
@@ -16,4 +16,7 @@
<use>
<flag name="poll">Use poll instead of select</flag>
</use>
+ <upstream>
+ <remote-id type="github">The-McGrail-Foundation/MIMEDefang</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/mail-filter/mimedefang/mimedefang-2.84.ebuild b/mail-filter/mimedefang/mimedefang-2.84-r2.ebuild
index f927bb3e5b4e..5b86e55f2dba 100644
--- a/mail-filter/mimedefang/mimedefang-2.84.ebuild
+++ b/mail-filter/mimedefang/mimedefang-2.84-r2.ebuild
@@ -1,10 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit user
-
DESCRIPTION="Antispam, antivirus and other customizable filters for MTAs with Milter support"
HOMEPAGE="http://www.mimedefang.org/"
SRC_URI="http://www.mimedefang.org/static/${P}.tar.gz"
@@ -15,24 +13,26 @@ KEYWORDS="~amd64 ~x86"
IUSE="clamav +poll test"
RESTRICT="!test? ( test )"
-RDEPEND=">=dev-perl/MIME-tools-5.412
- dev-perl/IO-stringy
- virtual/perl-MIME-Base64
+RDEPEND="
+ acct-group/defang
+ acct-user/defang
dev-perl/Digest-SHA1
+ dev-perl/IO-stringy
dev-perl/MailTools
+ dev-perl/MIME-tools
dev-perl/Unix-Syslog
+ mail-filter/libmilter:=
+ virtual/perl-MIME-Base64
clamav? ( app-antivirus/clamav )
- || ( mail-filter/libmilter mail-mta/sendmail )"
-DEPEND="${RDEPEND}
+"
+
+DEPEND="
+ ${RDEPEND}
test? (
dev-perl/Test-Class
dev-perl/Test-Most
- )"
-
-pkg_setup() {
- enewgroup defang
- enewuser defang -1 -1 -1 defang
-}
+ )
+"
src_prepare() {
eapply "${FILESDIR}/${PN}-2.72-ldflags.patch"
@@ -41,11 +41,14 @@ src_prepare() {
}
src_configure() {
- econf \
- --with-user=defang \
- $(use_enable poll) \
- $(use_enable clamav) \
+ local myeconfargs=(
+ --with-user=defang
+ $(use_enable poll)
+ $(use_enable clamav)
$(use_enable clamav clamd)
+ )
+
+ econf "${myeconfargs[@]}"
}
src_install() {
diff --git a/mail-filter/mimedefang/mimedefang-3.1.ebuild b/mail-filter/mimedefang/mimedefang-3.1.ebuild
new file mode 100644
index 000000000000..80c4242a862d
--- /dev/null
+++ b/mail-filter/mimedefang/mimedefang-3.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Antispam, antivirus and other customizable filters for MTAs with Milter support"
+HOMEPAGE="https://www.mimedefang.org/"
+SRC_URI="https://mimedefang.org/releases/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="clamav +poll test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ || ( mail-mta/sendmail mail-mta/postfix )
+ acct-group/defang
+ acct-user/defang
+ dev-perl/Digest-SHA1
+ dev-perl/IO-stringy
+ dev-perl/MailTools
+ dev-perl/MIME-tools
+ dev-perl/Unix-Syslog
+ mail-filter/libmilter:=
+ virtual/perl-MIME-Base64
+ clamav? ( app-antivirus/clamav )
+"
+
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-perl/Test-Class
+ dev-perl/Test-Most
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.72-ldflags.patch"
+ "${FILESDIR}/${PN}-vendor.patch"
+ "${FILESDIR}/${PN}-tests2.patch"
+)
+
+src_configure() {
+ local myeconfargs=(
+ --with-user=defang
+ $(use_enable poll)
+ $(use_enable clamav)
+ $(use_enable clamav clamd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" INSTALL_STRIP_FLAG="" install
+
+ fowners defang:defang /etc/mail/mimedefang-filter
+ fperms 644 /etc/mail/mimedefang-filter
+ insinto /etc/mail/
+ newins "${S}"/SpamAssassin/spamassassin.cf sa-mimedefang.cf
+
+ keepdir /var/spool/{MD-Quarantine,MIMEDefang}
+ fowners defang:defang /var/spool/{MD-Quarantine,MIMEDefang}
+ fperms 700 /var/spool/{MD-Quarantine,MIMEDefang}
+
+ keepdir /var/log/mimedefang
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+
+ dodoc -r examples contrib
+}
+
+pkg_postinst() {
+ elog "You can install Mail::SpamAssassin (mail-filter/spamassassin) and"
+ elog "HTML::Parser (dev-perl/HTML-Parser) even after installing if you require"
+ elog "them as they are loaded at run-time."
+}
diff --git a/mail-filter/normalizemime/Manifest b/mail-filter/normalizemime/Manifest
index 357b165acff8..dd2174555537 100644
--- a/mail-filter/normalizemime/Manifest
+++ b/mail-filter/normalizemime/Manifest
@@ -1 +1,2 @@
DIST normalizemime-1.19.tar.bz2 12192 BLAKE2B 663d2b67c597003c8b8f8d098bbb0538abcb2a68109ede900d9f6aca9b5af8d0a2822c86738dc8763b2693a4b1a642518c1d46cd8525fc2d94c1a8d2cf93f5e6 SHA512 670d2508dd6d79e09a9187d2161d4fd81168b34705d620d1ad3547d298404b3964ddb5ae1921e9e570c7132df1cd65e27f4da6e532bec39a9177085da84eb46c
+DIST normalizemime-1.21.cc 42498 BLAKE2B c5de7c41b531ec040adc45eaac19cf19e6c6ee2a3a6d294f738c1f4a64b2196bb749f5af9e8b0fd56683c064a17ce03be537e8437c59513d45df19bd54dbb924 SHA512 bebdfffebc49e612c8ead53b12e2a6fbdf6ddf30e5036828178d4ac1b853766fbba53ca36a52a0b4c833135a48f1b059905924446d513b26656fb4f5d02452e8
diff --git a/mail-filter/normalizemime/metadata.xml b/mail-filter/normalizemime/metadata.xml
index bca0744b282e..e5c4248bc00f 100644
--- a/mail-filter/normalizemime/metadata.xml
+++ b/mail-filter/normalizemime/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/mail-filter/normalizemime/normalizemime-1.21.ebuild b/mail-filter/normalizemime/normalizemime-1.21.ebuild
new file mode 100644
index 000000000000..e8f95c0d0f5f
--- /dev/null
+++ b/mail-filter/normalizemime/normalizemime-1.21.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Helper program to normalize MIME encoded messages"
+HOMEPAGE="http://hyvatti.iki.fi/~jaakko/spam/"
+SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.cc"
+S="${WORKDIR}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+src_unpack() {
+ cp "${DISTDIR}"/${P}.cc "${WORKDIR}"/${PN}.cc || die
+}
+
+src_compile() {
+ tc-export CC
+ emake normalizemime
+}
+
+src_install() {
+ dobin normalizemime
+}
diff --git a/mail-filter/opendkim/files/opendkim-2.10.3-c-std.patch b/mail-filter/opendkim/files/opendkim-2.10.3-c-std.patch
new file mode 100644
index 000000000000..08df8eb0b03b
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim-2.10.3-c-std.patch
@@ -0,0 +1,155 @@
+From 2d6db0225da9632ddf25aa70839d9d6244af6a42 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Thu, 23 Feb 2023 17:37:33 -0500
+Subject: [PATCH 1/1] configure.ac: update main() signatures to conform to the
+ standard.
+
+There are some tests in configure.ac that contain,
+
+ int main() { ... }
+
+That's not the correct signature for main() according to the C
+standard, and newer compilers are going to reject it. More information
+about this can be found at,
+
+ https://wiki.gentoo.org/wiki/Modern_C_porting
+
+In this case, the fix is simply to write
+
+ int main(int argc, char** argv) { ... }
+
+instead.
+---
+ configure.ac | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1eaa95d8..d8162303 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -147,7 +147,7 @@ dnscheck='
+ #include <netinet/in.h>
+ #include <arpa/nameser.h>
+ #include <resolv.h>
+-int main() {
++int main(int argc, char** argv) {
+ res_mkquery (0, 0, 0, 0, 0, 0, 0, 0, 0);
+ dn_expand (0, 0, 0, 0, 0);
+ dn_skipname (0, 0);
+@@ -549,7 +549,7 @@ gprof_gmon_out="unknown"
+ if test x"$hasgprof" = x"yes"
+ then
+ gprofcheck='
+-int main() {
++int main(int argc, char** argv) {
+ long x;
+
+ x = random();
+@@ -747,7 +747,7 @@ then
+ #if GNUTLS_VERSION_NUMBER < 0x020b07
+ # error GnuTLS 2.11.7 or later required
+ #endif
+- int main()
++ int main(int argc, char** argv)
+ {
+ return 0;
+ }'
+@@ -759,7 +759,7 @@ then
+
+ sha256check='
+ #include <gnutls/gnutls.h>
+- int main()
++ int main(int argc, char** argv)
+ {
+ int x = GNUTLS_DIG_SHA256;
+ }'
+@@ -1191,7 +1191,7 @@ then
+ #include <libmemcached/memcached.h>
+
+ int
+-main()
++main(int argc, char** argv)
+ {
+ memcached_return_t x;
+
+@@ -1649,7 +1649,7 @@ then
+ #endif
+
+ int
+-main()
++main(int argc, char** argv)
+ {
+ return 0;
+ }
+@@ -1859,7 +1859,7 @@ then
+ #endif
+
+ int
+-main()
++main(int argc, char** argv)
+ {
+ return 0;
+ }
+--
+2.39.2
+
+From 1f551737e838723f9ad9be1692bb12a9a3b4cdd9 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Thu, 23 Feb 2023 18:15:50 -0500
+Subject: [PATCH 2/2] libvbr/vbr.c: modernize vbr_strlcpy() signature.
+
+The vbr_strlcpy() function declares that its arguments should live in
+registers:
+
+ vbr_strlcpy(dst, src, size)
+ register char *dst;
+ register const char *src;
+ ssize_t size;
+ {
+ ...
+
+This makes GCC unhappy when -Werror=strict-prototypes is used:
+
+ vbr.c:167:1: error: function declaration isn't a prototype
+ [-Werror=strict-prototypes]
+ 167 | vbr_strlcpy(dst, src, size)
+
+The "register" keyword is largely obsolete on modern systems anyway,
+since the compiler is better at determining how to move memory around
+than the programmer is. So to appease GCC and simplify the code a bit,
+the signature has been changed to,
+
+ vbr_strlcpy(char *dst, const char *src, ssize_t size) { ... }
+
+changes. Lines starting # with '#' will be ignored, and an empty
+message aborts the commit. # # On branch configure.ac-c-standard #
+Your branch is up to date with 'origin/configure.ac-c-standard'. # #
+Changes to be committed: # modified: libvbr/vbr.c # # Changes not
+staged for commit: # modified: configure # # Untracked files: #
+0000-cover-letter.patch #
+---
+ libvbr/vbr.c | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/libvbr/vbr.c b/libvbr/vbr.c
+index cb9124d7..c6a2439f 100644
+--- a/libvbr/vbr.c
++++ b/libvbr/vbr.c
+@@ -164,12 +164,9 @@ static void vbr_error __P((VBR *, const char *, ...));
+ */
+
+ size_t
+-vbr_strlcpy(dst, src, size)
+- register char *dst;
+- register const char *src;
+- ssize_t size;
++vbr_strlcpy(char *dst, const char *src, ssize_t size)
+ {
+- register ssize_t i;
++ ssize_t i;
+
+ if (size-- <= 0)
+ return strlen(src);
+--
+2.39.2
+
diff --git a/mail-filter/opendkim/files/opendkim-2.10.3-fix-ldap-sasl-pc.patch b/mail-filter/opendkim/files/opendkim-2.10.3-fix-ldap-sasl-pc.patch
new file mode 100644
index 000000000000..9375d3c8bab9
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim-2.10.3-fix-ldap-sasl-pc.patch
@@ -0,0 +1,69 @@
+From f203e0a001468cd30a0a3b780c90f0f90cdc35b8 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Sat, 2 Dec 2023 18:44:20 -0500
+Subject: [PATCH 1/2] configure.ac: update OpenLDAP's pkgconfig name
+
+OpenLDAP provides the file ldap.pc for its libldap library. This can
+be verified via libraries/libldap/ldap.pc.in in the repository,
+
+ https://git.openldap.org/openldap/openldap/-/blob/master/
+
+Our ./configure script checks instead for the name "openldap", which
+at some point may have been correct, but no longer works. We switch to
+"ldap" so that we can locate the upstream file.
+
+On some platforms (https://bugs.gentoo.org/918512) this will fix a
+linking error. Thanks to Chris Pritchard for the report and the
+diagnosis.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1eaa95d8..b8353077 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1800,7 +1800,7 @@ OPENLDAP_LIBS=""
+ if test \( x"$ldappath" = x"auto" -o x"$ldappath" = x"yes" \) -a \
+ x"$PKG_CONFIG" != x""
+ then
+- PKG_CHECK_MODULES([OPENLDAP], [openldap >= 2.0.0],
++ PKG_CHECK_MODULES([OPENLDAP], [ldap >= 2.0.0],
+ [
+ ldap_found="yes"
+ OPENLDAP_CPPFLAGS="$OPENLDAP_CFLAGS"
+
+From 12b1403eea40f3df59ef130a28164f16d08053fc Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Sat, 2 Dec 2023 18:52:09 -0500
+Subject: [PATCH 2/2] configure.ac: update Cyrus SASL's pkgconfig name
+
+Cyrus SASL provides the file libsasl2.pc for its libsasl2
+library. This can be verified in its git repository:
+
+ https://github.com/cyrusimap/cyrus-sasl/blob/master/libsasl2.pc.in
+
+Our ./configure script checks instead for the name "cyrussasl", which
+at some point may have been correct, but no longer works. We switch to
+"libsasl2" so that we can locate the upstream file.
+
+On some platforms (https://bugs.gentoo.org/918512) this will fix a
+linking error. Thanks to Chris Pritchard for the report and the
+diagnosis.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index b8353077..071e8511 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1890,7 +1890,7 @@ sasl_found="no"
+ if test \( x"$saslpath" = x"auto" -o x"$saslpath" = x"yes" \) -a \
+ x"$PKG_CONFIG" != x""
+ then
+- PKG_CHECK_MODULES([SASL], [cyrussasl >= 2.1.0],
++ PKG_CHECK_MODULES([SASL], [libsasl2 >= 2.1.0],
+ [
+ sasl_found="yes"
+ SASL_CPPFLAGS="$SASL_CFLAGS"
diff --git a/mail-filter/opendkim/files/opendkim-2.10.3-snprintf-include.patch b/mail-filter/opendkim/files/opendkim-2.10.3-snprintf-include.patch
new file mode 100644
index 000000000000..5cbe24b02cdb
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim-2.10.3-snprintf-include.patch
@@ -0,0 +1,27 @@
+From 706554992156dd655e893268f201bbecbe283eb5 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Thu, 23 Feb 2023 17:05:36 -0500
+Subject: [PATCH 1/1] libopendkim/util.c: include stdio.h for snprintf.
+
+This fixes a build failure on musl, reported at
+
+ https://bugs.gentoo.org/896048
+---
+ libopendkim/util.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libopendkim/util.c b/libopendkim/util.c
+index 6792b169..b1c6a769 100644
+--- a/libopendkim/util.c
++++ b/libopendkim/util.c
+@@ -17,6 +17,7 @@
+ # include <stdbool.h>
+ #endif /* HAVE_STDBOOL_H */
+ #include <ctype.h>
++#include <stdio.h>
+ #include <assert.h>
+ #include <string.h>
+ #include <errno.h>
+--
+2.39.2
+
diff --git a/mail-filter/opendkim/metadata.xml b/mail-filter/opendkim/metadata.xml
index a758a44a6e66..0b748202e257 100644
--- a/mail-filter/opendkim/metadata.xml
+++ b/mail-filter/opendkim/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>klondike@gentoo.org</email>
@@ -55,5 +55,6 @@
</use>
<upstream>
<remote-id type="sourceforge">opendkim</remote-id>
+ <remote-id type="github">trusteddomainproject/OpenDKIM</remote-id>
</upstream>
</pkgmetadata>
diff --git a/mail-filter/opendkim/opendkim-2.10.3-r26.ebuild b/mail-filter/opendkim/opendkim-2.10.3-r30.ebuild
index d678d4120cc4..b689770a7ba0 100644
--- a/mail-filter/opendkim/opendkim-2.10.3-r26.ebuild
+++ b/mail-filter/opendkim/opendkim-2.10.3-r30.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,7 +20,7 @@ IUSE="berkdb ldap lmdb lua memcached opendbx poll sasl selinux +ssl static-libs
BDEPEND="acct-user/opendkim
test? ( ${LUA_DEPS} )"
-COMMON_DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail )
+COMMON_DEPEND="mail-filter/libmilter:=
dev-libs/libbsd
sys-apps/grep
ssl? (
@@ -29,12 +29,11 @@ COMMON_DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail )
berkdb? ( >=sys-libs/db-3.2:* )
opendbx? ( >=dev-db/opendbx-1.4.0 )
lua? ( ${LUA_DEPS} )
- ldap? ( net-nds/openldap )
- lmdb? ( dev-db/lmdb )
+ ldap? ( net-nds/openldap:= )
+ lmdb? ( dev-db/lmdb:= )
memcached? ( dev-libs/libmemcached )
sasl? ( dev-libs/cyrus-sasl )
- unbound? ( >=net-dns/unbound-1.4.1:= net-dns/dnssec-root )
- !unbound? ( net-libs/ldns )"
+ unbound? ( >=net-dns/unbound-1.4.1:= net-dns/dnssec-root )"
DEPEND="${COMMON_DEPEND}"
@@ -57,6 +56,9 @@ PATCHES=(
"${FILESDIR}/${P}-lua-pkgconfig-pt2.patch"
"${FILESDIR}/${P}-define-P-macro-in-libvbr.patch"
"${FILESDIR}/${P}-fix-libmilter-search.patch"
+ "${FILESDIR}/${P}-snprintf-include.patch"
+ "${FILESDIR}/${P}-c-std.patch"
+ "${FILESDIR}/${P}-fix-ldap-sasl-pc.patch"
)
pkg_setup() {
@@ -88,11 +90,6 @@ src_configure() {
if use berkdb ; then
myconf+=( --with-db-incdir=$(db_includedir) )
fi
- if use unbound; then
- myconf+=( --with-unbound )
- else
- myconf+=( --with-ldns )
- fi
if use ldap; then
myconf+=( $(use_with sasl) )
fi
@@ -114,6 +111,7 @@ src_configure() {
$(use_enable static-libs static) \
$(use_enable stats) \
$(use_with memcached libmemcached) \
+ $(use_with unbound) \
"${myconf[@]}" \
--enable-filter \
--with-milter \
diff --git a/mail-filter/opendmarc/Manifest b/mail-filter/opendmarc/Manifest
index 810ee6caf2d1..3c2c63829a7c 100644
--- a/mail-filter/opendmarc/Manifest
+++ b/mail-filter/opendmarc/Manifest
@@ -1,2 +1 @@
-DIST opendmarc-1.3.3.tar.gz 575319 BLAKE2B 72dae5553fea9a51d860aaac6d85171a245584a74134df2249217a88f3da04c4eb518141f6342e281c6a9186345d69a34b585dc3ed18bdb53313374db505f4f5 SHA512 bb4bf8e3ad2d1732b07e55316819d4fd708e529b54a336d7d00763e13bfc62580bb1b30f132fa786dbca15e526e8dd5e146c7be454e1c42714a9f57126fc5e12
DIST opendmarc-1.4.1.1.tar.gz 426618 BLAKE2B a74b2623bc35abb5c34f8d1eff737c71af8f5cadfd6a5d0a85adb6536efd2958118f9da25dd9b736dc24563221968c4ee1ff99b101fa30909764563bda2a8d88 SHA512 ee034386c70c75b87ca2fce0849a1a3538e10e0aebfb0fc9dcba6817d2cf71f52aa5586ccaacdee620190c5fbb81498419fb8e8db9fac15d7c71a61a7da396a6
diff --git a/mail-filter/opendmarc/files/opendmarc-1.3.2-multiple-From.patch b/mail-filter/opendmarc/files/opendmarc-1.3.2-multiple-From.patch
deleted file mode 100644
index 28b2f852f39a..000000000000
--- a/mail-filter/opendmarc/files/opendmarc-1.3.2-multiple-From.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From f6b615e345037408b88b2ffd1acd03239af8a858 Mon Sep 17 00:00:00 2001
-From: Marcin Seremak <panpilkarz@protonmail.com>
-Date: Tue, 30 Jul 2019 08:05:28 +0200
-Subject: [PATCH] Fix multiple addresses in From vulnerability
-
----
- libopendmarc/tests/test_finddomain.c | 1 +
- opendmarc/opendmarc.c | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/libopendmarc/tests/test_finddomain.c b/libopendmarc/tests/test_finddomain.c
-index 50cf405..8447463 100644
---- a/libopendmarc/tests/test_finddomain.c
-+++ b/libopendmarc/tests/test_finddomain.c
-@@ -23,6 +23,7 @@ main(int argc, char **argv)
- /* 11 */ {"(,) joe@joe.com", "joe.com"},
- /* 12 */ {"\"( bob@bob.com)\" joe@joe.com", "joe.com"},
- /* 12 */ {"From: Davide D'Marco <user@blah.com>", "blah.com"},
-+ /* 13 */ {"blah.com", "blah.com"},
- {NULL, NULL},
- };
- u_char dbuf[256];
-diff --git a/opendmarc/opendmarc.c b/opendmarc/opendmarc.c
-index 419c15a..9b7fe3a 100644
---- a/opendmarc/opendmarc.c
-+++ b/opendmarc/opendmarc.c
-@@ -2193,7 +2193,7 @@ mlfi_eom(SMFICTX *ctx)
- strncpy(dfc->mctx_fromdomain, domain, sizeof dfc->mctx_fromdomain - 1);
-
- ostatus = opendmarc_policy_store_from_domain(cc->cctx_dmarc,
-- from->hdr_value);
-+ dfc->mctx_fromdomain);
- if (ostatus != DMARC_PARSE_OKAY)
- {
- if (conf->conf_dolog)
diff --git a/mail-filter/opendmarc/files/opendmarc-1.3.3-CVE-2020-12460.patch b/mail-filter/opendmarc/files/opendmarc-1.3.3-CVE-2020-12460.patch
deleted file mode 100644
index 334c11d5302f..000000000000
--- a/mail-filter/opendmarc/files/opendmarc-1.3.3-CVE-2020-12460.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 50d28af25d8735504b6103537228ce7f76ad765f Mon Sep 17 00:00:00 2001
-From: "Murray S. Kucherawy" <msk@blackops.org>
-Date: Wed, 5 Aug 2020 21:56:01 +0000
-Subject: [PATCH] In opendmarc_xml_parse(), ensure NULL-termination of the
- buffer passed to opendmarc_xml().
-
----
- libopendmarc/opendmarc_xml.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/libopendmarc/opendmarc_xml.c b/libopendmarc/opendmarc_xml.c
-index 26bb9dc..b3ac55a 100644
---- a/libopendmarc/opendmarc_xml.c
-+++ b/libopendmarc/opendmarc_xml.c
-@@ -158,7 +158,7 @@ opendmarc_xml(char *b, size_t blen, char *e, size_t elen)
- if (*cp != '<')
- continue;
- ++cp;
-- for(sp = cp; *sp != '\0'; ++sp)
-+ for (sp = cp; *sp != '\0'; ++sp)
- {
- if (*sp == '?')
- break;
-@@ -546,7 +546,7 @@ opendmarc_xml_parse(char *fname, char *err_buf, size_t err_len)
- if (fname == NULL)
- {
- xerror = errno;
-- (void) snprintf(err_buf, err_len, "%s: %s", fname, "File name was NULL");
-+ (void) snprintf(err_buf, err_len, "%s", "File name was NULL");
- errno = EINVAL;
- return NULL;
- }
-@@ -572,7 +572,7 @@ opendmarc_xml_parse(char *fname, char *err_buf, size_t err_len)
- return NULL;
- }
-
-- bufp = calloc(statb.st_size, 1);
-+ bufp = calloc(statb.st_size + 1, 1);
- if (bufp == NULL)
- {
- xerror = errno;
diff --git a/mail-filter/opendmarc/files/opendmarc-1.4.1.1-CVE-2021-34555.patch b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-CVE-2021-34555.patch
new file mode 100644
index 000000000000..2bf87ffbde07
--- /dev/null
+++ b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-CVE-2021-34555.patch
@@ -0,0 +1,87 @@
+From afa44abe68afe5ce29b6418538a60a642f39e459 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20B=C3=BCrgin?= <dbuergin@gluet.ch>
+Date: Thu, 3 Jun 2021 21:59:55 +0200
+Subject: [PATCH 1/3] Fix multi-value From handling logic
+
+Fixes #175
+---
+ opendmarc/opendmarc.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/opendmarc/opendmarc.c b/opendmarc/opendmarc.c
+index 65f6b49..bc38103 100644
+--- a/opendmarc/opendmarc.c
++++ b/opendmarc/opendmarc.c
+@@ -2479,12 +2479,12 @@ mlfi_eom(SMFICTX *ctx)
+ syslog(LOG_ERR,
+ "%s: multi-valued From field detected",
+ dfc->mctx_jobid);
+- }
+
+- if (conf->conf_reject_multi_from)
+- return SMFIS_REJECT;
+- else
+- return SMFIS_ACCEPT;
++ if (conf->conf_reject_multi_from)
++ return SMFIS_REJECT;
++ else
++ return SMFIS_ACCEPT;
++ }
+ }
+
+ user = users[0];
+
+From 4ea4b219c6c93dbfd512b1caa433f5a810fdb436 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20B=C3=BCrgin?= <dbuergin@gluet.ch>
+Date: Thu, 3 Jun 2021 22:01:34 +0200
+Subject: [PATCH 2/3] Guard syslog call with conf_dolog flag
+
+---
+ opendmarc/opendmarc.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/opendmarc/opendmarc.c b/opendmarc/opendmarc.c
+index bc38103..fb3d4b9 100644
+--- a/opendmarc/opendmarc.c
++++ b/opendmarc/opendmarc.c
+@@ -2476,9 +2476,12 @@ mlfi_eom(SMFICTX *ctx)
+ {
+ if (strcasecmp(domains[0], domains[c]) != 0)
+ {
+- syslog(LOG_ERR,
+- "%s: multi-valued From field detected",
+- dfc->mctx_jobid);
++ if (conf->conf_dolog)
++ {
++ syslog(LOG_ERR,
++ "%s: multi-valued From field detected",
++ dfc->mctx_jobid);
++ }
+
+ if (conf->conf_reject_multi_from)
+ return SMFIS_REJECT;
+
+From 1245589ad44baadb3eb18ce110932da8c6fe286c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20B=C3=BCrgin?= <dbuergin@gluet.ch>
+Date: Wed, 9 Jun 2021 19:18:21 +0200
+Subject: [PATCH 3/3] Skip null domains when checking multi-value From header
+
+---
+ opendmarc/opendmarc.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/opendmarc/opendmarc.c b/opendmarc/opendmarc.c
+index fb3d4b9..ffcbc3f 100644
+--- a/opendmarc/opendmarc.c
++++ b/opendmarc/opendmarc.c
+@@ -2474,7 +2474,9 @@ mlfi_eom(SMFICTX *ctx)
+
+ for (c = 1; users[c] != NULL; c++)
+ {
+- if (strcasecmp(domains[0], domains[c]) != 0)
++ if (domains[0] != NULL
++ && domains[c] != NULL
++ && strcasecmp(domains[0], domains[c]) != 0)
+ {
+ if (conf->conf_dolog)
+ {
diff --git a/mail-filter/opendmarc/files/opendmarc-1.4.1.1-arc-seal-crash.patch b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-arc-seal-crash.patch
new file mode 100644
index 000000000000..7f96512fe45c
--- /dev/null
+++ b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-arc-seal-crash.patch
@@ -0,0 +1,38 @@
+https://github.com/trusteddomainproject/OpenDMARC/issues/183
+https://bugs.gentoo.org/900521
+
+--- a/opendmarc/opendmarc-arcseal.h 2021-04-30 17:34:43.000000000 +0100
++++ b/opendmarc/opendmarc-arcseal.h 2021-06-25 14:23:01.725593770 +0100
+@@ -32,7 +32,7 @@
+ /* max header tag value length (short) */
+ #define OPENDMARC_ARCSEAL_MAX_SHORT_VALUE_LEN 256
+ /* max header tag value length (long) */
+-#define OPENDMARC_ARCSEAL_MAX_LONG_VALUE_LEN 512
++#define OPENDMARC_ARCSEAL_MAX_LONG_VALUE_LEN 768
+
+ /* names and field labels */
+ #define OPENDMARC_ARCSEAL_HDRNAME "ARC-Seal"
+--- a/opendmarc/opendmarc-arcseal.c 2021-04-30 17:34:43.000000000 +0100
++++ b/opendmarc/opendmarc-arcseal.c 2021-06-25 14:27:10.689908703 +0100
+@@ -29,7 +29,7 @@
+ #include "opendmarc.h"
+
+ #define OPENDMARC_ARCSEAL_MAX_FIELD_NAME_LEN 255
+-#define OPENDMARC_ARCSEAL_MAX_TOKEN_LEN 512
++#define OPENDMARC_ARCSEAL_MAX_TOKEN_LEN 768
+
+ /* tables */
+ struct opendmarc_arcseal_lookup
+@@ -167,7 +167,12 @@ opendmarc_arcseal_parse(u_char *hdr, str
+ if (*token_ptr == '\0')
+ return 0;
+ tag_label = strsep(&token_ptr, "=");
++ if (token_ptr == NULL)
++ return 0;
++
+ tag_value = opendmarc_arcseal_strip_whitespace(token_ptr);
++ if (tag_value == NULL)
++ return 0;
+
+ tag_code = opendmarc_arcseal_convert(as_tags, tag_label);
+
diff --git a/mail-filter/opendmarc/files/opendmarc-1.4.1.1-underlinking.patch b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-underlinking.patch
new file mode 100644
index 000000000000..825ee461dfd6
--- /dev/null
+++ b/mail-filter/opendmarc/files/opendmarc-1.4.1.1-underlinking.patch
@@ -0,0 +1,17 @@
+libopendmarc.so.2.0.3 uses
+* __dn_expand
+* __dn_skipname
+* __res_nquery
+which are defined in libresolv in glibc 2.33 and older.
+
+See: https://bugs.gentoo.org/839951
+
+--- a/libopendmarc/Makefile.am
++++ b/libopendmarc/Makefile.am
+@@ -15,5 +15,6 @@
+ opendmarc_spf_dns.c \
+ opendmarc_internal.h
+ libopendmarc_la_LDFLAGS = -version-info $(LIBOPENDMARC_VERSION_INFO)
++libopendmarc_la_LIBADD = $(LIBRESOLV)
+ libopendmarc_includedir = $(includedir)/opendmarc
+ libopendmarc_include_HEADERS = dmarc.h
diff --git a/mail-filter/opendmarc/files/opendmarc.confd b/mail-filter/opendmarc/files/opendmarc.confd
index ef59affa3f89..722237173ebf 100644
--- a/mail-filter/opendmarc/files/opendmarc.confd
+++ b/mail-filter/opendmarc/files/opendmarc.confd
@@ -1,3 +1,3 @@
# user/group to run opendmarc daemon as
-OPENDMARC_USER=milter
-OPENDMARC_GROUP=milter
+OPENDMARC_USER=opendmarc
+OPENDMARC_GROUP=opendmarc
diff --git a/mail-filter/opendmarc/files/opendmarc.initd b/mail-filter/opendmarc/files/opendmarc.initd
index 6a8300f145d6..3f55464e11b4 100644
--- a/mail-filter/opendmarc/files/opendmarc.initd
+++ b/mail-filter/opendmarc/files/opendmarc.initd
@@ -15,8 +15,9 @@ check_cfg() {
return 1
fi
# create /var/run/opendmarc
- mkdir -p /var/run/opendmarc >& /dev/null
- chown ${OPENDMARC_USER}:${OPENDMARC_GROUP} /var/run/opendmarc >& /dev/null
+ mkdir -p /var/run/opendmarc > /dev/null 2>&1
+ chown ${OPENDMARC_USER}:${OPENDMARC_GROUP} \
+ /var/run/opendmarc > /dev/null 2>&1
PIDFILE=$(sed -ne 's/^[[:space:]]*PidFile[[:space:]]\+//p' "${CONFFILE}")
local PIDDIR="${PIDFILE%/*}"
if [ ! -d "${PIDDIR}" ] ; then
diff --git a/mail-filter/opendmarc/files/opendmarc.service b/mail-filter/opendmarc/files/opendmarc.service
index 90ee5ccb4341..b29aa1afafdc 100644
--- a/mail-filter/opendmarc/files/opendmarc.service
+++ b/mail-filter/opendmarc/files/opendmarc.service
@@ -4,8 +4,8 @@ Documentation=man:opendmarc(8) man:opendmarc.conf(5) man:opendmarc-expire(8) man
After=network.target nss-lookup.target syslog.target
[Service]
-User=milter
-Group=milter
+User=opendmarc
+Group=opendmarc
PIDFile=/var/run/opendmarc/opendmarc.pid
ExecStartPre=/usr/sbin/opendmarc -c /etc/opendmarc/opendmarc.conf -n
ExecStart=/usr/sbin/opendmarc -c /etc/opendmarc/opendmarc.conf -f -P /var/run/opendmarc/opendmarc.pid
diff --git a/mail-filter/opendmarc/metadata.xml b/mail-filter/opendmarc/metadata.xml
index b9d3ac78a70f..b23c5f314eca 100644
--- a/mail-filter/opendmarc/metadata.xml
+++ b/mail-filter/opendmarc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>grobian@gentoo.org</email>
diff --git a/mail-filter/opendmarc/opendmarc-1.3.3.ebuild b/mail-filter/opendmarc/opendmarc-1.4.1.1-r5.ebuild
index c8ebaefc31dc..c78d15504262 100644
--- a/mail-filter/opendmarc/opendmarc-1.3.3.ebuild
+++ b/mail-filter/opendmarc/opendmarc-1.4.1.1-r5.ebuild
@@ -1,22 +1,24 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools user multilib systemd
+inherit autotools systemd
DESCRIPTION="Open source DMARC implementation"
HOMEPAGE="http://www.trusteddomain.org/opendmarc/"
SRC_URI="https://github.com/trusteddomainproject/OpenDMARC/archive/rel-${PN}-${PV//./-}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}"
LICENSE="BSD"
-SLOT="0"
+SLOT="0/3" # 1.4 has API breakage with 1.3, yet uses same soname
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="spf +reports static-libs"
+IUSE="spf +reports"
-DEPEND="reports? ( dev-perl/DBI )
- || ( mail-filter/libmilter mail-mta/sendmail )"
+DEPEND="mail-filter/libmilter:=
+ reports? ( dev-perl/DBI )"
RDEPEND="${DEPEND}
+ acct-user/opendmarc
reports? (
dev-perl/DBD-mysql
dev-perl/HTTP-Message
@@ -25,23 +27,13 @@ RDEPEND="${DEPEND}
spf? ( mail-filter/libspf2 )"
PATCHES=(
- "${FILESDIR}"/${PN}-1.3.2-multiple-From.patch
- "${FILESDIR}"/${PN}-1.3.3-CVE-2020-12460.patch
+ "${FILESDIR}"/${PN}-1.4.1.1-CVE-2021-34555.patch
+ "${FILESDIR}"/${PN}-1.4.1.1-underlinking.patch
)
-S=${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}
-
-pkg_setup() {
- enewgroup milter
- enewuser milter -1 -1 /var/lib/milter milter
-}
-
src_prepare() {
default
- # fix issue after they removed docs
- sed -i -e '/^\s\+docs\/Makefile/d' configure.ac || die
-
eautoreconf
if use !reports ; then
sed -i -e '/^SUBDIRS =/s/reports//' Makefile.in || die
@@ -50,16 +42,16 @@ src_prepare() {
src_configure() {
econf \
+ --disable-static \
$(use_with spf) \
$(use_with spf spf2-include "${EPREFIX}"/usr/include/spf2) \
- $(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir)) \
- $(use_enable static-libs static)
+ $(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir))
}
src_install() {
default
- use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la
+ find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/opendmarc.initd opendmarc
newconfd "${FILESDIR}"/opendmarc.confd opendmarc
@@ -69,7 +61,7 @@ src_install() {
# create config file
sed \
- -e 's:^# UserID .*$:UserID milter:' \
+ -e 's:^# UserID .*$:UserID opendmarc:' \
-e "s:^# PidFile .*:PidFile ${EPREFIX}/var/run/opendmarc/opendmarc.pid:" \
-e '/^# Socket /s:^# ::' \
"${S}"/opendmarc/opendmarc.conf.sample \
diff --git a/mail-filter/opendmarc/opendmarc-1.4.1.1-r1.ebuild b/mail-filter/opendmarc/opendmarc-1.4.1.1-r6.ebuild
index 4e857bfe0741..b7957ed0d8ee 100644
--- a/mail-filter/opendmarc/opendmarc-1.4.1.1-r1.ebuild
+++ b/mail-filter/opendmarc/opendmarc-1.4.1.1-r6.ebuild
@@ -1,21 +1,22 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools multilib systemd
+inherit autotools systemd
DESCRIPTION="Open source DMARC implementation"
HOMEPAGE="http://www.trusteddomain.org/opendmarc/"
SRC_URI="https://github.com/trusteddomainproject/OpenDMARC/archive/rel-${PN}-${PV//./-}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}"
LICENSE="BSD"
SLOT="0/3" # 1.4 has API breakage with 1.3, yet uses same soname
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="spf +reports static-libs"
+IUSE="spf +reports"
-DEPEND="reports? ( dev-perl/DBI )
- || ( mail-filter/libmilter mail-mta/sendmail )"
+DEPEND="mail-filter/libmilter:=
+ reports? ( dev-perl/DBI )"
RDEPEND="${DEPEND}
acct-user/opendmarc
reports? (
@@ -25,7 +26,15 @@ RDEPEND="${DEPEND}
)
spf? ( mail-filter/libspf2 )"
-S=${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.1.1-CVE-2021-34555.patch
+ "${FILESDIR}"/${PN}-1.4.1.1-underlinking.patch
+ "${FILESDIR}"/${PN}-1.4.1.1-arc-seal-crash.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ res_ndestroy
+)
src_prepare() {
default
@@ -38,16 +47,16 @@ src_prepare() {
src_configure() {
econf \
+ --disable-static \
$(use_with spf) \
$(use_with spf spf2-include "${EPREFIX}"/usr/include/spf2) \
- $(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir)) \
- $(use_enable static-libs static)
+ $(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir))
}
src_install() {
default
- use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la
+ find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/opendmarc.initd opendmarc
newconfd "${FILESDIR}"/opendmarc.confd opendmarc
diff --git a/mail-filter/opensmtpd-filter-rspamd/metadata.xml b/mail-filter/opensmtpd-filter-rspamd/metadata.xml
index 915f00227065..4d1e1ea205c7 100644
--- a/mail-filter/opensmtpd-filter-rspamd/metadata.xml
+++ b/mail-filter/opensmtpd-filter-rspamd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zx2c4@gentoo.org</email>
diff --git a/mail-filter/policyd-weight/metadata.xml b/mail-filter/policyd-weight/metadata.xml
index b94199d9961c..8620d57b8b9c 100644
--- a/mail-filter/policyd-weight/metadata.xml
+++ b/mail-filter/policyd-weight/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription lang="en">
diff --git a/mail-filter/policyd/metadata.xml b/mail-filter/policyd/metadata.xml
index 99c804e9dc66..7cc2ec0db693 100644
--- a/mail-filter/policyd/metadata.xml
+++ b/mail-filter/policyd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/policyd/policyd-1.82-r4.ebuild b/mail-filter/policyd/policyd-1.82-r4.ebuild
index ff0daf33992c..a589b431e0d4 100644
--- a/mail-filter/policyd/policyd-1.82-r4.ebuild
+++ b/mail-filter/policyd/policyd-1.82-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,10 +6,10 @@ EAPI=7
inherit flag-o-matic toolchain-funcs
DESCRIPTION="Policy daemon for postfix and other MTAs"
-HOMEPAGE="http://policyd.sf.net/"
-SRC_URI="http://policyd.sourceforge.net/${P}.tar.gz"
+HOMEPAGE="https://wiki.policyd.org"
+SRC_URI="https://download.policyd.org/v${PV}/${P}.tar.gz"
-LICENSE="GPL-2"
+LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 ~hppa x86"
@@ -42,7 +42,7 @@ src_configure() {
}
src_compile() {
- emake CC=$(tc-getCC) build
+ emake CC="$(tc-getCC)" build
}
src_install() {
diff --git a/mail-filter/popfile/metadata.xml b/mail-filter/popfile/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/mail-filter/popfile/metadata.xml
+++ b/mail-filter/popfile/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/mail-filter/popfile/popfile-1.1.3-r1.ebuild b/mail-filter/popfile/popfile-1.1.3-r1.ebuild
index 83d9ec1209ff..90cdd61c3f20 100644
--- a/mail-filter/popfile/popfile-1.1.3-r1.ebuild
+++ b/mail-filter/popfile/popfile-1.1.3-r1.ebuild
@@ -1,12 +1,14 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
+
inherit edos2unix
DESCRIPTION="Anti-spam bayesian filter"
-HOMEPAGE="http://getpopfile.org"
-SRC_URI="http://getpopfile.org/downloads/${P}.zip"
+HOMEPAGE="https://getpopfile.org"
+SRC_URI="https://getpopfile.org/downloads/${P}.zip"
+S="${WORKDIR}"
LICENSE="GPL-2"
SLOT="0"
@@ -29,21 +31,19 @@ RDEPEND="virtual/perl-Digest-MD5
dev-perl/IO-Socket-SSL
dev-perl/Net-SSLeay )
xmlrpc? ( dev-perl/PlRPC )"
-
-DEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
+BDEPEND="app-arch/unzip"
src_prepare() {
+ default
local f
- for f in `find ./ -type f`; do
+ for f in $(find ./ -type f || die); do
edos2unix "${f}"
done
}
src_install() {
dodoc *.change*
- rm -rf *.change* license
+ rm -r *.change* license || die
insinto /usr/share/${PN}
doins -r *
diff --git a/mail-filter/postforward/Manifest b/mail-filter/postforward/Manifest
index b81a6d09c8e4..5ca336a696f6 100644
--- a/mail-filter/postforward/Manifest
+++ b/mail-filter/postforward/Manifest
@@ -1,2 +1 @@
-DIST postforward-1.1.0.tar.gz 5707 BLAKE2B 2dc994628820b40caf3b9c65ad6be48e220abff8f5a6d6054b109600d9d368fab3e6e642dbc5a98235f440359600a3f4bbc19f7ead06fd84802a8900fa465dc1 SHA512 39d7a33c454b1529a691b24fd69b311ba368caf59168d39146654cfe319ebc3cf73835e66e6c95a43747f389a6b954ac8da0d7e934e562c16cb85dc20c0f4804
DIST postforward-1.1.1.tar.gz 6086 BLAKE2B ecf344af646b745fa9860279f6c91ba5ab74a5dc93a1cb09168091b01ebe5e804062afa32a51b34f65c5c89c08e401a8a4e1beb145c07bcfb848c970f6f4e1f7 SHA512 1f29e1731ef9fd1292f932a8e195577ce238f69c2e6ae1ffac81a577607fda98563b454564841011ce077cc8453e5ad78d2ab904fdf0fea67c15a69f6b2a3d92
diff --git a/mail-filter/postforward/metadata.xml b/mail-filter/postforward/metadata.xml
index bef51e924285..c81a1a837988 100644
--- a/mail-filter/postforward/metadata.xml
+++ b/mail-filter/postforward/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>gentoo_bugs_peep@parallaxshift.com</email>
diff --git a/mail-filter/postforward/postforward-1.1.0.ebuild b/mail-filter/postforward/postforward-1.1.0.ebuild
deleted file mode 100644
index 2e0462535529..000000000000
--- a/mail-filter/postforward/postforward-1.1.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit golang-build
-
-DESCRIPTION="Postfix Sender Rewriting Scheme forwarding agent"
-EGO_PN="${PN}"
-SRC_URI="https://github.com/zoni/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/zoni/postforward"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND="
- dev-lang/go:0"
-RDEPEND="
- mail-filter/postsrsd"
-
-PATCHES=( "${FILESDIR}/${PN}_apply-sendmail-path.patch" )
-
-src_prepare() {
- default
-
- # Dynamically fix EPREFIX lines made by ${PN}_apply-sendmail-path.patch
- sed -i -e "s/@GENTOO_PORTAGE_EPREFIX@/${EPREFIX}/" *.go || die
-
- # go build assumes files will be in src dir, but
- # source files are in root in this package, so move
- # them.
- local new_src_dir="${S}/src/${EGO_PN}"
- # Freak out if there's already something there because
- # it means the package has changed and we'll need to
- # adjust to it.
- [[ ! -e "${new_src_dir}" ]] || die "${new_src_dir} already exists"
- mkdir -p "${new_src_dir}" || die
- mv *.go "${new_src_dir}" || die
-}
-
-# Standard golang-build src_install complains about pkg not
-# existing, so we go custom.
-src_install() {
- einstalldocs
- dosbin "${PN}"
-}
diff --git a/mail-filter/postforward/postforward-1.1.1.ebuild b/mail-filter/postforward/postforward-1.1.1.ebuild
index f9f2be8689ca..13e50547a484 100644
--- a/mail-filter/postforward/postforward-1.1.1.ebuild
+++ b/mail-filter/postforward/postforward-1.1.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/zoni/postforward"
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
DEPEND="
dev-lang/go:0"
diff --git a/mail-filter/postfwd/Manifest b/mail-filter/postfwd/Manifest
index 92c099a3a055..8bc9d7b26cd1 100644
--- a/mail-filter/postfwd/Manifest
+++ b/mail-filter/postfwd/Manifest
@@ -1 +1,2 @@
DIST postfwd-2.02.tar.gz 265781 BLAKE2B de63bdab4f7c1b117a16ebed2248f1e89b7c973bb34cee1b3fbbceda8c9d9b92d180fb5de8a332732b69a05d1b157be1c95d81ded003641d78665064a4881432 SHA512 23b48ca7218fba46f4b1887c4c6724112866c2e22e56f749602ba74430c4cf4c8418b9effb400ea4a468a5f137c764cac9611879e37d1585cf6d0b31dd41060f
+DIST postfwd-2.03.tar.gz 266373 BLAKE2B d7d7ab7680ddc7640831b2216d2f1618f1b4561abed6a0c6c5edabebe205496ae41893500b09c9bd76131dbbbed1743af00156417f2fb23c23c03fdddef96e95 SHA512 1f29766e9e7aa8cfd4c86e426ca578670094eb856758bc67d0fbd98ec31f408a5797e0fd93ee81a169014b5376dfc48f71db122a4cfafe0ba757856679f5ff61
diff --git a/mail-filter/postfwd/files/postfwd.conf b/mail-filter/postfwd/files/postfwd.conf
deleted file mode 100644
index 2f6f537e7c8c..000000000000
--- a/mail-filter/postfwd/files/postfwd.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-# /etc/conf.d/postfwd.conf
-
-# User and group to execute postfwd as
-POSTFWD_USER="postfwd"
-POSTFWD_GROUP="postfwd"
-
-# Configuration file to use
-POSTFWD_CONFIG="/etc/postfix/postfwd.cf"
-
-# The IP address postfwd will listen on
-# WARNING: You _really_ want this to be localhost for security!
-POSTFWD_LISTEN="127.0.0.1"
-
-# The port postfwd will listen on
-POSTFWD_PORT="10040"
-
-# Additional options to pass to postfwd
-POSTFWD_OPTS=""
diff --git a/mail-filter/postfwd/files/postfwd.init b/mail-filter/postfwd/files/postfwd.init
deleted file mode 100644
index b56d8b412f10..000000000000
--- a/mail-filter/postfwd/files/postfwd.init
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-PIDFILE=/var/run/postfwd.pid
-
-depend() {
- need net
-}
-
-start() {
- ebegin "Starting postfwd"
- start-stop-daemon --start --quiet --background \
- --pidfile ${PIDFILE} \
- --exec /usr/sbin/postfwd2 -- --daemon --file ${POSTFWD_CONFIG} \
- --interface=${POSTFWD_LISTEN} --port=${POSTFWD_PORT} \
- --user=${POSTFWD_USER} --group=${POSTFWD_GROUP} \
- --pidfile ${PIDFILE} \
- ${POSTFWD_OPTS}
- eend $?
-}
-
-stop() {
- ebegin "Stopping postfwd"
- start-stop-daemon --stop --quiet --pidfile ${PIDFILE}
- eend $?
-}
diff --git a/mail-filter/postfwd/files/postfwd.init.3 b/mail-filter/postfwd/files/postfwd.init.3
deleted file mode 100644
index 7fc17344a31d..000000000000
--- a/mail-filter/postfwd/files/postfwd.init.3
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-PIDFILE=/var/run/postfwd.pid
-
-depend() {
- need net
-}
-
-start() {
- ebegin "Starting postfwd"
- start-stop-daemon --start --quiet --background \
- --pidfile ${PIDFILE} \
- --exec /usr/sbin/postfwd3 -- --daemon --file ${POSTFWD_CONFIG} \
- --interface=${POSTFWD_LISTEN} --port=${POSTFWD_PORT} \
- --user=${POSTFWD_USER} --group=${POSTFWD_GROUP} \
- --pidfile ${PIDFILE} \
- ${POSTFWD_OPTS}
- eend $?
-}
-
-stop() {
- ebegin "Stopping postfwd"
- start-stop-daemon --stop --quiet --pidfile ${PIDFILE}
- eend $?
-}
diff --git a/mail-filter/postfwd/files/postfwd.service b/mail-filter/postfwd/files/postfwd.service
deleted file mode 100644
index 376e8d2da320..000000000000
--- a/mail-filter/postfwd/files/postfwd.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Postfix firewall daemon
-
-[Service]
-Type=forking
-ExecStart=/usr/sbin/postfwd2 --shortlog --summary=600 --cache=600 --cache-rbl-timeout=3600 --cleanup-requests=1200 --cleanup-rbls=1800 --cleanup-rates=1200 --daemon --file=/etc/postfwd/postfwd.cf --interface=127.0.0.1 --port=10040 --pidfile=/var/run/postfwd.pid --user=postfwd --group=postfwd
-ExecStop=/usr/sbin/postfwd2 --file=/etc/postfwd/postfwd.cf --pidfile=/var/run/postfwd.pid --kill
-ExecReload=/usr/sbin/postfwd2 --file=/etc/postfwd/postfwd.cf --pidfile=/var/run/postfwd.pid --reload
-
-[Install]
-WantedBy=multi-user.target
diff --git a/mail-filter/postfwd/metadata.xml b/mail-filter/postfwd/metadata.xml
index e9407a0103b8..8f3168c9e513 100644
--- a/mail-filter/postfwd/metadata.xml
+++ b/mail-filter/postfwd/metadata.xml
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>c@roessner.co</email>
- <name>Christian Roessner</name>
- </maintainer>
<maintainer type="person">
<email>mschiff@gentoo.org</email>
<name>Marc Schiffbauer</name>
</maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
<upstream>
<maintainer status="active">
<email>info@postfwd.org</email>
diff --git a/mail-filter/postfwd/postfwd-2.02.ebuild b/mail-filter/postfwd/postfwd-2.02-r1.ebuild
index df52b4a6f052..9c5901fcc653 100644
--- a/mail-filter/postfwd/postfwd-2.02.ebuild
+++ b/mail-filter/postfwd/postfwd-2.02-r1.ebuild
@@ -1,20 +1,23 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit systemd user
+inherit systemd
DESCRIPTION="Versatile Postfix policy server with a flexible ruleset based configuration"
HOMEPAGE="https://www.postfwd.org/"
SRC_URI="https://www.postfwd.org/${P}.tar.gz"
+S="${WORKDIR}/${PN}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-DEPEND=""
-RDEPEND=">=dev-lang/perl-5.16.3
+RDEPEND="
+ acct-group/postfwd
+ acct-user/postfwd
+ dev-lang/perl
dev-perl/Net-CIDR-Lite
dev-perl/Net-DNS
dev-perl/Net-Server
@@ -25,13 +28,6 @@ RDEPEND=">=dev-lang/perl-5.16.3
virtual/perl-Time-HiRes
"
-S=${WORKDIR}/${PN}
-
-pkg_setup() {
- enewgroup postfwd
- enewuser postfwd -1 -1 -1 postfwd
-}
-
src_install() {
local BIN="postfwd3"
# program
diff --git a/mail-filter/postfwd/postfwd-2.03.ebuild b/mail-filter/postfwd/postfwd-2.03.ebuild
new file mode 100644
index 000000000000..9c5901fcc653
--- /dev/null
+++ b/mail-filter/postfwd/postfwd-2.03.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd
+
+DESCRIPTION="Versatile Postfix policy server with a flexible ruleset based configuration"
+HOMEPAGE="https://www.postfwd.org/"
+SRC_URI="https://www.postfwd.org/${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ acct-group/postfwd
+ acct-user/postfwd
+ dev-lang/perl
+ dev-perl/Net-CIDR-Lite
+ dev-perl/Net-DNS
+ dev-perl/Net-Server
+ dev-perl/NetAddr-IP
+ virtual/perl-Digest-MD5
+ virtual/perl-Storable
+ virtual/perl-Sys-Syslog
+ virtual/perl-Time-HiRes
+"
+
+src_install() {
+ local BIN="postfwd3"
+ # program
+ dosbin sbin/${BIN}
+
+ # man pages and documentation
+ doman man/man8/${BIN}.8
+ dodoc doc/{${BIN}.CHANGELOG,${BIN}.txt}
+
+ # example configuration
+ dodoc etc/${PN}.cf.sample
+
+ # plugins and tools
+ dodoc -r plugins tools
+
+ # start scripts script and respective configuration file
+ newinitd "${FILESDIR}"/${PN}.init.3-r1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf.3 ${PN}
+ systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
+}
+
+pkg_postinst() {
+ einfo
+ einfo "${PN} has no default configuration for safety reasons. Every"
+ einfo "mail system is different, so you should craft a set of rules"
+ einfo "that is suitable for your environment and save it to:"
+ einfo " ${EROOT}/etc/postfwd.cf"
+ einfo "You can find a sample configuration in:"
+ einfo " ${EROOT}/usr/share/doc/${PF}"
+ einfo
+ einfo "If you want ${PN} to start on system boot, you have to add it your"
+ einfo "default run level if using OpenRC:"
+ einfo " # rc-update add postfwd default"
+ einfo "Also remember to edit ${EROOT}/etc/conf.d/${PN} to your liking."
+ einfo
+ einfo "Or - if you are using systemd - enable the service:"
+ einfo " # systemctl enable postfwd"
+ einfo
+ einfo "A plugins sample folder has been placed under:"
+ einfo
+ einfo " ${EROOT}/usr/share/doc/${PF}/plugins"
+ einfo
+ einfo "You can find additional tools for testing ${PN} in:"
+ einfo " ${EROOT}/usr/share/doc/${PF}/tools"
+
+ ewarn
+ ewarn "Please read the documentation carefully and properly test new"
+ ewarn "rulesets before putting them into production use. Otherwise you"
+ ewarn "risk accidental mail loss or worse."
+ ewarn
+ ewarn "Visit https://www.postfwd.org/ for more information."
+ ewarn
+}
diff --git a/mail-filter/postgrey/Manifest b/mail-filter/postgrey/Manifest
index 317600c06e6f..56e713ad3b5c 100644
--- a/mail-filter/postgrey/Manifest
+++ b/mail-filter/postgrey/Manifest
@@ -1 +1,4 @@
+DIST postgrey-1.37.tar.gz 41815 BLAKE2B dd8a1f62f56a614c25863afde089f1882a1567e3a53a24b1d12b6f23994388caf99059f05775853065143f4f953a6fd964625d5c865993e0e679dd545b848c11 SHA512 369968212ea60539efc0d4a7ae84f7c3ce13f5622e6ee070a0089423ef81ca8f7541ebd20289291d0e6a3aec2ca30dbc9c0d9c0a6f0a686adfadb5d0dd7830ca
DIST postgrey-1.37_p20190625.tar.gz 124667 BLAKE2B ca2caba51a72198e42d6d4d9c5c7590b62c1bd1589d05bfb4096fb4d95ff62ff96976beac8c1b35136a4a6830af936244485ff7dcdcd46d8558a4bef0bbb123a SHA512 f3caf3c7663bd8784701c7e1ad45d1c577edf6fac14591a6983fda25e7f8a875f2501780a8f97ce72e6a324878404e9ac2a003a07ae07ad4debae61fe734b8d4
+DIST postgrey-1.37_p20220122.tar.gz 124539 BLAKE2B 329c4bf6228c0a70a59bffaee0468489febf5237afacce94da193589c0f2849b2e4b9551c74d1a1478cb88d0a32ad91b0b1bf0ff677fd45bc098bab83192dd28 SHA512 1580b8dfddaad8c615d1ef12252681525d4b1318298b91145fee0deea08c0f9ea92b40889bc8c64404b54fb1d67f153e0065008825dfb6e00eb2f441076f9dc2
+DIST postgrey-1.37_p20230714.tar.gz 124561 BLAKE2B 8abd571fade3293e77cabfcf3fe1677749c9f34f1a213b6ff1856493bb4ac7d42ef960843ff1ea0f67df9a73e8ce5b92ef6bcf664727f9f197bede48ea0f382d SHA512 fc45722ecdc660a0756fc4625363680f7b031ce55990cfe6f99affcbd3e40d21c49669fe0a1b8ccbd303e78ff8d360446c8e524cac119b639b5e3de505c572eb
diff --git a/mail-filter/postgrey/metadata.xml b/mail-filter/postgrey/metadata.xml
index 3532fe99da7f..7218d402ad5b 100644
--- a/mail-filter/postgrey/metadata.xml
+++ b/mail-filter/postgrey/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sam@gentoo.org</email>
diff --git a/mail-filter/postgrey/postgrey-1.37.ebuild b/mail-filter/postgrey/postgrey-1.37.ebuild
new file mode 100644
index 000000000000..015475a296be
--- /dev/null
+++ b/mail-filter/postgrey/postgrey-1.37.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd
+
+DESCRIPTION="Postgrey is a Postfix policy server implementing greylisting"
+HOMEPAGE="https://postgrey.schweikert.ch/"
+SRC_URI="http://postgrey.schweikert.ch/pub/${P}.tar.gz
+ http://postgrey.schweikert.ch/pub/old/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 x86"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/postgrey
+ acct-user/postgrey
+"
+# TODO: Use db.eclass?
+RDEPEND="
+ ${DEPEND}
+ >=dev-lang/perl-5.6.0
+ dev-perl/Net-Server
+ dev-perl/IO-Multiplex
+ dev-perl/BerkeleyDB
+ dev-perl/Net-DNS
+ dev-perl/NetAddr-IP
+ dev-perl/Net-RBLClient
+ dev-perl/Parse-Syslog
+ virtual/perl-Digest-SHA
+ >=sys-libs/db-4.1
+ selinux? ( sec-policy/selinux-postgrey )
+"
+
+src_prepare() {
+ default
+
+ # bug 479400
+ sed -i 's@#!/usr/bin/perl -T -w@#!/usr/bin/perl -w@' postgrey || die "sed failed"
+}
+
+src_install() {
+ # postgrey data/DB in /var
+ diropts -m0770 -o ${PN} -g ${PN}
+ dodir /var/spool/postfix/${PN}
+ keepdir /var/spool/postfix/${PN}
+ fowners postgrey:postgrey /var/spool/postfix/${PN}
+ fperms 0770 /var/spool/postfix/${PN}
+
+ # postgrey binary
+ dosbin ${PN}
+ dosbin contrib/postgreyreport
+
+ # policy-test script
+ dosbin policy-test
+
+ # postgrey data in /etc/postfix
+ insinto /etc/postfix
+ insopts -o root -g ${PN} -m 0640
+ doins postgrey_whitelist_clients postgrey_whitelist_recipients
+
+ # documentation
+ dodoc Changes README README.exim
+
+ # init.d + conf.d files
+ insopts -o root -g root -m 755
+ newinitd "${FILESDIR}"/${PN}-1.34-r3.rc.new ${PN}
+
+ insopts -o root -g root -m 640
+ newconfd "${FILESDIR}"/${PN}.conf.new ${PN}
+
+ systemd_dounit "${FILESDIR}"/postgrey.service
+}
diff --git a/mail-filter/postgrey/postgrey-1.37_p20190625-r1.ebuild b/mail-filter/postgrey/postgrey-1.37_p20190625-r1.ebuild
index a6906228099d..f645cdacd31e 100644
--- a/mail-filter/postgrey/postgrey-1.37_p20190625-r1.ebuild
+++ b/mail-filter/postgrey/postgrey-1.37_p20190625-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -14,6 +14,7 @@ S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 x86"
+IUSE="selinux"
DEPEND="
acct-group/postgrey
@@ -32,6 +33,7 @@ RDEPEND="
dev-perl/Parse-Syslog
virtual/perl-Digest-SHA
>=sys-libs/db-4.1
+ selinux? ( sec-policy/selinux-postgrey )
"
src_prepare() {
diff --git a/mail-filter/postgrey/postgrey-1.37_p20220122.ebuild b/mail-filter/postgrey/postgrey-1.37_p20220122.ebuild
new file mode 100644
index 000000000000..92932af97beb
--- /dev/null
+++ b/mail-filter/postgrey/postgrey-1.37_p20220122.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+COMMIT="c589bb9b727be9e1caaef6aa809a5ced688d9509"
+DESCRIPTION="Postgrey is a Postfix policy server implementing greylisting"
+HOMEPAGE="https://postgrey.schweikert.ch/"
+SRC_URI="https://github.com/schweikert/postgrey/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 x86"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/postgrey
+ acct-user/postgrey
+"
+# TODO: Use db.eclass?
+RDEPEND="
+ ${DEPEND}
+ >=dev-lang/perl-5.6.0
+ dev-perl/Net-Server
+ dev-perl/IO-Multiplex
+ dev-perl/BerkeleyDB
+ dev-perl/Net-DNS
+ dev-perl/NetAddr-IP
+ dev-perl/Net-RBLClient
+ dev-perl/Parse-Syslog
+ virtual/perl-Digest-SHA
+ >=sys-libs/db-4.1
+ selinux? ( sec-policy/selinux-postgrey )
+"
+
+src_prepare() {
+ default
+
+ # bug #479400
+ sed -i 's@#!/usr/bin/perl -T -w@#!/usr/bin/perl -w@' postgrey || die "sed failed"
+ sed -i -e '/git/d' Makefile || die
+}
+
+src_install() {
+ # postgrey data/DB in /var
+ diropts -m0770 -o ${PN} -g ${PN}
+ dodir /var/spool/postfix/${PN}
+ keepdir /var/spool/postfix/${PN}
+ fowners postgrey:postgrey /var/spool/postfix/${PN}
+ fperms 0770 /var/spool/postfix/${PN}
+
+ # postgrey binary
+ dosbin ${PN}
+ dosbin contrib/postgreyreport
+
+ # policy-test script
+ dosbin policy-test
+
+ # postgrey data in /etc/postfix
+ insinto /etc/postfix
+ insopts -o root -g ${PN} -m 0640
+ doins postgrey_whitelist_clients postgrey_whitelist_recipients
+
+ # documentation
+ dodoc Changes README README.exim
+
+ # init.d + conf.d files
+ insopts -o root -g root -m 755
+ newinitd "${FILESDIR}"/${PN}-1.34-r3.rc.new ${PN}
+
+ insopts -o root -g root -m 640
+ newconfd "${FILESDIR}"/${PN}.conf.new ${PN}
+
+ systemd_dounit "${FILESDIR}"/postgrey.service
+}
diff --git a/mail-filter/postgrey/postgrey-1.37_p20230714.ebuild b/mail-filter/postgrey/postgrey-1.37_p20230714.ebuild
new file mode 100644
index 000000000000..1b9281491838
--- /dev/null
+++ b/mail-filter/postgrey/postgrey-1.37_p20230714.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+COMMIT="5f60afc8e77cc2b12682636de4ad983992d6a1d2"
+DESCRIPTION="Postgrey is a Postfix policy server implementing greylisting"
+HOMEPAGE="https://postgrey.schweikert.ch/"
+SRC_URI="https://github.com/schweikert/postgrey/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 x86"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/postgrey
+ acct-user/postgrey
+"
+# TODO: Use db.eclass?
+RDEPEND="
+ ${DEPEND}
+ >=dev-lang/perl-5.6.0
+ dev-perl/Net-Server
+ dev-perl/IO-Multiplex
+ dev-perl/BerkeleyDB
+ dev-perl/Net-DNS
+ dev-perl/NetAddr-IP
+ dev-perl/Net-RBLClient
+ dev-perl/Parse-Syslog
+ virtual/perl-Digest-SHA
+ >=sys-libs/db-4.1
+ selinux? ( sec-policy/selinux-postgrey )
+"
+
+src_prepare() {
+ default
+
+ # bug #479400
+ sed -i 's@#!/usr/bin/perl -T -w@#!/usr/bin/perl -w@' postgrey || die "sed failed"
+ sed -i -e '/git/d' Makefile || die
+}
+
+src_install() {
+ # postgrey data/DB in /var
+ diropts -m0770 -o ${PN} -g ${PN}
+ dodir /var/spool/postfix/${PN}
+ keepdir /var/spool/postfix/${PN}
+ fowners postgrey:postgrey /var/spool/postfix/${PN}
+ fperms 0770 /var/spool/postfix/${PN}
+
+ # postgrey binary
+ dosbin ${PN}
+ dosbin contrib/postgreyreport
+
+ # policy-test script
+ dosbin policy-test
+
+ # postgrey data in /etc/postfix
+ insinto /etc/postfix
+ insopts -o root -g ${PN} -m 0640
+ doins postgrey_whitelist_clients postgrey_whitelist_recipients
+
+ # documentation
+ dodoc Changes README README.exim
+
+ # init.d + conf.d files
+ insopts -o root -g root -m 755
+ newinitd "${FILESDIR}"/${PN}-1.34-r3.rc.new ${PN}
+
+ insopts -o root -g root -m 640
+ newconfd "${FILESDIR}"/${PN}.conf.new ${PN}
+
+ systemd_dounit "${FILESDIR}"/postgrey.service
+}
diff --git a/mail-filter/postsrsd/Manifest b/mail-filter/postsrsd/Manifest
index 48f18bff6ea7..80dd3901dc52 100644
--- a/mail-filter/postsrsd/Manifest
+++ b/mail-filter/postsrsd/Manifest
@@ -1 +1 @@
-DIST postsrsd-1.10.tar.gz 34844 BLAKE2B 4722e8f3ec1d5d7de0648d8afc03c38f485c92b092bd42bc02c82c4072b5eb053cbb907bd1198de1219acf465c850b4f08ee8bca629f85734ca2ff643d77c1e4 SHA512 79f824cbc56de2e79da2eb67b1888c1c171a10a7bae5f19384c22024ff7e65dd36a447e632ddaf77bea6bdfa4972c7a918a30cd3b06f7b7ae49ab7552c43be0e
+DIST postsrsd-1.12.tar.gz 36860 BLAKE2B 9f760e010c791d993df83d1f55bd02f2f42fe336e4aef9aae87e62aab2ef86354d99ff1b9be2b2a24d33006fe0461887224dad11a03139e7ce24ab23a775d3ad SHA512 9b83d89f8ac26ba0477998c495b0566295e16ae62a661a9edaef430cbc2eea592fe178b3686d0ad0578a808d13c13d526ac44a2360fd6e715d701887086fa51a
diff --git a/mail-filter/postsrsd/files/postsrsd.init b/mail-filter/postsrsd/files/postsrsd.init
deleted file mode 100644
index acc00232be5b..000000000000
--- a/mail-filter/postsrsd/files/postsrsd.init
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-PIDFILE=/var/run/$SVCNAME.pid
-SRS_DOMAIN=`postconf -h mydomain || true`
-SRS_EXCLUDE_DOMAINS=
-
-depend() {
- need net
-}
-
-start() {
- ebegin "Starting ${SVCNAME}"
- start-stop-daemon --start --quiet --pidfile $PIDFILE \
- --name $SVCNAME \
- --exec /usr/sbin/postsrsd \
- -- -f "$SRS_FORWARD_PORT" -r "$SRS_REVERSE_PORT" \
- -d "$SRS_DOMAIN" -s "$SRS_SECRET" -a "$SRS_SEPARATOR" \
- -u "$RUN_AS" -p "$PIDFILE" -c "$CHROOT" \
- -D -X"$SRS_EXCLUDE_DOMAINS"
- eend $?
-}
-
-stop() {
- ebegin "Stopping ${SVCNAME}"
- start-stop-daemon --stop --quiet --pidfile $PIDFILE \
- --name $SVCNAME
- eend $?
-}
diff --git a/mail-filter/postsrsd/files/postsrsd.init-r1 b/mail-filter/postsrsd/files/postsrsd.init-r2
index 023a96897085..aff009dcfb2b 100644
--- a/mail-filter/postsrsd/files/postsrsd.init-r1
+++ b/mail-filter/postsrsd/files/postsrsd.init-r2
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 2015-2016 Gentoo Foundation
+# Copyright 2015-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
PIDFILE=/var/run/$SVCNAME.pid
@@ -18,6 +18,7 @@ start() {
-- -f "$SRS_FORWARD_PORT" -r "$SRS_REVERSE_PORT" \
-d "$SRS_DOMAIN" -s "$SRS_SECRET" -a "$SRS_SEPARATOR" \
-u "$RUN_AS" -p "$PIDFILE" -c "$CHROOT" \
+ -n "$SRS_HASHLENGTH" -N "$SRS_HASHMIN" -l "$SRS_LISTEN_ADDR" \
-D -X"$SRS_EXCLUDE_DOMAINS"
eend $?
}
diff --git a/mail-filter/postsrsd/metadata.xml b/mail-filter/postsrsd/metadata.xml
index 941bbee959a4..031be196863a 100644
--- a/mail-filter/postsrsd/metadata.xml
+++ b/mail-filter/postsrsd/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>djc@gentoo.org</email>
- <name>Dirkjan Ochtman</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">roehling/postsrsd</remote-id>
</upstream>
diff --git a/mail-filter/postsrsd/postsrsd-1.10.ebuild b/mail-filter/postsrsd/postsrsd-1.10.ebuild
deleted file mode 100644
index 9e1777c300cc..000000000000
--- a/mail-filter/postsrsd/postsrsd-1.10.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake
-
-DESCRIPTION="Postfix Sender Rewriting Scheme daemon"
-SRC_URI="https://github.com/roehling/postsrsd/archive/${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/roehling/postsrsd"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-BDEPEND=">=dev-util/cmake-2.4"
-RDEPEND=""
-
-CHROOT_DIR="${EPREFIX}/var/lib/postsrsd"
-
-src_configure() {
- local mycmakeargs=(
- -DCHROOT_DIR=${CHROOT_DIR}
- -DDOC_DIR="${EPREFIX}/usr/share/doc/${PF}"
- )
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- newinitd "${FILESDIR}/postsrsd.init-r1" postsrsd
- newconfd "${BUILD_DIR}/postsrsd.default" postsrsd
- keepdir ${CHROOT_DIR}
-}
diff --git a/mail-filter/postsrsd/postsrsd-1.12.ebuild b/mail-filter/postsrsd/postsrsd-1.12.ebuild
new file mode 100644
index 000000000000..84b871c7be92
--- /dev/null
+++ b/mail-filter/postsrsd/postsrsd-1.12.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd
+
+DESCRIPTION="Postfix Sender Rewriting Scheme daemon"
+HOMEPAGE="https://github.com/roehling/postsrsd"
+SRC_URI="https://github.com/roehling/postsrsd/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="sys-apps/help2man"
+
+CHROOT_DIR="${EPREFIX}/var/lib/postsrsd"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCHROOT_DIR="${CHROOT_DIR}"
+
+ # This doesn't affect functionality on OpenRC, it just
+ # forces the build system to install the systemd units.
+ -DINIT_FLAVOR="systemd"
+ -DSYSD_UNIT_DIR="$(systemd_get_systemunitdir)"
+
+ -DDOC_DIR="${EPREFIX}"/usr/share/doc/${PF}
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ newinitd "${FILESDIR}"/postsrsd.init-r2 postsrsd
+ newconfd "${BUILD_DIR}"/postsrsd.default postsrsd
+ keepdir "${CHROOT_DIR}"
+}
diff --git a/mail-filter/procmail/Manifest b/mail-filter/procmail/Manifest
index bf817c923214..24540afb4bdf 100644
--- a/mail-filter/procmail/Manifest
+++ b/mail-filter/procmail/Manifest
@@ -1 +1 @@
-DIST procmail-3.22.tar.gz 226817 BLAKE2B 4fd4641abcd3a897ea19bd8f76446f88806d22649d5221f8cef6f9efc29f7fcc02c9707cbf00c32fe247f16579d28fd887d3c18c4d3a2f8877c351bf92e85866 SHA512 3d0658329a55957a8d5741e03b0853b030c4524acef30641663213aa9eefc8264f8cc2b68a00a89e5f9f0f7c916c41a42e1b6c8df562c545ba97d8ab9049a936
+DIST procmail-3.24.gh.tar.gz 299704 BLAKE2B 3223e9551a48329da88545bc8b90a346dea1182ba5ec6221acbe7a76cf01485b7115194087104bd042eeec3660de9f6146c5b9d984763fee1e2174f1edd59c11 SHA512 ce3763205d7e34c8a096c411487de296ecfb190ba817ad07926d44811222e689faedb97a3d4e85989db70e5a2298b26fff70c9d0cb0324a447ddc8988d7fe8ea
diff --git a/mail-filter/procmail/files/gentoo-maildir3.diff b/mail-filter/procmail/files/gentoo-maildir3.diff
deleted file mode 100644
index 51dfef64ae8b..000000000000
--- a/mail-filter/procmail/files/gentoo-maildir3.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- procmail-3.22/src/authenticate.c.orig 2002-07-26 20:38:52.000000000 -0400
-+++ procmail-3.22/src/authenticate.c 2002-07-26 20:57:56.000000000 -0400
-@@ -39,7 +39,7 @@
- #include "authenticate.h"
-
- #ifndef MAILSPOOLDIR
--#define MAILSPOOLDIR "/var/spool/mail/" /* watch the trailing / */
-+#define MAILSPOOLDIR "" /* watch the trailing / */
- #endif
- #ifndef MAILSPOOLSUFFIX
- #define MAILSPOOLSUFFIX "" /* suffix to force maildir or MH style */
-
diff --git a/mail-filter/procmail/files/procmail-3.22-CVE-2014-3618.patch b/mail-filter/procmail/files/procmail-3.22-CVE-2014-3618.patch
deleted file mode 100644
index 124d1f996852..000000000000
--- a/mail-filter/procmail/files/procmail-3.22-CVE-2014-3618.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/src/formisc.c b/src/formisc.c
-index 338733b..c48df52 100644
---- a/src/formisc.c
-+++ b/src/formisc.c
-@@ -84,12 +84,11 @@ normal: *target++= *start++;
- case '"':*target++=delim='"';start++;
- }
- ;{ int i;
-- do
-+ while(*start) /* anything? */
- if((i= *target++= *start++)==delim) /* corresponding delimiter? */
- break;
- else if(i=='\\'&&*start) /* skip quoted character */
- *target++= *start++;
-- while(*start); /* anything? */
- }
- hitspc=2;
- }
diff --git a/mail-filter/procmail/files/procmail-3.22-CVE-2017-16844.patch b/mail-filter/procmail/files/procmail-3.22-CVE-2017-16844.patch
deleted file mode 100644
index 5e610d723da0..000000000000
--- a/mail-filter/procmail/files/procmail-3.22-CVE-2017-16844.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/formisc.c b/src/formisc.c
-index 5c2869d..54fd013 100644
---- a/src/formisc.c
-+++ b/src/formisc.c
-@@ -103,7 +103,7 @@ void loadsaved(sp)const struct saved*const sp; /* load some saved text */
- }
- /* append to buf */
- void loadbuf(text,len)const char*const text;const size_t len;
--{ if(buffilled+len>buflen) /* buf can't hold the text */
-+{ while(buffilled+len>buflen) /* buf can't hold the text */
- buf=realloc(buf,buflen+=Bsize);
- tmemmove(buf+buffilled,text,len);buffilled+=len;
- }
diff --git a/mail-filter/procmail/files/procmail-3.22-crash-fix.patch b/mail-filter/procmail/files/procmail-3.22-crash-fix.patch
deleted file mode 100644
index 8563ea3d1d4c..000000000000
--- a/mail-filter/procmail/files/procmail-3.22-crash-fix.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-diff --git a/src/cstdio.c b/src/cstdio.c
-index 7b6fe6d..0a0bd5b 100644
---- a/src/cstdio.c
-+++ b/src/cstdio.c
-@@ -144,7 +144,7 @@ int getbl(p,end)char*p,*end; /* my gets */
- { case '\n':case EOF:*q='\0';
- return overflow?-1:p!=q; /* did we read anything at all? */
- }
-- if(q==end) /* check here so that a trailing backslash won't be lost */
-+ if(q>=end) /* check here so that a trailing backslash won't be lost */
- q=p,overflow=1;
- *q++=i;
- }
-@@ -199,7 +199,7 @@ int getlline(target,end)char*target,*end;
- if(*(target=strchr(target,'\0')-1)=='\\')
- { if(chp2!=target) /* non-empty line? */
- target++; /* then preserve the backslash */
-- if(target>end-2) /* space enough for getbl? */
-+ if(target>=end-2) /* space enough for getbl? */
- target=end-linebuf,overflow=1; /* toss what we have */
- continue;
- }
-diff --git a/src/formail.c b/src/formail.c
-index 1f5c9dd..49b9967 100644
---- a/src/formail.c
-+++ b/src/formail.c
-@@ -219,7 +219,8 @@ static char*getsender(namep,fldp,headreply)char*namep;struct field*fldp;
- if(i>=0&&(i!=maxindex(sest)||fldp==rdheader)) /* found anything? */
- { char*saddr;char*tmp; /* determine the weight */
- nowm=areply&&headreply?headreply==1?sest[i].wrepl:sest[i].wrrepl:i;chp+=j;
-- tmp=malloc(j=fldp->Tot_len-j);tmemmove(tmp,chp,j);(chp=tmp)[j-1]='\0';
-+ tmp=malloc((j=fldp->Tot_len-j) + 1);tmemmove(tmp,chp,j);(chp=tmp)[j-1]='\0';
-+ chp[j]='\0';
- if(sest[i].head==From_)
- { char*pastad;
- if(strchr(saddr=chp,'\n')) /* multiple From_ lines */
-@@ -364,7 +365,7 @@ static PROGID;
-
- int main(lastm,argv)int lastm;const char*const argv[];
- { int i,split=0,force=0,bogus=1,every=0,headreply=0,digest=0,nowait=0,keepb=0,
-- minfields=(char*)progid-(char*)progid,conctenate=0,babyl=0,babylstart,
-+ minfields=(char*)progid-(char*)progid,conctenate=0,babyl=0,babylstart=0,
- berkeley=0,forgetclen;
- long maxlen,ctlength;FILE*idcache=0;pid_t thepid;
- size_t j,lnl,escaplen;char*chp,*namep,*escap=ESCAP;
-diff --git a/src/formisc.c b/src/formisc.c
-index c48df52..5c2869d 100644
---- a/src/formisc.c
-+++ b/src/formisc.c
-@@ -66,7 +66,7 @@ inc: start++;
- retz: *target='\0';
- ret: return start;
- }
-- if(*start=='\\')
-+ if(*start=='\\' && *(start + 1))
- *target++='\\',start++;
- hitspc=2;
- goto normal; /* normal word */
diff --git a/mail-filter/procmail/files/procmail-3.22-glibc-2.10.patch b/mail-filter/procmail/files/procmail-3.22-glibc-2.10.patch
deleted file mode 100644
index 2663bf501188..000000000000
--- a/mail-filter/procmail/files/procmail-3.22-glibc-2.10.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff -NrU5 procmail-3.22.orig/src/fields.c procmail-3.22/src/fields.c
---- procmail-3.22.orig/src/fields.c 2009-05-21 18:21:25.000000000 +0200
-+++ procmail-3.22/src/fields.c 2009-05-21 18:22:14.000000000 +0200
-@@ -108,20 +108,20 @@
- extractfield(p);
- }
- /* try and append one valid field to rdheader from stdin */
- int readhead P((void))
- { int idlen;
-- getline();
-+ procmail_getline();
- if((idlen=breakfield(buf,buffilled))<=0) /* not the start of a valid field */
- return 0;
- if(idlen==STRLEN(FROM)&&eqFrom_(buf)) /* it's a From_ line */
- { if(rdheader)
- return 0; /* the From_ line was a fake! */
-- for(;buflast=='>';getline()); /* gather continued >From_ lines */
-+ for(;buflast=='>';procmail_getline()); /* gather continued >From_ lines */
- }
- else
-- for(;;getline()) /* get the rest of the continued field */
-+ for(;;procmail_getline()) /* get the rest of the continued field */
- { switch(buflast) /* will this line be continued? */
- { case ' ':case '\t': /* yep, it sure is */
- continue;
- }
- break;
-diff -NrU5 procmail-3.22.orig/src/formail.c procmail-3.22/src/formail.c
---- procmail-3.22.orig/src/formail.c 2009-05-21 18:21:25.000000000 +0200
-+++ procmail-3.22/src/formail.c 2009-05-21 18:22:14.000000000 +0200
-@@ -817,11 +817,11 @@
- #ifdef MAILBOX_SEPARATOR
- if(!strncmp(emboxsep,buf,STRLEN(emboxsep))) /* end of mail? */
- { if(split) /* gobble up the next start separator */
- { buffilled=0;
- #ifdef sMAILBOX_SEPARATOR
-- getline();buffilled=0; /* but only if it's defined */
-+ procmail_getline();buffilled=0; /* but only if it's defined */
- #endif
- if(buflast!=EOF) /* if any */
- goto splitit;
- break;
- }
-diff -NrU5 procmail-3.22.orig/src/formisc.c procmail-3.22/src/formisc.c
---- procmail-3.22.orig/src/formisc.c 2009-05-21 18:21:25.000000000 +0200
-+++ procmail-3.22/src/formisc.c 2009-05-21 18:22:14.000000000 +0200
-@@ -113,11 +113,11 @@
- { if(buffilled==buflen)
- buf=realloc(buf,buflen+=Bsize);
- buf[buffilled++]=c;
- }
-
--int getline P((void)) /* read a newline-terminated line */
-+int procmail_getline P((void)) /* read a newline-terminated line */
- { if(buflast==EOF) /* at the end of our Latin already? */
- { loadchar('\n'); /* fake empty line */
- return EOF; /* spread the word */
- }
- loadchar(buflast); /* load leftover into the buffer */
-diff -NrU5 procmail-3.22.orig/src/formisc.h procmail-3.22/src/formisc.h
---- procmail-3.22.orig/src/formisc.h 2009-05-21 18:21:25.000000000 +0200
-+++ procmail-3.22/src/formisc.h 2009-05-21 18:22:14.000000000 +0200
-@@ -15,6 +15,6 @@
- closemine P((void)),
- opensink P((void));
- char*
- skipwords P((char*start));
- int
-- getline P((void));
-+ procmail_getline P((void));
diff --git a/mail-filter/procmail/files/procmail-prefix.patch b/mail-filter/procmail/files/procmail-3.24-gentoo-prefix.patch
index 6063b92db2b8..8426a53d8f59 100644
--- a/mail-filter/procmail/files/procmail-prefix.patch
+++ b/mail-filter/procmail/files/procmail-3.24-gentoo-prefix.patch
@@ -1,41 +1,7 @@
---- config.h~ 2007-10-03 17:55:24 +0200
-+++ config.h 2007-10-03 18:01:38 +0200
-@@ -116,11 +116,11 @@
- is not found, maildelivery will proceed as normal to the default
- system mailbox. This also must be an absolute path */
-
--#define ETCRC "/etc/procmailrc" /* optional global procmailrc startup
-+#define ETCRC "@GENTOO_PORTAGE_EPREFIX@/etc/procmailrc" /* optional global procmailrc startup
- file (will only be read if procmail
- is started with no rcfile on the command line). */
-
--#define ETCRCS "/etc/procmailrcs/" /* optional trusted path prefix for
-+#define ETCRCS "@GENTOO_PORTAGE_EPREFIX@/etc/procmailrcs/" /* optional trusted path prefix for
- rcfiles which will be executed with
- the uid of the owner of the rcfile (this only happens if procmail is
- called with the -m option, without variable assignments on the command
-@@ -168,7 +168,7 @@
- #define INEFFICIENTrealloc /* don't pussy-foot around */
- #endif
- #define MAXinMEM (1024*1024) /* when to switch to mmap() */
--#define MMAP_DIR "/var/spool/procmail/" /* where to put */
-+#define MMAP_DIR "@GENTOO_PORTAGE_EPREFIX@/var/spool/procmail/" /* where to put */
- #endif /* the files */
- #define MINlogbuf 81 /* fit an entire line */
- #define MAXlogbuf 1000 /* in case someone abuses LOG */
-@@ -220,8 +220,8 @@
- #define DEFcomsat offvalue /* when an rcfile has been specified */
- /* set to either "offvalue" or "empty" */
-
--#define BinSh "/bin/sh"
--#define ROOT_DIR "/"
-+#define BinSh "@GENTOO_PORTAGE_EPREFIX@/bin/sh"
-+#define ROOT_DIR "@GENTOO_PORTAGE_EPREFIX@"
- #define DEAD_LETTER "/tmp/dead.letter" /* $ORGMAIL if no passwd entry */
- #define DevNull "/dev/null"
- #define NICE_RANGE 39 /* maximal nice difference */
---- Makefile~ 2007-10-03 18:07:51 +0200
-+++ Makefile 2007-10-03 18:10:07 +0200
+diff --git a/Makefile b/Makefile
+index 0be77b1..42bb241 100644
+--- a/Makefile
++++ b/Makefile
@@ -2,7 +2,7 @@
# BASENAME should point to where the whole lot will be installed
@@ -45,7 +11,7 @@
# For display in the man pages
VISIBLE_BASENAME= $(BASENAME)
-@@ -79,7 +79,7 @@
+@@ -79,7 +79,7 @@ SEARCHLIBS = -lm -ldir -lx -lsocket -lnet -linet -lnsl_s -lnsl_i -lnsl -lsun \
# -lresolv # not really needed, is it?
# Informal list of directories where we look for the libraries in SEARCHLIBS
@@ -54,7 +20,7 @@
GCC_WARNINGS = -O2 -pedantic -Wreturn-type -Wunused -Wformat -Wtraditional \
-Wpointer-arith -Wconversion -Waggregate-return \
-@@ -97,10 +97,10 @@
+@@ -97,10 +97,10 @@ LDFLAGS1= $(LDFLAGS0) $(LIBS) #-lcposix
####CC = cc # gcc
# object file extension
O = o
@@ -67,38 +33,80 @@
INSTALL = cp
DEVNULL = /dev/null
STRIP = strip
-@@ -112,7 +112,7 @@
+@@ -112,7 +112,7 @@ MANS1S = procmail formail lockfile mailstat
MANS5S = procmailrc procmailsc procmailex
# Possible locations for the sendmail.cf file
-SENDMAILCFS = /etc/mail/sendmail.cf /etc/sendmail.cf /usr/lib/sendmail.cf
+SENDMAILCFS = @GENTOO_PORTAGE_EPREFIX@/etc/mail/sendmail.cf @GENTOO_PORTAGE_EPREFIX@/etc/sendmail.cf @GENTOO_PORTAGE_EPREFIX@/usr/lib/sendmail.cf
- # Makefile.1 - mark, don't (re)move this, a sed script needs it
+ # Makefile - mark, don't (re)move this, a sed script needs it
---- src/autoconf~ 2001-09-11 06:55:46 +0200
-+++ src/autoconf 2007-10-03 19:17:51 +0200
+diff --git a/config.h b/config.h
+index 4f6b57e..ef69e0b 100644
+--- a/config.h
++++ b/config.h
+@@ -116,11 +116,11 @@
+ is not found, maildelivery will proceed as normal to the default
+ system mailbox. This also must be an absolute path */
+
+-#define ETCRC "/etc/procmailrc" /* optional global procmailrc startup
++#define ETCRC "@GENTOO_PORTAGE_EPREFIX@/etc/procmailrc" /* optional global procmailrc startup
+ file (will only be read if procmail
+ is started with no rcfile on the command line). */
+
+-#define ETCRCS "/etc/procmailrcs/" /* optional trusted path prefix for
++#define ETCRCS "@GENTOO_PORTAGE_EPREFIX@/etc/procmailrcs/" /* optional trusted path prefix for
+ rcfiles which will be executed with
+ the uid of the owner of the rcfile (this only happens if procmail is
+ called with the -m option, without variable assignments on the command
+@@ -175,7 +175,7 @@
+ #define INEFFICIENTrealloc /* don't pussy-foot around */
+ #endif
+ #define MAXinMEM (1024*1024) /* when to switch to mmap() */
+-#define MMAP_DIR "/var/spool/procmail/" /* where to put */
++#define MMAP_DIR "@GENTOO_PORTAGE_EPREFIX@/var/spool/procmail/" /* where to put */
+ #endif /* the files */
+ #define MINlogbuf 81 /* fit an entire line */
+ #define MAXlogbuf 1000 /* in case someone abuses LOG */
+@@ -227,8 +227,8 @@ MMGR)\
+ #define DEFcomsat offvalue /* when an rcfile has been specified */
+ /* set to either "offvalue" or "empty" */
+
+-#define BinSh "/bin/sh"
+-#define ROOT_DIR "/"
++#define BinSh "@GENTOO_PORTAGE_EPREFIX@/bin/sh"
++#define ROOT_DIR "@GENTOO_PORTAGE_EPREFIX@"
+ #define DEAD_LETTER "/tmp/dead.letter" /* $ORGMAIL if no passwd entry */
+ #define DevNull "/dev/null"
+ #define NICE_RANGE 39 /* maximal nice difference */
+diff --git a/src/autoconf b/src/autoconf
+index 7c46487..094e4f0 100755
+--- a/src/autoconf
++++ b/src/autoconf
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! @GENTOO_PORTAGE_EPREFIX@/bin/sh
:
# Copyright (c) 1990-1997, S.R. van den Berg, The Netherlands
- # $Id$
-@@ -1416,20 +1416,10 @@
+ #$Id$
+@@ -1416,22 +1416,12 @@ _autotst >>$ACONF
found=no
-for a in /var/spool/mail /usr/spool/mail /var/mail /usr/mail /spool/mail
-do
-- test -d $a -a $found != yes &&
-- echo '#define MAILSPOOLDIR "'$a'/"' >>$ACONF && found=yes
+- test -d $a -a $found = no && found=$a
-done
--if test $found != yes
+-if test $found = no
-then
-- echo '#define MAILSPOOLDIR "/var/spool/mail/"' >>$ACONF
+- found=/var/spool/mail
- echo Could not find the system-mailbox directory, supplied default.
-fi
+ echo '#ifndef MAILSPOOLDIR' >>$ACONF
+-echo '#define MAILSPOOLDIR "'$found'/"' >>$ACONF
+echo '#define MAILSPOOLDIR "@GENTOO_PORTAGE_EPREFIX@/var/spool/mail/"' >>$ACONF
+ echo '#endif' >>$ACONF
cat >lookfor <<HERE
-for a in /usr/sbin /usr/lib /lib /usr/etc /etc /usr/bin /bin /usr/local/bin \
@@ -107,7 +115,7 @@
do
if test -f "\$a/\$1"
then
-@@ -1458,7 +1448,7 @@
+@@ -1460,7 +1450,7 @@ fi
grep '^#define SENDMAIL ".*/sendmail"' $ACONF >$DEVNULL ||
echo "#define DEFflagsendmail \"\"" >>$ACONF
@@ -116,7 +124,7 @@
$RM -r $a
OLDTESTDIRS="$a $OLDTESTDIRS"
mkdir $a
-@@ -1466,19 +1456,18 @@
+@@ -1468,19 +1458,18 @@ mkdir $a/__
_autotst $a/__ $a/__/__ 4 >>$ACONF
@@ -130,19 +138,21 @@
grep '^V' >$DEVNULL ||
echo '#define buggy_SENDMAIL' >>$ACONF
--lpath='/bin'
+-lpath='/usr/local/bin:/bin'
-bins="/bin"
+lpath='@GENTOO_PORTAGE_EPREFIX@/bin'
+bins='@GENTOO_PORTAGE_EPREFIX@/bin'
--for newd in /usr/bin /usr/ucb /usr/5bin $BINDIR /local/bin /usr/local/bin \
+-for newd in /usr/bin /usr/ucb /usr/5bin $BINDIR /local/bin \
- /global/bin /usr/bin/X11 /usr/X*/bin
+for newd in @GENTOO_PORTAGE_EPREFIX@/usr/bin
do
if test -d $newd
then
---- src/recommend.c~ 2007-10-03 19:10:01 +0200
-+++ src/recommend.c 2007-10-03 19:11:04 +0200
+diff --git a/src/recommend.c b/src/recommend.c
+index 980098f..f4b7095 100644
+--- a/src/recommend.c
++++ b/src/recommend.c
@@ -9,8 +9,7 @@
char mailspooldir[]=MAILSPOOLDIR;
@@ -153,3 +163,6 @@
int main(argc,argv)const int argc;const char*const argv[];
{ struct group*grp;struct stat stbuf;gid_t gid=(gid_t)-1;
+--
+2.42.0
+
diff --git a/mail-filter/procmail/files/procmail-lazy-bindings.diff b/mail-filter/procmail/files/procmail-3.24-lazy-bindings.patch
index f1c4221650e6..850b29e59777 100644
--- a/mail-filter/procmail/files/procmail-lazy-bindings.diff
+++ b/mail-filter/procmail/files/procmail-3.24-lazy-bindings.patch
@@ -1,6 +1,8 @@
---- src/Makefile.0.old 2005-05-23 10:34:25.000000000 +0200
-+++ src/Makefile.0 2005-05-23 10:34:52.000000000 +0200
-@@ -18,11 +18,11 @@
+diff --git a/src/Makefile.0 b/src/Makefile.0
+index 35b6180..4fcba2c 100644
+--- a/src/Makefile.0
++++ b/src/Makefile.0
+@@ -18,11 +18,11 @@ make: # fake target
.PRECIOUS: Makefile
procmail: procmail.$(O) $(PM_OBJ) setid
diff --git a/mail-filter/procmail/files/procmail-3.24-maildir.patch b/mail-filter/procmail/files/procmail-3.24-maildir.patch
new file mode 100644
index 000000000000..b71661134438
--- /dev/null
+++ b/mail-filter/procmail/files/procmail-3.24-maildir.patch
@@ -0,0 +1,16 @@
+diff --git a/src/authenticate.c b/src/authenticate.c
+index 1f6cd6f..d92b6de 100644
+--- a/src/authenticate.c
++++ b/src/authenticate.c
+@@ -39,7 +39,7 @@ static /*const*/char rcsid[]=
+ #include "authenticate.h"
+
+ #ifndef MAILSPOOLDIR
+-#define MAILSPOOLDIR "/var/mail/" /* watch the trailing / */
++#define MAILSPOOLDIR "" /* watch the trailing / */
+ #endif
+ #ifndef MAILSPOOLSUFFIX
+ #define MAILSPOOLSUFFIX "" /* suffix to force maildir or MH style */
+--
+2.42.0
+
diff --git a/mail-filter/procmail/files/procmail-comsat-segfault.diff b/mail-filter/procmail/files/procmail-comsat-segfault.diff
deleted file mode 100644
index e96bb5d94a38..000000000000
--- a/mail-filter/procmail/files/procmail-comsat-segfault.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/comsat.c.old 2005-08-17 19:17:20.000000000 +0200
-+++ src/comsat.c 2005-08-17 19:18:19.000000000 +0200
-@@ -92,7 +92,7 @@
- }
- if(newvalid) /* so far, so good */
- { int s;
-- if(!*chp) /* no service */
-+ if(!chad||!*chp) /* no service */
- chp=BIFF_serviceport; /* new balls please! */
- s=strtol(chp,&chad,10);
- if(chp!=chad) /* the service is not numeric */
-@@ -120,7 +120,7 @@
- { int s;const char*p;
- if(!csvalid||!buf) /* is comat on and set to a valid address? */
- return;
-- if(!*cslgname||strlen(cslgname)+2>linebuf) /* is $LOGNAME bogus? */
-+ if(!cslgname||!*cslgname||strlen(cslgname)+2>linebuf) /* is $LOGNAME bogus? */
- return;
- if(!(p=folder?folder:cslastf)) /* do we have a folder? */
- return;
diff --git a/mail-filter/procmail/files/procmail-maxprocs-fix.diff b/mail-filter/procmail/files/procmail-maxprocs-fix.diff
deleted file mode 100644
index c78b000a8b92..000000000000
--- a/mail-filter/procmail/files/procmail-maxprocs-fix.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/formisc.c.orig 2006-01-22 00:35:30.000000000 -0800
-+++ src/formisc.c 2006-01-22 00:35:55.000000000 -0800
-@@ -183,7 +183,7 @@
- retval=excode;
- } /* reap some children */
- while(childlimit&&children>=childlimit||(child=fork())==-1&&children)
-- for(--children;(excode=waitfor((pid_t)0))!=NO_PROCESS;)
-+ for(;(excode=waitfor((pid_t)0))!=NO_PROCESS;)
- { if(excode!=EXIT_SUCCESS)
- retval=excode;
- if(--children<=maxchild)
diff --git a/mail-filter/procmail/files/procmail-pipealloc.diff b/mail-filter/procmail/files/procmail-pipealloc.diff
deleted file mode 100644
index fdd5cc97328a..000000000000
--- a/mail-filter/procmail/files/procmail-pipealloc.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -rc procmail-3.22/src/pipes.c procmail-3.22-fixed/src/pipes.c
-*** procmail-3.22/src/pipes.c Tue Sep 11 00:58:44 2001
---- procmail-3.22-fixed/src/pipes.c Wed Nov 21 23:53:39 2007
-***************
-*** 194,200 ****
- makeblock(&temp,Stdfilled);
- tmemmove(temp.p,Stdout,Stdfilled);
- readdyn(&temp,&Stdfilled,Stdfilled+backlen+1);
-! Stdout=realloc(Stdout,&Stdfilled+1);
- tmemmove(Stdout,temp.p,Stdfilled+1);
- freeblock(&temp);
- retStdout(Stdout,pwait&&pipw,!backblock);
---- 194,200 ----
- makeblock(&temp,Stdfilled);
- tmemmove(temp.p,Stdout,Stdfilled);
- readdyn(&temp,&Stdfilled,Stdfilled+backlen+1);
-! Stdout=realloc(Stdout,Stdfilled+1);
- tmemmove(Stdout,temp.p,Stdfilled+1);
- freeblock(&temp);
- retStdout(Stdout,pwait&&pipw,!backblock);
-
diff --git a/mail-filter/procmail/metadata.xml b/mail-filter/procmail/metadata.xml
index bbd34d5b7591..e5c4248bc00f 100644
--- a/mail-filter/procmail/metadata.xml
+++ b/mail-filter/procmail/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zlogene@gentoo.org</email>
- <name>Mikle Kolyada</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/mail-filter/procmail/procmail-3.22-r15.ebuild b/mail-filter/procmail/procmail-3.24.ebuild
index c02cde9cd8c1..206a81db60fb 100644
--- a/mail-filter/procmail/procmail-3.22-r15.ebuild
+++ b/mail-filter/procmail/procmail-3.24.ebuild
@@ -1,22 +1,27 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit flag-o-matic toolchain-funcs prefix
DESCRIPTION="Mail delivery agent/filter"
-HOMEPAGE="http://www.procmail.org/"
-SRC_URI="http://www.procmail.org/${P}.tar.gz"
+HOMEPAGE="https://www.procmail.org/"
+SRC_URI="https://github.com/BuGlessRB/procmail/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="|| ( Artistic GPL-2 )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="mbox selinux"
-DEPEND="acct-group/mail
- virtual/mta"
-RDEPEND="selinux? ( sec-policy/selinux-procmail )"
+DEPEND="
+ acct-group/mail
+ virtual/mta
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-procmail )
+"
src_prepare() {
# disable flock, using both fcntl and flock style locking
@@ -29,7 +34,7 @@ src_prepare() {
echo "# Use maildir-style mailbox in user's home directory" > "${S}"/procmailrc || die
echo 'DEFAULT=$HOME/.maildir/' >> "${S}"/procmailrc || die
cd "${S}" || die
- eapply "${FILESDIR}/gentoo-maildir3.diff"
+ eapply "${FILESDIR}/${P}-maildir.patch"
else
echo '# Use mbox-style mailbox in /var/spool/mail' > "${S}"/procmailrc || die
echo 'DEFAULT=${EPREFIX}/var/spool/mail/$LOGNAME' >> "${S}"/procmailrc || die
@@ -37,35 +42,22 @@ src_prepare() {
# Do not use lazy bindings on lockfile and procmail
if [[ ${CHOST} != *-darwin* ]]; then
- eapply -p0 "${FILESDIR}/${PN}-lazy-bindings.diff"
+ eapply "${FILESDIR}/${P}-lazy-bindings.patch"
fi
- # Fix for bug #102340
- eapply -p0 "${FILESDIR}/${PN}-comsat-segfault.diff"
-
- # Fix for bug #119890
- eapply -p0 "${FILESDIR}/${PN}-maxprocs-fix.diff"
-
# Prefixify config.h
- eapply -p0 "${FILESDIR}"/${PN}-prefix.patch
+ eapply "${FILESDIR}/${P}-gentoo-prefix.patch"
eprefixify config.h Makefile src/autoconf src/recommend.c
- # Fix for bug #200006
- eapply "${FILESDIR}/${PN}-pipealloc.diff"
-
- # Fix for bug #270551
- eapply "${FILESDIR}/${PN}-3.22-glibc-2.10.patch"
-
- # Fix security bugs #522114 and #638108
- eapply "${FILESDIR}/${PN}-3.22-CVE-2014-3618.patch"
- eapply "${FILESDIR}/${PN}-3.22-CVE-2017-16844.patch"
-
- eapply "${FILESDIR}/${PN}-3.22-crash-fix.patch"
-
- eapply_user
+ default
}
src_compile() {
+ # bug #875251, bug #896052
+ append-flags -std=gnu89
+ # bug #859517
+ filter-lto
+
# -finline-functions (implied by -O3) leaves strstr() in an infinite loop.
# To work around this, we append -fno-inline-functions to CFLAGS
# Since GCC 4.7 we also need -fno-ipa-cp-clone (bug #466552)
diff --git a/mail-filter/pyzor/Manifest b/mail-filter/pyzor/Manifest
index 23730c858e15..23148d125558 100644
--- a/mail-filter/pyzor/Manifest
+++ b/mail-filter/pyzor/Manifest
@@ -1 +1 @@
-DIST pyzor-1.0.0_p20200523.tar.gz 138077 BLAKE2B 13ad30f06ce32a24a42dd5aaa21ad2a6700df1bac3dc54a86532748688b094ee0f56a8e28e34336298388c6e0b95868e95d040866c9afa561d867069496608fe SHA512 afe3b14794aea68b1a7d72840257976c7c9f755a6f6dcaaf6ebacab465c176fe2aa84f3fe176006cdbe26ef0b07ed949f75f6ef729f65c604fadf6ce8472da8f
+DIST pyzor-1.0.0_p20211223.tar.gz 138500 BLAKE2B 242a7b2df3451f659d820771454e685868792bd2275b6d69d4c4adfd6044c781abe2d72fe1500a6074851faf8e88e95d6578c546d4d95fda03e11609d1a0b436 SHA512 218bea40515a21b1e08b2bad5b7ba339ba84fff2da425dc58df72a967730ebe10e319944e1604ff56bb37f6a8ae7bc0cd974b54b18a4878ba103131b8ea47b67
diff --git a/mail-filter/pyzor/metadata.xml b/mail-filter/pyzor/metadata.xml
index c8b645011f06..77c2f9becde8 100644
--- a/mail-filter/pyzor/metadata.xml
+++ b/mail-filter/pyzor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
@@ -16,10 +16,7 @@
</flag>
<flag name="redis">
Enables the redis back-end database engine for pyzord through
- <pkg>dev-python/redis-py</pkg>
- </flag>
- <flag name="gevent">
- Use <pkg>dev-python/gevent</pkg> to enable asynchronous operation
+ <pkg>dev-python/redis</pkg>
</flag>
</use>
<upstream>
diff --git a/mail-filter/pyzor/pyzor-1.0.0_p20200523.ebuild b/mail-filter/pyzor/pyzor-1.0.0_p20200523.ebuild
deleted file mode 100644
index 237407e0fd9b..000000000000
--- a/mail-filter/pyzor/pyzor-1.0.0_p20200523.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-COMMIT="f46159bd6519cebcebf59e9334a7920371111d75"
-
-DESCRIPTION="A distributed, collaborative spam detection and filtering network"
-HOMEPAGE="https://github.com/SpamExperts/pyzor"
-SRC_URI="https://github.com/SpamExperts/pyzor/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
-
-IUSE="doc gdbm gevent mysql pyzord redis test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- pyzord? (
- gdbm? ( $(python_gen_impl_dep 'gdbm') )
- gevent? ( dev-python/gevent[${PYTHON_USEDEP}] )
- mysql? ( dev-python/mysqlclient[${PYTHON_USEDEP}] )
- redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
- )"
-DEPEND="
- test? (
- gdbm? ( $(python_gen_impl_dep 'gdbm') )
- redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
- )
-"
-BDEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-
-# TODO: maybe upstream would support skipping tests for which the
-# dependencies are missing?
-REQUIRED_USE="
- pyzord? ( || ( gdbm redis ) )
- test? ( gdbm redis )
-"
-
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-distutils_enable_sphinx "docs"
-
-python_test() {
- pytest -vv tests/unit || die "Tests fail with ${EPYTHON}"
-}
-
-src_install() {
- distutils-r1_src_install
-
- if use pyzord; then
- dodir /usr/sbin
- mv "${ED}"/usr/bin/pyzord* "${ED}/usr/sbin" \
- || die "failed to relocate pyzord"
- else
- rm "${ED}"/usr/bin/pyzord* || die "failed to remove pyzord"
- fi
-}
diff --git a/mail-filter/pyzor/pyzor-1.0.0_p20211223.ebuild b/mail-filter/pyzor/pyzor-1.0.0_p20211223.ebuild
new file mode 100644
index 000000000000..15fdf34856fb
--- /dev/null
+++ b/mail-filter/pyzor/pyzor-1.0.0_p20211223.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+MY_COMMIT="2dbe627c1ec245db206cdc73bf1f9d785f1512d8"
+DESCRIPTION="A distributed, collaborative spam detection and filtering network"
+HOMEPAGE="https://github.com/SpamExperts/pyzor"
+SRC_URI="https://github.com/SpamExperts/pyzor/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="doc gdbm mysql pyzord redis selinux test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ pyzord? (
+ gdbm? ( $(python_gen_impl_dep 'gdbm') )
+ mysql? ( dev-python/mysqlclient[${PYTHON_USEDEP}] )
+ redis? ( dev-python/redis[${PYTHON_USEDEP}] )
+ )
+ selinux? ( sec-policy/selinux-pyzor )
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep 'gdbm')
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+ )
+"
+
+REQUIRED_USE="
+ pyzord? ( || ( gdbm redis ) )
+"
+
+distutils_enable_sphinx docs
+
+python_test() {
+ epytest -vv tests/unit
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ if use pyzord; then
+ dodir /usr/sbin
+ mv "${ED}"/usr/bin/pyzord* "${ED}/usr/sbin" \
+ || die "failed to relocate pyzord"
+ else
+ rm "${ED}"/usr/bin/pyzord* || die "failed to remove pyzord"
+ fi
+}
diff --git a/mail-filter/razor/metadata.xml b/mail-filter/razor/metadata.xml
index a6561e30cdf8..de8340290683 100644
--- a/mail-filter/razor/metadata.xml
+++ b/mail-filter/razor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<!-- future maintainer: please uncomment the following contact:
diff --git a/mail-filter/razor/razor-2.85-r3.ebuild b/mail-filter/razor/razor-2.85-r4.ebuild
index d32ddaffbd55..83a19b2739c6 100644
--- a/mail-filter/razor/razor-2.85-r3.ebuild
+++ b/mail-filter/razor/razor-2.85-r4.ebuild
@@ -1,7 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
+
+DIST_TEST="do parallel"
inherit perl-module readme.gentoo-r1
MY_PN="razor-agents"
@@ -10,10 +12,12 @@ MY_P="${MY_PN}-${PV}"
DESCRIPTION="Distributed, collaborative spam detection and filtering network"
HOMEPAGE="http://razor.sourceforge.net/"
SRC_URI="mirror://sourceforge/razor/${MY_P}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
LICENSE="Artistic"
SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="selinux"
RDEPEND="
dev-perl/URI
@@ -22,8 +26,8 @@ RDEPEND="
virtual/perl-Time-HiRes
dev-perl/Digest-Nilsimsa
|| ( virtual/perl-Digest-SHA dev-perl/Digest-SHA1 )
+ selinux? ( sec-policy/selinux-razor )
"
-DEPEND=""
PATCHES=(
"${FILESDIR}/${PN}-2.85-use-sha-not-sha1.patch"
@@ -31,10 +35,6 @@ PATCHES=(
"${FILESDIR}/${PN}-2.85-makefile-quoting-fix.patch"
)
-S="${WORKDIR}/${MY_P}"
-
-SRC_TEST="do parallel"
-
DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="
Run 'razor-admin -create' to create a default config file in your
diff --git a/mail-filter/rblcheck/metadata.xml b/mail-filter/rblcheck/metadata.xml
index b439de517a11..90c7e8d0913c 100644
--- a/mail-filter/rblcheck/metadata.xml
+++ b/mail-filter/rblcheck/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/rspamd/Manifest b/mail-filter/rspamd/Manifest
index df4f86e665d9..f5a68e3e11cc 100644
--- a/mail-filter/rspamd/Manifest
+++ b/mail-filter/rspamd/Manifest
@@ -1,2 +1,2 @@
-DIST rspamd-2.6.tar.gz 5079444 BLAKE2B acb9d9471d0bb457da33b4d23e3c75ef87ea26a47e6c731bfd5fbbfe28567244e2bc72fd25ca3408db0928dab4e4ab66596e38cf3eff7cb9690eec59d3b62372 SHA512 79e4c1aa763aef753c8d7b2a941ed92b384e96c25e6d1b3bd1321c5acc0ecb934d033a3bf19cb94c89809fd92edec25192cffe97de9e5251681e1a71216b734a
-DIST rspamd-2.7.tar.gz 5126227 BLAKE2B 70f57dba6ac9abe93d735d42e84bd17a1797035322029577a8e4376409bcee5345d4624925d3dd071bddce038858ebfdce8ee4f87f81b1fc8b1f71ad14e85930 SHA512 8779771baf85ef6ca1d7d2180429072ab1547ab834b073ee9222dcc6494efdd0a23f5e7ac52a777c23fd89296769f5b6f182593e714097c6f11ca7c9165e4ba7
+DIST rspamd-3.8.1.tar.gz 5910993 BLAKE2B c3c29cb380fa09a33173bb6f51ff76eaf88cf459eda0c6f19f890148eb97703a8f43f34443a6d4b28cb1cbcf2c6f47321203556d265a0b2f0b0050b5575c5851 SHA512 b87c1cba11faca278db85426ed527832c34d1beff56e0993543a05fcc2d5d72675cf31bbc4241f52da9122787d24f8b955218988a198a3c29dee5db3be2c7e99
+DIST rspamd-3.8.4.tar.gz 5915680 BLAKE2B a6674c5175a10dffa440b9f4227fc4f2e7c497bf8a5a6c87c9f042ca870380a61be63405f4d2714103f49679edd5a28c4eb30807b8acb22998c7dbba72f19cb3 SHA512 dda099dd9a17699d143fc8018b89fbecfa9659eccc26b5fb88bc3f40c47e935993dfc81f1f93bb69880d17af40870e6ea20edbeed7e3f4c12c278f5c12b56a51
diff --git a/mail-filter/rspamd/files/rspamd-2.5-unbundle-snowball.patch b/mail-filter/rspamd/files/rspamd-2.5-unbundle-snowball.patch
deleted file mode 100644
index 10b56fa977ad..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.5-unbundle-snowball.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ad989f7f2..d08496998 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -108,7 +108,6 @@ INCLUDE_DIRECTORIES("${CMAKE_SOURCE_DIR}/"
- "${CMAKE_SOURCE_DIR}/contrib/libottery"
- "${CMAKE_SOURCE_DIR}/contrib/xxhash"
- "${CMAKE_SOURCE_DIR}/contrib/cdb"
-- "${CMAKE_SOURCE_DIR}/contrib/snowball/include"
- "${CMAKE_SOURCE_DIR}/contrib/librdns"
- "${CMAKE_SOURCE_DIR}/contrib/aho-corasick"
- "${CMAKE_SOURCE_DIR}/contrib/lc-btrie"
-@@ -586,7 +585,6 @@ ADD_SUBDIRECTORY(contrib/fpconv)
- ADD_SUBDIRECTORY(contrib/lc-btrie)
- ADD_SUBDIRECTORY(contrib/libottery)
- IF(ENABLE_SNOWBALL MATCHES "ON")
-- ADD_SUBDIRECTORY(contrib/snowball)
- SET(WITH_SNOWBALL 1)
- ENDIF()
- ADD_SUBDIRECTORY(contrib/libucl)
---
-2.24.1
-
diff --git a/mail-filter/rspamd/files/rspamd-2.6-cmake-lua-version.patch b/mail-filter/rspamd/files/rspamd-2.6-cmake-lua-version.patch
deleted file mode 100644
index 141b13dfa8af..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.6-cmake-lua-version.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -139,40 +139,8 @@
- ELSE(ENABLE_LUAJIT MATCHES "ON")
-
- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.3"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.3"
-- "include/lua5.3"
-- "include/lua53"
-- "include/lua"
- ROOT ${LUA_ROOT}
-- MODULES lua53
-- OPTIONAL)
--
-- IF (NOT WITH_LIBLUA)
-- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.2"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.2"
-- "include/lua5.2"
-- "include/lua52"
-- "include/lua"
-- ROOT ${LUA_ROOT}
-- MODULES lua52
-- OPTIONAL)
--
-- IF (NOT WITH_LIBLUA)
-- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.1"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.1"
-- "include/lua5.1"
-- "include/lua51"
-- "include/lua"
-- ROOT ${LUA_ROOT}
-- MODULES lua51)
-- ENDIF()
-- ENDIF()
-+ MODULES lua)
- ENDIF(ENABLE_LUAJIT MATCHES "ON")
-
- IF(ENABLE_JEMALLOC MATCHES "ON" AND NOT SANITIZE)
diff --git a/mail-filter/rspamd/files/rspamd-2.6-unbundle-lua.patch b/mail-filter/rspamd/files/rspamd-2.6-unbundle-lua.patch
deleted file mode 100644
index 9278fa8608d7..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.6-unbundle-lua.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index b794b9dbd..1ba5c085e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -632,10 +632,6 @@ ADD_SUBDIRECTORY(contrib/fastutf8)
- ADD_SUBDIRECTORY(contrib/google-ced)
-
-
--IF (NOT WITH_LUAJIT)
-- ADD_SUBDIRECTORY(contrib/lua-bit)
--ENDIF()
--
- IF (ENABLE_LUA_REPL MATCHES "ON")
- ADD_SUBDIRECTORY(contrib/replxx)
- SET(WITH_LUA_REPL 1)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 9a34d2ac4..59bab5c15 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -189,10 +189,6 @@ IF (ENABLE_CLANG_PLUGIN MATCHES "ON")
- ADD_DEPENDENCIES(rspamd-server rspamd-clang)
- ENDIF()
-
--IF (NOT WITH_LUAJIT)
-- TARGET_LINK_LIBRARIES(rspamd-server rspamd-bit)
--ENDIF()
--
- IF (ENABLE_SNOWBALL MATCHES "ON")
- TARGET_LINK_LIBRARIES(rspamd-server stemmer)
- ENDIF()
-diff --git a/src/lua/lua_common.c b/src/lua/lua_common.c
-index b7fcc2034..1d86464da 100644
---- a/src/lua/lua_common.c
-+++ b/src/lua/lua_common.c
-@@ -922,10 +922,6 @@ rspamd_lua_wipe_realloc (void *ud,
- return NULL;
- }
-
--#ifndef WITH_LUAJIT
--extern int luaopen_bit(lua_State *L);
--#endif
--
- lua_State *
- rspamd_lua_init (bool wipe_mem)
- {
-@@ -981,7 +977,6 @@ rspamd_lua_init (bool wipe_mem)
- luaopen_spf (L);
- luaopen_tensor (L);
- #ifndef WITH_LUAJIT
-- rspamd_lua_add_preload (L, "bit", luaopen_bit);
- lua_settop (L, 0);
- #endif
-
diff --git a/mail-filter/rspamd/files/rspamd-2.6-unbundle-zstd.patch b/mail-filter/rspamd/files/rspamd-2.6-unbundle-zstd.patch
deleted file mode 100644
index 1a7f4453c86f..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.6-unbundle-zstd.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 90caf4048..e2e5d182c 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -198,6 +198,8 @@ ELSE()
- ROOT ${PCRE_ROOT_DIR} MODULES pcre libpcre pcre3 libpcre3)
- ENDIF()
-
-+ProcessPackage(ZSTD LIBRARY zstd INCLUDE zstd.h
-+ ROOT ${ZSTD_ROOT_DIR} MODULES libzstd)
- ProcessPackage(SQLITE3 LIBRARY sqlite3 INCLUDE sqlite3.h INCLUDE_SUFFIXES include/sqlite3 include/sqlite
- ROOT ${SQLITE3_ROOT_DIR} MODULES sqlite3 sqlite)
- ProcessPackage(ICUDATA LIBRARY icudata INCLUDE unicode/ucnv.h
-@@ -615,7 +617,6 @@ ADD_SUBDIRECTORY(contrib/http-parser)
- ADD_SUBDIRECTORY(contrib/fpconv)
- ADD_SUBDIRECTORY(contrib/lc-btrie)
- ADD_SUBDIRECTORY(contrib/libottery)
--ADD_SUBDIRECTORY(contrib/zstd)
- IF(ENABLE_SNOWBALL MATCHES "ON")
- ADD_SUBDIRECTORY(contrib/snowball)
- SET(WITH_SNOWBALL 1)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 54b2e4083..e0e2edd58 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -181,7 +181,6 @@ TARGET_LINK_LIBRARIES(rspamd-server rspamd-http-parser)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-fpconv)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-cdb)
- TARGET_LINK_LIBRARIES(rspamd-server lcbtrie)
--TARGET_LINK_LIBRARIES(rspamd-server rspamd-zstd)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-fastutf8)
-
- IF (ENABLE_CLANG_PLUGIN MATCHES "ON")
-diff --git a/src/client/rspamdclient.c b/src/client/rspamdclient.c
-index bcb25672e..48ca58e94 100644
---- a/src/client/rspamdclient.c
-+++ b/src/client/rspamdclient.c
-@@ -19,7 +19,7 @@
- #include "libserver/http/http_private.h"
- #include "libserver/protocol_internal.h"
- #include "unix-std.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #ifdef HAVE_FETCH_H
- #include <fetch.h>
-diff --git a/src/libserver/cfg_utils.c b/src/libserver/cfg_utils.c
-index 78e3fc79f..40110c693 100644
---- a/src/libserver/cfg_utils.c
-+++ b/src/libserver/cfg_utils.c
-@@ -36,8 +36,7 @@
- #include "contrib/libottery/ottery.h"
- #include "contrib/fastutf8/fastutf8.h"
-
--#define ZSTD_STATIC_LINKING_ONLY
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #ifdef HAVE_OPENSSL
- #include <openssl/rand.h>
-diff --git a/src/libserver/maps/map.c b/src/libserver/maps/map.c
-index 8b9f522b2..8cf03ffd6 100644
---- a/src/libserver/maps/map.c
-+++ b/src/libserver/maps/map.c
-@@ -23,7 +23,7 @@
- #include "libserver/http/http_connection.h"
- #include "libserver/http/http_private.h"
- #include "rspamd.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "contrib/libev/ev.h"
- #include "contrib/uthash/utlist.h"
-
-diff --git a/src/libserver/protocol.c b/src/libserver/protocol.c
-index 9d1276064..6f0a66fb8 100644
---- a/src/libserver/protocol.c
-+++ b/src/libserver/protocol.c
-@@ -21,7 +21,7 @@
- #include "worker_private.h"
- #include "libserver/cfg_file_private.h"
- #include "libmime/scan_result_private.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "lua/lua_common.h"
- #include "unix-std.h"
- #include "protocol_internal.h"
-diff --git a/src/libserver/task.c b/src/libserver/task.c
-index 53da0dae6..6538abdbf 100644
---- a/src/libserver/task.c
-+++ b/src/libserver/task.c
-@@ -25,7 +25,7 @@
- #include "stat_api.h"
- #include "unix-std.h"
- #include "utlist.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "libserver/mempool_vars_internal.h"
- #include "libserver/cfg_file_private.h"
- #include "libmime/lang_detection.h"
-diff --git a/src/lua/lua_util.c b/src/lua/lua_util.c
-index 0787736d5..21474317a 100644
---- a/src/lua/lua_util.c
-+++ b/src/lua/lua_util.c
-@@ -17,7 +17,7 @@
- #include "html.h"
- #include "tokenizers/tokenizers.h"
- #include "unix-std.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "contrib/uthash/utlist.h"
- #include "libmime/email_addr.h"
- #include "libmime/content_type.h"
-diff --git a/src/rspamd_proxy.c b/src/rspamd_proxy.c
-index 4ed8cfab7..5f8808e40 100644
---- a/src/rspamd_proxy.c
-+++ b/src/rspamd_proxy.c
-@@ -36,7 +36,7 @@
- #include "libserver/milter.h"
- #include "libserver/milter_internal.h"
- #include "libmime/lang_detection.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #include <math.h>
-
---
-2.26.2
-
diff --git a/mail-filter/rspamd/files/rspamd-2.7-cmake-lua-version.patch b/mail-filter/rspamd/files/rspamd-2.7-cmake-lua-version.patch
deleted file mode 100644
index c8254f1ce95e..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.7-cmake-lua-version.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 72382acb6..2335ae4bc 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -141,42 +141,8 @@ IF(ENABLE_LUAJIT MATCHES "ON")
- ELSE(ENABLE_LUAJIT MATCHES "ON")
-
- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.3"
-- LIB_SUFFIXES "lua5.3"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.3"
-- "include/lua5.3"
-- "include/lua53"
-- "include/lua"
- ROOT ${LUA_ROOT}
-- MODULES lua53
-- OPTIONAL)
--
-- IF (NOT WITH_LIBLUA)
-- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.2"
-- LIB_SUFFIXES "lua5.2"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.2"
-- "include/lua5.2"
-- "include/lua52"
-- "include/lua"
-- ROOT ${LUA_ROOT}
-- MODULES lua52
-- OPTIONAL)
--
-- IF (NOT WITH_LIBLUA)
-- ProcessPackage(LIBLUA LIBRARY "lua"
-- "lua-5.1"
-- INCLUDE lua.h INCLUDE_SUFFIXES
-- "include/lua-5.1"
-- "include/lua5.1"
-- "include/lua51"
-- "include/lua"
-- ROOT ${LUA_ROOT}
-- MODULES lua51)
-- ENDIF()
-- ENDIF()
-+ MODULES lua)
- ENDIF(ENABLE_LUAJIT MATCHES "ON")
-
- IF(ENABLE_JEMALLOC MATCHES "ON" AND NOT SANITIZE)
---
diff --git a/mail-filter/rspamd/files/rspamd-2.7-unbundle-zstd.patch b/mail-filter/rspamd/files/rspamd-2.7-unbundle-zstd.patch
deleted file mode 100644
index f0fc9f8352bd..000000000000
--- a/mail-filter/rspamd/files/rspamd-2.7-unbundle-zstd.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 77ad86785..56246807e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -202,6 +202,8 @@ ELSE()
- ROOT ${PCRE_ROOT_DIR} MODULES pcre libpcre pcre3 libpcre3)
- ENDIF()
-
-+ProcessPackage(ZSTD LIBRARY zstd INCLUDE zstd.h
-+ ROOT ${ZSTD_ROOT_DIR} MODULES libzstd)
- ProcessPackage(SQLITE3 LIBRARY sqlite3 INCLUDE sqlite3.h INCLUDE_SUFFIXES include/sqlite3 include/sqlite
- ROOT ${SQLITE3_ROOT_DIR} MODULES sqlite3 sqlite)
- ProcessPackage(ICUDATA LIBRARY icudata INCLUDE unicode/ucnv.h
-@@ -619,7 +621,6 @@ ADD_SUBDIRECTORY(contrib/http-parser)
- ADD_SUBDIRECTORY(contrib/fpconv)
- ADD_SUBDIRECTORY(contrib/lc-btrie)
- ADD_SUBDIRECTORY(contrib/libottery)
--ADD_SUBDIRECTORY(contrib/zstd)
- IF(ENABLE_SNOWBALL MATCHES "ON")
- ADD_SUBDIRECTORY(contrib/snowball)
- SET(WITH_SNOWBALL 1)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 54b2e4083..e0e2edd58 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -181,7 +181,6 @@ TARGET_LINK_LIBRARIES(rspamd-server rspamd-http-parser)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-fpconv)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-cdb)
- TARGET_LINK_LIBRARIES(rspamd-server lcbtrie)
--TARGET_LINK_LIBRARIES(rspamd-server rspamd-zstd)
- TARGET_LINK_LIBRARIES(rspamd-server rspamd-fastutf8)
-
- IF (ENABLE_CLANG_PLUGIN MATCHES "ON")
-diff --git a/src/client/rspamdclient.c b/src/client/rspamdclient.c
-index bcb25672e..48ca58e94 100644
---- a/src/client/rspamdclient.c
-+++ b/src/client/rspamdclient.c
-@@ -19,7 +19,7 @@
- #include "libserver/http/http_private.h"
- #include "libserver/protocol_internal.h"
- #include "unix-std.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #ifdef HAVE_FETCH_H
- #include <fetch.h>
-diff --git a/src/libserver/cfg_utils.c b/src/libserver/cfg_utils.c
-index 987123cbb..51c2e1468 100644
---- a/src/libserver/cfg_utils.c
-+++ b/src/libserver/cfg_utils.c
-@@ -36,8 +36,7 @@
- #include "contrib/libottery/ottery.h"
- #include "contrib/fastutf8/fastutf8.h"
-
--#define ZSTD_STATIC_LINKING_ONLY
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #ifdef HAVE_OPENSSL
- #include <openssl/rand.h>
-diff --git a/src/libserver/maps/map.c b/src/libserver/maps/map.c
-index 14792753a..20ca8416e 100644
---- a/src/libserver/maps/map.c
-+++ b/src/libserver/maps/map.c
-@@ -23,7 +23,7 @@
- #include "libserver/http/http_connection.h"
- #include "libserver/http/http_private.h"
- #include "rspamd.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "contrib/libev/ev.h"
- #include "contrib/uthash/utlist.h"
-
-diff --git a/src/libserver/protocol.c b/src/libserver/protocol.c
-index 31b0308cb..62ba3d833 100644
---- a/src/libserver/protocol.c
-+++ b/src/libserver/protocol.c
-@@ -21,7 +21,7 @@
- #include "worker_private.h"
- #include "libserver/cfg_file_private.h"
- #include "libmime/scan_result_private.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "lua/lua_common.h"
- #include "unix-std.h"
- #include "protocol_internal.h"
-diff --git a/src/libserver/task.c b/src/libserver/task.c
-index 096933803..f78754ab4 100644
---- a/src/libserver/task.c
-+++ b/src/libserver/task.c
-@@ -25,7 +25,7 @@
- #include "stat_api.h"
- #include "unix-std.h"
- #include "utlist.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "libserver/mempool_vars_internal.h"
- #include "libserver/cfg_file_private.h"
- #include "libmime/lang_detection.h"
-diff --git a/src/lua/lua_util.c b/src/lua/lua_util.c
-index e879d37af..88451e222 100644
---- a/src/lua/lua_util.c
-+++ b/src/lua/lua_util.c
-@@ -15,7 +15,7 @@
- */
- #include "lua_common.h"
- #include "unix-std.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
- #include "libmime/email_addr.h"
- #include "libmime/content_type.h"
- #include "libmime/mime_headers.h"
-diff --git a/src/rspamd_proxy.c b/src/rspamd_proxy.c
-index 3fa5da390..c641fb263 100644
---- a/src/rspamd_proxy.c
-+++ b/src/rspamd_proxy.c
-@@ -36,7 +36,7 @@
- #include "libserver/milter.h"
- #include "libserver/milter_internal.h"
- #include "libmime/lang_detection.h"
--#include "contrib/zstd/zstd.h"
-+#include <zstd.h>
-
- #include <math.h>
-
diff --git a/mail-filter/rspamd/files/rspamd-3.6-cmake-lua-version.patch b/mail-filter/rspamd/files/rspamd-3.6-cmake-lua-version.patch
new file mode 100644
index 000000000000..9a08eaac28b0
--- /dev/null
+++ b/mail-filter/rspamd/files/rspamd-3.6-cmake-lua-version.patch
@@ -0,0 +1,64 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bea0af828..f72304f05 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -149,55 +149,8 @@ IF (ENABLE_LUAJIT MATCHES "ON")
+ ELSE (ENABLE_LUAJIT MATCHES "ON")
+
+ ProcessPackage(LIBLUA LIBRARY "lua"
+- "lua-5.3"
+- LIB_SUFFIXES "lua5.3"
+- INCLUDE lua.h INCLUDE_SUFFIXES
+- "include/lua-5.3"
+- "include/lua5.3"
+- "include/lua53"
+- "include/lua"
+ ROOT ${LUA_ROOT}
+- MODULES lua53
+- OPTIONAL)
+-
+- IF (NOT WITH_LIBLUA)
+- ProcessPackage(LIBLUA LIBRARY "lua"
+- "lua-5.4"
+- LIB_SUFFIXES "lua5.4"
+- INCLUDE lua.h INCLUDE_SUFFIXES
+- "include/lua-5.4"
+- "include/lua5.4"
+- "include/lua54"
+- "include/lua"
+- ROOT ${LUA_ROOT}
+- MODULES lua54
+- OPTIONAL)
+- IF (NOT WITH_LIBLUA)
+- ProcessPackage(LIBLUA LIBRARY "lua"
+- "lua-5.2"
+- LIB_SUFFIXES "lua5.2"
+- INCLUDE lua.h INCLUDE_SUFFIXES
+- "include/lua-5.2"
+- "include/lua5.2"
+- "include/lua52"
+- "include/lua"
+- ROOT ${LUA_ROOT}
+- MODULES lua52
+- OPTIONAL)
+-
+- IF (NOT WITH_LIBLUA)
+- ProcessPackage(LIBLUA LIBRARY "lua"
+- "lua-5.1"
+- INCLUDE lua.h INCLUDE_SUFFIXES
+- "include/lua-5.1"
+- "include/lua5.1"
+- "include/lua51"
+- "include/lua"
+- ROOT ${LUA_ROOT}
+- MODULES lua51)
+- ENDIF ()
+- ENDIF ()
+- ENDIF ()
++ MODULES lua)
+ ENDIF (ENABLE_LUAJIT MATCHES "ON")
+
+ IF (ENABLE_JEMALLOC MATCHES "ON" AND NOT SANITIZE)
+--
+2.41.0
+
diff --git a/mail-filter/rspamd/files/rspamd-3.6-unbundle-lua.patch b/mail-filter/rspamd/files/rspamd-3.6-unbundle-lua.patch
new file mode 100644
index 000000000000..78a2a49d796f
--- /dev/null
+++ b/mail-filter/rspamd/files/rspamd-3.6-unbundle-lua.patch
@@ -0,0 +1,61 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bea0af828..d7a4eed14 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -641,10 +641,6 @@ ELSE ()
+ find_package(doctest)
+ ENDIF ()
+
+-IF (NOT WITH_LUAJIT)
+- ADD_SUBDIRECTORY(contrib/lua-bit)
+-ENDIF ()
+-
+ IF (ENABLE_LUA_REPL MATCHES "ON")
+ ADD_SUBDIRECTORY(contrib/replxx)
+ SET(WITH_LUA_REPL 1)
+@@ -742,7 +738,6 @@ ENDFOREACH (LUA_LIB)
+
+ # Install lua fun library
+ INSTALL(FILES "contrib/lua-fun/fun.lua" DESTINATION ${LUALIBDIR})
+-INSTALL(FILES "contrib/lua-argparse/argparse.lua" DESTINATION ${LUALIBDIR})
+ INSTALL(FILES "contrib/lua-tableshape/tableshape.lua" DESTINATION ${LUALIBDIR})
+ INSTALL(FILES "contrib/lua-lupa/lupa.lua" DESTINATION ${LUALIBDIR})
+ INSTALL(FILES "contrib/lua-lpeg/lpegre.lua" DESTINATION ${LUALIBDIR})
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 5dee8e610..a90f8d52d 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -205,10 +205,6 @@ IF (ENABLE_CLANG_PLUGIN MATCHES "ON")
+ ADD_DEPENDENCIES(rspamd-server rspamd-clang)
+ ENDIF()
+
+-IF (NOT WITH_LUAJIT)
+- TARGET_LINK_LIBRARIES(rspamd-server rspamd-bit)
+-ENDIF()
+-
+ IF (ENABLE_SNOWBALL MATCHES "ON")
+ TARGET_LINK_LIBRARIES(rspamd-server stemmer)
+ ENDIF()
+diff --git a/src/lua/lua_common.c b/src/lua/lua_common.c
+index b543ae5db..7a93934fd 100644
+--- a/src/lua/lua_common.c
++++ b/src/lua/lua_common.c
+@@ -904,10 +904,6 @@ rspamd_lua_wipe_realloc(void *ud,
+ return NULL;
+ }
+
+-#ifndef WITH_LUAJIT
+-extern int luaopen_bit(lua_State *L);
+-#endif
+-
+ static unsigned int lua_initialized = 0;
+
+ lua_State *
+@@ -975,7 +971,6 @@ rspamd_lua_init(bool wipe_mem)
+ luaopen_parsers(L);
+ luaopen_compress(L);
+ #ifndef WITH_LUAJIT
+- rspamd_lua_add_preload(L, "bit", luaopen_bit);
+ lua_settop(L, 0);
+ #endif
+
diff --git a/mail-filter/rspamd/files/rspamd-3.6-unbundle-snowball.patch b/mail-filter/rspamd/files/rspamd-3.6-unbundle-snowball.patch
new file mode 100644
index 000000000000..5779142b7b10
--- /dev/null
+++ b/mail-filter/rspamd/files/rspamd-3.6-unbundle-snowball.patch
@@ -0,0 +1,20 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bea0af828..00778100c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -115,7 +115,6 @@ INCLUDE_DIRECTORIES("${CMAKE_SOURCE_DIR}/"
+ "${CMAKE_SOURCE_DIR}/contrib/fpconv"
+ "${CMAKE_SOURCE_DIR}/contrib/libottery"
+ "${CMAKE_SOURCE_DIR}/contrib/cdb"
+- "${CMAKE_SOURCE_DIR}/contrib/snowball/include"
+ "${CMAKE_SOURCE_DIR}/contrib/librdns"
+ "${CMAKE_SOURCE_DIR}/contrib/aho-corasick"
+ "${CMAKE_SOURCE_DIR}/contrib/lc-btrie"
+@@ -617,7 +616,6 @@ ELSE ()
+ ADD_DEFINITIONS(-DSYS_ZSTD)
+ ENDIF ()
+ IF (ENABLE_SNOWBALL MATCHES "ON")
+- ADD_SUBDIRECTORY(contrib/snowball)
+ SET(WITH_SNOWBALL 1)
+ ENDIF ()
+ ADD_SUBDIRECTORY(contrib/libucl)
diff --git a/mail-filter/rspamd/metadata.xml b/mail-filter/rspamd/metadata.xml
index a8969fdf4ef9..6044b0bb7bec 100644
--- a/mail-filter/rspamd/metadata.xml
+++ b/mail-filter/rspamd/metadata.xml
@@ -1,22 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>c@roessner.co</email>
- <name>Christian Roessner</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>arkamar@atlas.cz</email>
+ <maintainer type="person">
+ <email>arkamar@gentoo.org</email>
<name>Petr Vaněk</name>
</maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
<upstream>
- <remote-id type="github">vstakhov/rspamd</remote-id>
+ <remote-id type="github">rspamd/rspamd</remote-id>
</upstream>
<use>
- <flag name="pcre2">Use dev-libs/libpcre2</flag>
+ <flag name="hyperscan">Enable hyperscan for fast regexp processing</flag>
+ <flag name="jit">Enable PCRE JIT support</flag>
</use>
</pkgmetadata>
diff --git a/mail-filter/rspamd/rspamd-2.6-r100.ebuild b/mail-filter/rspamd/rspamd-2.6-r100.ebuild
deleted file mode 100644
index 707adc9a3f4a..000000000000
--- a/mail-filter/rspamd/rspamd-2.6-r100.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-LUA_COMPAT=( lua5-{1..3} luajit )
-
-inherit cmake lua-single pax-utils systemd tmpfiles
-
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/rspamd/rspamd.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 x86"
-fi
-
-DESCRIPTION="Rapid spam filtering system"
-HOMEPAGE="https://rspamd.com https://github.com/rspamd/rspamd"
-LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
-SLOT="0"
-IUSE="blas cpu_flags_x86_ssse3 jemalloc +jit pcre2"
-
-REQUIRED_USE="${LUA_REQUIRED_USE}
- jit? ( lua_single_target_luajit )"
-
-RDEPEND="${LUA_DEPS}
- $(lua_gen_cond_dep '
- dev-lua/LuaBitOp[${LUA_USEDEP}]
- ' lua5-{1,2})
- acct-group/rspamd
- acct-user/rspamd
- app-arch/zstd
- dev-db/sqlite:3
- dev-libs/glib:2
- dev-libs/icu:=
- dev-libs/libev
- dev-libs/libsodium
- dev-libs/snowball-stemmer
- net-libs/libnsl
- sys-apps/file
- blas? (
- virtual/blas
- virtual/lapack
- )
- cpu_flags_x86_ssse3? ( dev-libs/hyperscan )
- jemalloc? ( dev-libs/jemalloc )
- dev-libs/openssl:0=[-bindist]
- pcre2? ( dev-libs/libpcre2[jit=] )
- !pcre2? ( dev-libs/libpcre[jit=] )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/ragel
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}/rspamd-2.6-cmake-lua-version.patch"
- "${FILESDIR}/rspamd-2.6-unbundle-lua.patch"
- "${FILESDIR}/rspamd-2.6-unbundle-zstd.patch"
- "${FILESDIR}/rspamd-2.5-unbundle-snowball.patch"
-)
-
-src_prepare() {
- cmake_src_prepare
-
- rm -vrf contrib/{lua-bit,snowball,zstd} || die
-
- sed -i -e 's/User=_rspamd/User=rspamd/g' \
- rspamd.service \
- || die
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCONFDIR=/etc/rspamd
- -DRUNDIR=/var/run/rspamd
- -DDBDIR=/var/lib/rspamd
- -DLOGDIR=/var/log/rspamd
- -DENABLE_BLAS=$(usex blas ON OFF)
- -DENABLE_HYPERSCAN=$(usex cpu_flags_x86_ssse3 ON OFF)
- -DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
- -DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
- -DENABLE_PCRE2=$(usex pcre2 ON OFF)
- )
- cmake_src_configure
-}
-
-src_test() {
- cmake_src_test
-}
-
-src_install() {
- cmake_src_install
-
- newconfd "${FILESDIR}"/rspamd.conf rspamd
- newinitd "${FILESDIR}/rspamd-r7.init" rspamd
- systemd_newunit rspamd.service rspamd.service
-
- newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
-
- # Remove mprotect for JIT support
- if use lua_single_target_luajit; then
- pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-*
- fi
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/rspamd-r1.logrotate rspamd
-
- diropts -o rspamd -g rspamd
- keepdir /var/{lib,log}/rspamd
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-}
diff --git a/mail-filter/rspamd/rspamd-2.7-r100.ebuild b/mail-filter/rspamd/rspamd-2.7-r100.ebuild
deleted file mode 100644
index 80a28df9ec2b..000000000000
--- a/mail-filter/rspamd/rspamd-2.7-r100.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-LUA_COMPAT=( lua5-{1..3} luajit )
-
-inherit cmake lua-single pax-utils systemd tmpfiles
-
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/rspamd/rspamd.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 x86"
-fi
-
-DESCRIPTION="Rapid spam filtering system"
-HOMEPAGE="https://rspamd.com https://github.com/rspamd/rspamd"
-LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
-SLOT="0"
-IUSE="blas cpu_flags_x86_ssse3 jemalloc +jit pcre2"
-
-REQUIRED_USE="${LUA_REQUIRED_USE}
- jit? ( lua_single_target_luajit )"
-
-RDEPEND="${LUA_DEPS}
- $(lua_gen_cond_dep '
- dev-lua/LuaBitOp[${LUA_USEDEP}]
- ' lua5-{1,2})
- acct-group/rspamd
- acct-user/rspamd
- app-arch/zstd
- dev-db/sqlite:3
- dev-libs/glib:2
- dev-libs/icu:=
- dev-libs/libev
- dev-libs/libsodium
- dev-libs/snowball-stemmer
- net-libs/libnsl
- sys-apps/file
- blas? (
- virtual/blas
- virtual/lapack
- )
- cpu_flags_x86_ssse3? ( dev-libs/hyperscan )
- jemalloc? ( dev-libs/jemalloc )
- dev-libs/openssl:0=[-bindist]
- pcre2? ( dev-libs/libpcre2[jit=] )
- !pcre2? ( dev-libs/libpcre[jit=] )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/ragel
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}/rspamd-2.7-cmake-lua-version.patch"
- "${FILESDIR}/rspamd-2.6-unbundle-lua.patch"
- "${FILESDIR}/rspamd-2.7-unbundle-zstd.patch"
- "${FILESDIR}/rspamd-2.5-unbundle-snowball.patch"
-)
-
-src_prepare() {
- cmake_src_prepare
-
- rm -vrf contrib/{lua-bit,snowball,zstd} || die
-
- sed -i -e 's/User=_rspamd/User=rspamd/g' \
- rspamd.service \
- || die
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCONFDIR=/etc/rspamd
- -DRUNDIR=/var/run/rspamd
- -DDBDIR=/var/lib/rspamd
- -DLOGDIR=/var/log/rspamd
- -DENABLE_BLAS=$(usex blas ON OFF)
- -DENABLE_HYPERSCAN=$(usex cpu_flags_x86_ssse3 ON OFF)
- -DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
- -DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
- -DENABLE_PCRE2=$(usex pcre2 ON OFF)
- )
- cmake_src_configure
-}
-
-src_test() {
- cmake_src_test
-}
-
-src_install() {
- cmake_src_install
-
- newconfd "${FILESDIR}"/rspamd.conf rspamd
- newinitd "${FILESDIR}/rspamd-r7.init" rspamd
- systemd_newunit rspamd.service rspamd.service
-
- newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
-
- # Remove mprotect for JIT support
- if use lua_single_target_luajit; then
- pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-*
- fi
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/rspamd-r1.logrotate rspamd
-
- diropts -o rspamd -g rspamd
- keepdir /var/{lib,log}/rspamd
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-}
diff --git a/mail-filter/rspamd/rspamd-3.8.1.ebuild b/mail-filter/rspamd/rspamd-3.8.1.ebuild
new file mode 100644
index 000000000000..f2a11e4ecfa4
--- /dev/null
+++ b/mail-filter/rspamd/rspamd-3.8.1.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit cmake lua-single pax-utils systemd tmpfiles
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/rspamd/rspamd.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 x86"
+fi
+
+DESCRIPTION="Rapid spam filtering system"
+HOMEPAGE="
+ https://rspamd.com
+ https://github.com/rspamd/rspamd
+"
+
+LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
+SLOT="0"
+IUSE="blas +hyperscan jemalloc +jit selinux test"
+RESTRICT="!test? ( test )"
+
+# A part of tests use ffi luajit extension
+REQUIRED_USE="${LUA_REQUIRED_USE}
+ test? ( lua_single_target_luajit )"
+
+RDEPEND="
+ ${LUA_DEPS}
+ $(lua_gen_cond_dep '
+ dev-lua/LuaBitOp[${LUA_USEDEP}]
+ dev-lua/lua-argparse[${LUA_USEDEP}]
+ ')
+ acct-group/rspamd
+ acct-user/rspamd
+ app-arch/zstd:=
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/icu:=
+ dev-libs/libpcre2:=[jit=]
+ dev-libs/libsodium:=
+ dev-libs/openssl:0=[-bindist(-)]
+ dev-libs/snowball-stemmer:=
+ sys-libs/zlib
+ blas? (
+ virtual/blas
+ virtual/lapack
+ )
+ hyperscan? ( dev-libs/vectorscan:= )
+ jemalloc? ( dev-libs/jemalloc:= )
+ selinux? ( sec-policy/selinux-spamassassin )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-cpp/doctest
+ dev-libs/libfmt:=
+ >=dev-libs/xxhash-0.8.0
+"
+BDEPEND="
+ dev-lang/perl
+ dev-util/ragel
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/rspamd-3.6-cmake-lua-version.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-lua.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-snowball.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ rm -vrf contrib/{doctest,fmt,lua-{argparse,bit},snowball,xxhash,zstd} || die
+
+ > cmake/Toolset.cmake || die #827550
+
+ sed -i -e 's/User=_rspamd/User=rspamd/g' \
+ rspamd.service \
+ || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCONFDIR=/etc/rspamd
+ -DRUNDIR=/var/run/rspamd
+ -DDBDIR=/var/lib/rspamd
+ -DLOGDIR=/var/log/rspamd
+ -DLIBDIR="/usr/$(get_libdir)/rspamd"
+
+ -DSYSTEM_DOCTEST=ON
+ -DSYSTEM_FMT=ON
+ -DSYSTEM_XXHASH=ON
+ -DSYSTEM_ZSTD=ON
+
+ # For bundled https://github.com/bombela/backward-cpp
+ # Bundled backward library uses execinfo.h in current setting, which is
+ # available in glibc, but not in musl. Let's enable it for glibc only.
+ -DENABLE_BACKWARD=$(usex elibc_glibc ON OFF) # bug 917643
+ -DSTACK_DETAILS_AUTO_DETECT=OFF
+
+ -DENABLE_BLAS=$(usex blas ON OFF)
+ -DENABLE_HYPERSCAN=$(usex hyperscan ON OFF)
+ -DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
+ -DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
+ -DENABLE_PCRE2=ON
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_build run-test
+}
+
+src_install() {
+ cmake_src_install
+
+ newconfd "${FILESDIR}"/rspamd.conf rspamd
+ newinitd "${FILESDIR}/rspamd-r7.init" rspamd
+ systemd_newunit rspamd.service rspamd.service
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
+
+ # Remove mprotect for JIT support
+ if use lua_single_target_luajit; then
+ pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-*
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/rspamd-r1.logrotate rspamd
+
+ diropts -o rspamd -g rspamd
+ keepdir /var/{lib,log}/rspamd
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${ver}" -eq "3.4"; then
+ elog "rspamd-3.4 is known to segfault when it is updated from older version due"
+ elog "to a page-alignment of hyperscan .unser files. The issue was patched in"
+ elog "rspamd-3.4-r1 ebuild revision. All possibly broken .unser files will be"
+ elog "automaticaly removed. See https://github.com/rspamd/rspamd/issues/4329 for"
+ elog "more information."
+
+ find "${EROOT}/var/lib/rspamd" -type f -name '*.unser' -delete
+ fi
+ done
+}
diff --git a/mail-filter/rspamd/rspamd-3.8.4.ebuild b/mail-filter/rspamd/rspamd-3.8.4.ebuild
new file mode 100644
index 000000000000..1ba2cca28359
--- /dev/null
+++ b/mail-filter/rspamd/rspamd-3.8.4.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit cmake lua-single pax-utils systemd tmpfiles
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/rspamd/rspamd.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 x86"
+fi
+
+DESCRIPTION="Rapid spam filtering system"
+HOMEPAGE="
+ https://rspamd.com
+ https://github.com/rspamd/rspamd
+"
+
+LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
+SLOT="0"
+IUSE="blas +hyperscan jemalloc +jit selinux test"
+RESTRICT="!test? ( test )"
+
+# A part of tests use ffi luajit extension
+REQUIRED_USE="${LUA_REQUIRED_USE}
+ test? ( lua_single_target_luajit )"
+
+RDEPEND="
+ ${LUA_DEPS}
+ $(lua_gen_cond_dep '
+ dev-lua/LuaBitOp[${LUA_USEDEP}]
+ dev-lua/lua-argparse[${LUA_USEDEP}]
+ ')
+ acct-group/rspamd
+ acct-user/rspamd
+ app-arch/zstd:=
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/icu:=
+ dev-libs/libpcre2:=[jit=]
+ dev-libs/libsodium:=
+ dev-libs/openssl:0=[-bindist(-)]
+ dev-libs/snowball-stemmer:=
+ sys-libs/zlib
+ blas? (
+ virtual/blas
+ virtual/lapack
+ )
+ hyperscan? ( dev-libs/vectorscan:= )
+ jemalloc? ( dev-libs/jemalloc:= )
+ selinux? ( sec-policy/selinux-spamassassin )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-cpp/doctest
+ dev-libs/libfmt:=
+ >=dev-libs/xxhash-0.8.0
+"
+BDEPEND="
+ dev-lang/perl
+ dev-util/ragel
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/rspamd-3.6-cmake-lua-version.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-lua.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-snowball.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ rm -vrf contrib/{doctest,fmt,lua-{argparse,bit},snowball,xxhash,zstd} || die
+
+ > cmake/Toolset.cmake || die #827550
+
+ sed -i -e 's/User=_rspamd/User=rspamd/g' \
+ rspamd.service \
+ || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCONFDIR=/etc/rspamd
+ -DRUNDIR=/var/run/rspamd
+ -DDBDIR=/var/lib/rspamd
+ -DLOGDIR=/var/log/rspamd
+ -DLIBDIR="/usr/$(get_libdir)/rspamd"
+
+ -DSYSTEM_DOCTEST=ON
+ -DSYSTEM_FMT=ON
+ -DSYSTEM_XXHASH=ON
+ -DSYSTEM_ZSTD=ON
+
+ # For bundled https://github.com/bombela/backward-cpp
+ # Bundled backward library uses execinfo.h in current setting, which is
+ # available in glibc, but not in musl. Let's enable it for glibc only.
+ -DENABLE_BACKWARD=$(usex elibc_glibc ON OFF) # bug 917643
+ -DSTACK_DETAILS_AUTO_DETECT=OFF
+
+ -DENABLE_BLAS=$(usex blas ON OFF)
+ -DENABLE_HYPERSCAN=$(usex hyperscan ON OFF)
+ -DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
+ -DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
+ -DENABLE_PCRE2=ON
+
+ -DBUILD_TESTING=$(usex test ON OFF)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ # These variables ensure tests use Lua scripts from this package rather
+ # than the installed version. However, rspamd always first attempts to load
+ # from /etc/rspamd/lua, with no method to override this behavior.
+ LUA_PATH="${S}/contrib/lua-?/?.lua" \
+ LUALIBDIR="${S}/lualib" \
+ RULESDIR="${S}/lualib" \
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ newconfd "${FILESDIR}"/rspamd.conf rspamd
+ newinitd "${FILESDIR}/rspamd-r7.init" rspamd
+ systemd_newunit rspamd.service rspamd.service
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
+
+ # Remove mprotect for JIT support
+ if use lua_single_target_luajit; then
+ pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-*
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/rspamd-r1.logrotate rspamd
+
+ diropts -o rspamd -g rspamd
+ keepdir /var/{lib,log}/rspamd
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${ver}" -eq "3.4"; then
+ elog "rspamd-3.4 is known to segfault when it is updated from older version due"
+ elog "to a page-alignment of hyperscan .unser files. The issue was patched in"
+ elog "rspamd-3.4-r1 ebuild revision. All possibly broken .unser files will be"
+ elog "automaticaly removed. See https://github.com/rspamd/rspamd/issues/4329 for"
+ elog "more information."
+
+ find "${EROOT}/var/lib/rspamd" -type f -name '*.unser' -delete
+ fi
+ done
+}
diff --git a/mail-filter/rspamd/rspamd-9999.ebuild b/mail-filter/rspamd/rspamd-9999.ebuild
index 5ff19a2efa70..16b59dbaef8d 100644
--- a/mail-filter/rspamd/rspamd-9999.ebuild
+++ b/mail-filter/rspamd/rspamd-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-LUA_COMPAT=( lua5-{1..3} luajit )
+LUA_COMPAT=( lua5-{1..4} luajit )
inherit cmake lua-single pax-utils systemd tmpfiles
@@ -16,55 +16,70 @@ else
fi
DESCRIPTION="Rapid spam filtering system"
-HOMEPAGE="https://rspamd.com https://github.com/rspamd/rspamd"
+HOMEPAGE="
+ https://rspamd.com
+ https://github.com/rspamd/rspamd
+"
+
LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
SLOT="0"
-IUSE="blas cpu_flags_x86_ssse3 jemalloc +jit pcre2"
+IUSE="blas +hyperscan jemalloc +jit selinux test"
+RESTRICT="!test? ( test )"
+# A part of tests use ffi luajit extension
REQUIRED_USE="${LUA_REQUIRED_USE}
- jit? ( lua_single_target_luajit )"
+ test? ( lua_single_target_luajit )"
-RDEPEND="${LUA_DEPS}
+RDEPEND="
+ ${LUA_DEPS}
$(lua_gen_cond_dep '
dev-lua/LuaBitOp[${LUA_USEDEP}]
- ' lua5-{1,2})
+ dev-lua/lua-argparse[${LUA_USEDEP}]
+ ')
acct-group/rspamd
acct-user/rspamd
- app-arch/zstd
+ app-arch/libarchive:=
+ app-arch/zstd:=
dev-db/sqlite:3
dev-libs/glib:2
dev-libs/icu:=
- dev-libs/libev
- dev-libs/libsodium
- dev-libs/snowball-stemmer
- net-libs/libnsl
- sys-apps/file
+ dev-libs/libpcre2:=[jit=]
+ dev-libs/libsodium:=
+ dev-libs/openssl:0=[-bindist(-)]
+ dev-libs/snowball-stemmer:=
+ sys-libs/zlib
blas? (
virtual/blas
virtual/lapack
)
- cpu_flags_x86_ssse3? ( dev-libs/hyperscan )
- jemalloc? ( dev-libs/jemalloc )
- dev-libs/openssl:0=[-bindist]
- pcre2? ( dev-libs/libpcre2[jit=] )
- !pcre2? ( dev-libs/libpcre[jit=] )"
-DEPEND="${RDEPEND}"
+ hyperscan? ( dev-libs/vectorscan:= )
+ jemalloc? ( dev-libs/jemalloc:= )
+ selinux? ( sec-policy/selinux-spamassassin )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-cpp/doctest
+ dev-libs/libfmt:=
+ >=dev-libs/xxhash-0.8.0
+"
BDEPEND="
+ dev-lang/perl
dev-util/ragel
virtual/pkgconfig
"
PATCHES=(
- "${FILESDIR}/rspamd-2.7-cmake-lua-version.patch"
- "${FILESDIR}/rspamd-2.6-unbundle-lua.patch"
- "${FILESDIR}/rspamd-2.7-unbundle-zstd.patch"
- "${FILESDIR}/rspamd-2.5-unbundle-snowball.patch"
+ "${FILESDIR}/rspamd-3.6-cmake-lua-version.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-lua.patch"
+ "${FILESDIR}/rspamd-3.6-unbundle-snowball.patch"
)
src_prepare() {
cmake_src_prepare
- rm -vrf contrib/{lua-bit,snowball,zstd} || die
+ rm -vrf contrib/{doctest,fmt,lua-{argparse,bit},snowball,xxhash,zstd} || die
+
+ > cmake/Toolset.cmake || die #827550
sed -i -e 's/User=_rspamd/User=rspamd/g' \
rspamd.service \
@@ -77,16 +92,37 @@ src_configure() {
-DRUNDIR=/var/run/rspamd
-DDBDIR=/var/lib/rspamd
-DLOGDIR=/var/log/rspamd
+ -DLIBDIR="/usr/$(get_libdir)/rspamd"
+
+ -DSYSTEM_DOCTEST=ON
+ -DSYSTEM_FMT=ON
+ -DSYSTEM_XXHASH=ON
+ -DSYSTEM_ZSTD=ON
+
+ # For bundled https://github.com/bombela/backward-cpp
+ # Bundled backward library uses execinfo.h in current setting, which is
+ # available in glibc, but not in musl. Let's enable it for glibc only.
+ -DENABLE_BACKWARD=$(usex elibc_glibc ON OFF) # bug 917643
+ -DSTACK_DETAILS_AUTO_DETECT=OFF
+
-DENABLE_BLAS=$(usex blas ON OFF)
- -DENABLE_HYPERSCAN=$(usex cpu_flags_x86_ssse3 ON OFF)
+ -DENABLE_HYPERSCAN=$(usex hyperscan ON OFF)
-DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
-DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
- -DENABLE_PCRE2=$(usex pcre2 ON OFF)
+ -DENABLE_PCRE2=ON
+
+ -DBUILD_TESTING=$(usex test ON OFF)
)
cmake_src_configure
}
src_test() {
+ # These variables ensure tests use Lua scripts from this package rather
+ # than the installed version. However, rspamd always first attempts to load
+ # from /etc/rspamd/lua, with no method to override this behavior.
+ LUA_PATH="${S}/contrib/lua-?/?.lua" \
+ LUALIBDIR="${S}/lualib" \
+ RULESDIR="${S}/lualib" \
cmake_src_test
}
diff --git a/mail-filter/scmail/files/scmail-gauche-0.9.10.patch b/mail-filter/scmail/files/scmail-gauche-0.9.10.patch
new file mode 100644
index 000000000000..ab6f5e04d2f6
--- /dev/null
+++ b/mail-filter/scmail/files/scmail-gauche-0.9.10.patch
@@ -0,0 +1,22 @@
+--- a/scmail/mail.scm
++++ b/scmail/mail.scm
+@@ -202,7 +202,7 @@
+ (send-command "DATA" 354)
+ (port-for-each (lambda (line)
+ (format out "~a~a\r\n"
+- (if (string-prefix? "." line) "." "")
++ (if (and (not (string-incomplete? line)) (string-prefix? "." line)) "." "")
+ line))
+ (lambda () (read-line iport #t)))
+ (send-command "." 250)
+--- a/tests/mailbox.scm
++++ b/tests/mailbox.scm
+@@ -9,7 +9,7 @@
+ (test-module 'scmail.mailbox)
+
+ (define mailbox-table
+- '((mh #f "Mail" "inbox")
++ `((mh #f "Mail" "inbox")
+ (maildir #f "Maildir" "")))
+
+ (define (mailbox-list)
diff --git a/mail-filter/scmail/metadata.xml b/mail-filter/scmail/metadata.xml
index 21dc8fdf43ff..9a97f3478d31 100644
--- a/mail-filter/scmail/metadata.xml
+++ b/mail-filter/scmail/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>hattya@gentoo.org</email>
diff --git a/mail-filter/scmail/scmail-1.3.ebuild b/mail-filter/scmail/scmail-1.3.ebuild
index 9e0798bddb6a..25809d282452 100644
--- a/mail-filter/scmail/scmail-1.3.ebuild
+++ b/mail-filter/scmail/scmail-1.3.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI="8"
inherit fixheadtails
@@ -20,6 +20,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-doc-encoding.patch
"${FILESDIR}"/${PN}-gauche-0.9.patch
+ "${FILESDIR}"/${PN}-gauche-0.9.10.patch
"${FILESDIR}"/${PN}-undefined-reference.patch
)
HTML_DOCS=( doc/{${PN},scbayes}{,-ja}.html )
diff --git a/mail-filter/sieve-connect/metadata.xml b/mail-filter/sieve-connect/metadata.xml
index 06e2aa077d0d..c4b010a35be8 100644
--- a/mail-filter/sieve-connect/metadata.xml
+++ b/mail-filter/sieve-connect/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>alarig@swordarmor.fr</email>
diff --git a/mail-filter/sigh/Manifest b/mail-filter/sigh/Manifest
deleted file mode 100644
index 67b4d7f948c6..000000000000
--- a/mail-filter/sigh/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sigh-1607.1.6.tar.gz 58258 BLAKE2B 6d2743c4a850af4f28ba0f2b7a0d6fdef5b699f9521e0631b9bc534be872af4cfccd10de7648080389046faf3f34ba58e3ce68aa318d76ed8e1af5f495f47f70 SHA512 640fa35ea89d7aab956e597ef089a8b7f57af2a7e3de7087e6bd01b60715cc33263cd4fd84a8826ae37387ec802d4bb78c5fe9c83e5d404029d69de010b1ce6b
diff --git a/mail-filter/sigh/files/sigh-1607.1.6-fno-common.patch b/mail-filter/sigh/files/sigh-1607.1.6-fno-common.patch
deleted file mode 100644
index a76b102be147..000000000000
--- a/mail-filter/sigh/files/sigh-1607.1.6-fno-common.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/src/common.h
-+++ b/src/common.h
-@@ -28,14 +28,14 @@ namespace util {
- * @param x A string literal
- * @return A pointer to char
- */
-- auto ccp = [](const std::string &str) {
-+ inline auto ccp = [](const std::string &str) {
- return const_cast<char *> (str.c_str());
- };
-
- /*!
- * @brief Data structure for each client connection
- */
-- auto mlfipriv = [](SMFICTX *ctx) {
-+ inline auto mlfipriv = [](SMFICTX *ctx) {
- return static_cast<mlt::Client *> (smfi_getpriv(ctx));
- };
- } // namespace util
diff --git a/mail-filter/sigh/files/sigh.initd b/mail-filter/sigh/files/sigh.initd
deleted file mode 100755
index 8fe64679bab1..000000000000
--- a/mail-filter/sigh/files/sigh.initd
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-PIDDIR="/run/${SVCNAME}"
-
-description="Sigh is a milter that signs emails with S/MIME"
-name="S/MIME signing milter"
-pidfile="${PIDDIR}/${SVCNAME}.pid"
-command="/usr/sbin/sigh"
-command_args="-p ${pidfile} ${OPTIONS}"
-retry="30"
-
-depend() {
- need localmount net
- use mta logger
-}
-
-start_pre() {
- checkpath -q -d -o sigh:sigh -m 0755 "${PIDDIR}" || return 1
-}
-
diff --git a/mail-filter/sigh/metadata.xml b/mail-filter/sigh/metadata.xml
deleted file mode 100644
index 533c0780701a..000000000000
--- a/mail-filter/sigh/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>c@roessner.co</email>
- <name>Christian Roessner</name>
- </maintainer>
- <maintainer type="person">
- <email>mschiff@gentoo.org</email>
- <name>Marc Schiffbauer</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <upstream>
- <remote-id type="github">croessner/sigh</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/mail-filter/sigh/sigh-1607.1.6-r1.ebuild b/mail-filter/sigh/sigh-1607.1.6-r1.ebuild
deleted file mode 100644
index 43bef3b3b138..000000000000
--- a/mail-filter/sigh/sigh-1607.1.6-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_IN_SOURCE_BUILD=1
-inherit cmake
-
-DESCRIPTION="S/MIME signing milter"
-HOMEPAGE="https://signing-milter.org/"
-SRC_URI="https://github.com/croessner/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- acct-group/sigh
- acct-user/sigh
- dev-libs/boost
- dev-libs/openssl:0=
- mail-filter/libmilter"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
-
-src_install() {
- cmake_src_install
- newinitd "${FILESDIR}"/${PN}.initd ${PN}
-}
diff --git a/mail-filter/spamassassin-botnet/metadata.xml b/mail-filter/spamassassin-botnet/metadata.xml
index e6c8a8741467..d56d1312547f 100644
--- a/mail-filter/spamassassin-botnet/metadata.xml
+++ b/mail-filter/spamassassin-botnet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
diff --git a/mail-filter/spamassassin-botnet/spamassassin-botnet-0.8-r1.ebuild b/mail-filter/spamassassin-botnet/spamassassin-botnet-0.8-r1.ebuild
index f4486210f919..a8bf5a5a1e7c 100644
--- a/mail-filter/spamassassin-botnet/spamassassin-botnet-0.8-r1.ebuild
+++ b/mail-filter/spamassassin-botnet/spamassassin-botnet-0.8-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
inherit perl-module
@@ -11,20 +11,18 @@ MY_P="${MY_PN}-${PV}"
DESCRIPTION="SpamAssassin plugin that attempts to detect messages sent by a botnet"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="http://people.ucsc.edu/~jrudd/spamassassin/${MY_P}.tar"
+S="${WORKDIR}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
DEPEND=">=mail-filter/spamassassin-3.0.0"
RDEPEND="${DEPEND}"
-S="${WORKDIR}"
-
src_compile() {
# make sure it doesn't try to look for the .pm in the same dir as the .cf
- sed -rie 's/^(loadplugin.+)[ ]+Botnet.pm/\1/' Botnet.cf
+ sed -rie 's/^(loadplugin.+)[ ]+Botnet.pm/\1/' Botnet.cf || die
}
src_install() {
diff --git a/mail-filter/spamassassin/Manifest b/mail-filter/spamassassin/Manifest
index 597871620b1a..29f8917f8c96 100644
--- a/mail-filter/spamassassin/Manifest
+++ b/mail-filter/spamassassin/Manifest
@@ -1,2 +1,3 @@
-DIST Mail-SpamAssassin-3.4.5.tar.bz2 6167088 BLAKE2B d99c9e40f6735328b5300f010f248d35a8a8dcd3a3692a8db909234b8de3a5e432d004cf09f7ddb8b2ae82144525ce1ab25d89df92b621d8e119e2128e59cce6 SHA512 46096019ef3d2b6dadb7af0d076c22526786cccb669cd4bed131b64fa935863630ca9f3e78277bebba0ed75099be9fbce97a30a6478ed84093896a1ad3d8387a
DIST Mail-SpamAssassin-3.4.6.tar.bz2 6166807 BLAKE2B aa25c9e81f570d35e8594ba6d6da70c7b846737513bd4d6d2d410872c58ab7cbe7ade6a109a71bdbb6dbaf7aee8eb48520e7de929b27e83546401f3692aeb0c3 SHA512 bb53ba928917b02071b2e6690a11240e1af503334f292c870a8c49c24b0a58b44c78f827e2f43e71a3ce920481fa0e1e62b78a39452658c57d18f4e11daeb593
+DIST Mail-SpamAssassin-4.0.0.tar.bz2 6371055 BLAKE2B 86f2167f6250a10a6bf871cc291f63ee9ee2d853b4183a637b4267e6979209196155be1b26e5e5b1093cf63841f9819a249de65e7002414a7e790ee1b67e5206 SHA512 a0fe5f6953c9df355bfa011e8a617101687eb156831a057504656921fe76c2a4eb37b5383861aac579e66a20c4454068e81a39826a35eb0266148771567bad5f
+DIST Mail-SpamAssassin-4.0.0.tar.bz2.asc 833 BLAKE2B 44170d411d9eb656d67bf4080807ad3c3fd9eff9f2eadadadbfde828e542bc57b5cdcfb062c7f210be4d721bdf9cf85aec9b1fb491076165453b000b47990f0d SHA512 b87a80d2b0b802f52df75e485878c53cc4fad52935ca2b14b1b06e46d334b52c673e66d61cc2155b5e812fa6a486f8e61f6a87794be2524acea1fd8ac42e7d6a
diff --git a/mail-filter/spamassassin/files/3.4.6-configure-clang16.patch b/mail-filter/spamassassin/files/3.4.6-configure-clang16.patch
new file mode 100644
index 000000000000..cd69a546c71d
--- /dev/null
+++ b/mail-filter/spamassassin/files/3.4.6-configure-clang16.patch
@@ -0,0 +1,44 @@
+https://bz.apache.org/SpamAssassin/show_bug.cgi?id=8073
+--- a/spamc/configure.in
++++ b/spamc/configure.in
+@@ -48,7 +48,9 @@ dnl ----------------------------------------------------------------------
+ AC_CACHE_CHECK([for SHUT_RD],
+ shutrd, [
+ AC_TRY_COMPILE([#include <sys/types.h>
+-#include <sys/socket.h>],
++#include <sys/socket.h>
++#include <stdio.h>
++],
+ [printf ("%d", SHUT_RD); return 0;],
+ [shutrd=yes],
+ [shutrd=no]),
+@@ -89,7 +91,8 @@ dnl ----------------------------------------------------------------------
+
+ AC_CACHE_CHECK([for h_errno],
+ herrno, [
+- AC_TRY_COMPILE([#include <netdb.h>],
++ AC_TRY_COMPILE([#include <netdb.h>
++#include <stdio.h>],
+ [printf ("%d", h_errno); return 0;],
+ [herrno=yes],
+ [herrno=no]),
+diff --git a/spamc/configure b/spamc/configure
+index d8e5dcf..2e30ba4 100755
+--- a/spamc/configure
++++ b/spamc/configure
+@@ -3555,6 +3555,7 @@ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ #include <sys/types.h>
+ #include <sys/socket.h>
++#include <stdio.h>
+ int
+ main ()
+ {
+@@ -4253,6 +4254,7 @@ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ #include <netdb.h>
++#include <stdio.h>
+ int
+ main ()
+ {
diff --git a/mail-filter/spamassassin/files/4.0.0-DnsResolver-udpsize.patch b/mail-filter/spamassassin/files/4.0.0-DnsResolver-udpsize.patch
new file mode 100644
index 000000000000..a9462c21433e
--- /dev/null
+++ b/mail-filter/spamassassin/files/4.0.0-DnsResolver-udpsize.patch
@@ -0,0 +1,16 @@
+https://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm?r1=1909910&r2=1909909&pathrev=1909910
+--- a/lib/Mail/SpamAssassin/DnsResolver.pm
++++ b/lib/Mail/SpamAssassin/DnsResolver.pm
+@@ -599,7 +599,11 @@
+ my $udp_payload_size = $self->{conf}->{dns_options}->{edns};
+ if ($udp_payload_size && $udp_payload_size > 512) {
+ # dbg("dns: adding EDNS ext, UDP payload size %d", $udp_payload_size);
+- $packet->edns->size($udp_payload_size);
++ if ($packet->edns->can('udpsize')) { # since Net::DNS 1.38
++ $packet->edns->udpsize($udp_payload_size);
++ } else {
++ $packet->edns->size($udp_payload_size);
++ }
+ }
+ }
+
diff --git a/mail-filter/spamassassin/files/4.0.0-sa-update-rdatastr.patch b/mail-filter/spamassassin/files/4.0.0-sa-update-rdatastr.patch
new file mode 100644
index 000000000000..415bc187865d
--- /dev/null
+++ b/mail-filter/spamassassin/files/4.0.0-sa-update-rdatastr.patch
@@ -0,0 +1,12 @@
+https://svn.apache.org/viewvc/spamassassin/trunk/sa-update.raw?r1=1910601&r2=1910600&pathrev=1910601
+--- a/sa-update.raw
++++ b/sa-update.raw
+@@ -1458,7 +1458,7 @@
+ next if !$rr; # no answer records, only rcode
+ next if $rr->type ne $rr_type;
+ # scalar context!
+- my $text = $rr->UNIVERSAL::can('txtdata') ? $rr->txtdata : $rr->rdatastr;
++ my $text = $rr->UNIVERSAL::can('txtdata') ? $rr->txtdata : $rr->rdstring;
+ push(@result,$text) if defined $text && $text ne '';
+ }
+ printf("DNS %s query: %s -> %s\n", $rr_type, $query, join(", ",@result))
diff --git a/mail-filter/spamassassin/files/4.0.0-tests-dnsbl_subtests.t.patch b/mail-filter/spamassassin/files/4.0.0-tests-dnsbl_subtests.t.patch
new file mode 100644
index 000000000000..6f2a4db0ad5c
--- /dev/null
+++ b/mail-filter/spamassassin/files/4.0.0-tests-dnsbl_subtests.t.patch
@@ -0,0 +1,14 @@
+https://bz.apache.org/SpamAssassin/show_bug.cgi?id=8095
+--- a/t/dnsbl_subtests.t
++++ b/t/dnsbl_subtests.t
+@@ -20,6 +20,10 @@
+
+ use Mail::SpamAssassin;
+
++tstpre ("
++ loadplugin Mail::SpamAssassin::Plugin::URIDNSBL
++");
++
+ # Bug 5761 (no 127.0.0.1 in jail, use SPAMD_LOCALHOST if specified)
+ my $dns_server_localaddr = $ENV{'SPAMD_LOCALHOST'};
+ if (!$dns_server_localaddr) {
diff --git a/mail-filter/spamassassin/files/4.0.0-tests-strip2.t.patch b/mail-filter/spamassassin/files/4.0.0-tests-strip2.t.patch
new file mode 100644
index 000000000000..94e1059259b5
--- /dev/null
+++ b/mail-filter/spamassassin/files/4.0.0-tests-strip2.t.patch
@@ -0,0 +1,20 @@
+https://bz.apache.org/SpamAssassin/show_bug.cgi?id=8096
+--- a/t/strip2.t
++++ b/t/strip2.t
+@@ -4,14 +4,15 @@
+ use SATest; sa_t_init("strip2");
+
+ use Test::More;
++use constant HAS_TEXTDIFF => eval { require Text::Diff; };
+ plan skip_all => 'Long running tests disabled' unless conf_bool('run_long_tests');
++plan skip_all => 'Need Text::Diff' unless HAS_TEXTDIFF;
+ plan tests => 98;
+
+ # ---------------------------------------------------------------------------
+
+ use File::Copy;
+ use File::Compare qw(compare_text);
+-use Text::Diff;
+
+ my @files = qw(
+ data/nice/crlf-endings
diff --git a/mail-filter/spamassassin/files/geoip-4.0.0.cf b/mail-filter/spamassassin/files/geoip-4.0.0.cf
new file mode 100644
index 000000000000..f4fc9802877a
--- /dev/null
+++ b/mail-filter/spamassassin/files/geoip-4.0.0.cf
@@ -0,0 +1,86 @@
+# GeoIP / RelayCountry Config
+#
+# The RelayCountry SpamAssassin plugin needs to be enabled
+# in init.pre, but it's suggested that you make configuration
+# changes here.
+#
+# See Also:
+# - https://wiki.apache.org/spamassassin/RelayCountryPlugin
+# - man Mail::SpamAssassin::Plugin::RelayCountry
+# - man Mail::SpamAssassin::Conf
+#
+# NOTE: This is a Gentoo supplied config file.
+#
+
+###############################################################
+#
+# CONFIGURATION
+#
+
+# Which type of Geo database to use. Valid database types are
+# GeoIP2, Geo::IP, DB_File and Fast. Tries them in that order
+# if not explicitly specified. GeoIP2 is the suggested backend
+# which uses dev-perl/GeoIP2.
+#
+# Default: Autodetect
+#
+#geodb_module GeoIP2
+
+# Specifies which DB type and where it is, in
+# dbtype:/path/to/db format. Multiple entries allowed.
+#
+# For GeoIP2 & GeoIP, geodb_options is only needed if the
+# default location search paths are insufficient. (Default
+# search paths includes /usr/share/GeoIP/.)
+#
+# See man Mail::SpamAssassin::Conf for details about what is
+# accepted and searched.
+#
+# Default: Autodetect
+#
+#geodb_options country:/usr/share/GeoIP/GeoLite2-Country.mmdb
+
+# Alternative to geodb_options. Overrides the default list of
+# directories to search for default filenames.
+#
+# Default: Autodetect
+#
+#geodb_search_path /path/to/GeoIP
+
+# The following will add a separate MIME header that shows all
+# the message's relay countries, independent of any site-
+# specific rules.
+#
+# It will show up in your MIME headers as:
+# X-Spam-Relay-Country: US CN RU
+#
+#add_header all Relay-Country _RELAYCOUNTRY_
+
+###############################################################
+#
+# SITE SPECIFIC RULES
+#
+
+# Country metadata will also be added to the Bayesian filtering
+# process, allowing it to learn information based on countries.
+# This will occur even if you don't define any site specific
+# rules.
+
+# NOTE: Many prefer placing custom rules in local.cf.
+
+# The following is an example of a rule that penalizes mail
+# that passed through China by increasing the spam score
+# of the message by 3 points.
+#
+#header RELAYCOUNTRY_BAD X-Relay-Countries =~ /CN/
+#describe RELAYCOUNTRY_BAD Relayed through China at some point
+#score RELAYCOUNTRY_BAD 3.0
+
+# And this is an example of a rule that rewards mail that
+# has first went through Finland or Sweden by reducing the
+# spam score of the message by 0.2 points.
+#
+#header RELAYCOUNTRY_GOOD X-Relay-Countries =~ /^(FI|SE)/
+#describe RELAYCOUNTRY_GOOD First untrusted relay is Finland or Sweden :-)
+#score RELAYCOUNTRY_GOOD -0.2
+
diff --git a/mail-filter/spamassassin/files/update-spamassassin-rules-r1.cron b/mail-filter/spamassassin/files/update-spamassassin-rules-r1.cron
index 7c6990b847cf..37c04f5b6ad8 100644
--- a/mail-filter/spamassassin/files/update-spamassassin-rules-r1.cron
+++ b/mail-filter/spamassassin/files/update-spamassassin-rules-r1.cron
@@ -19,7 +19,7 @@ if (( $? == 0 || $? == 3 )); then
# Do you run spamd or amavisd? Both daemons need to be reloaded
# in order to pick up the newly-updated rules.
- if command -v rc-service 2>/dev/null; then
+ if command -v rc-service >/dev/null; then
# OpenRC is installed. These "status" checks should succeed
# only when the daemon is running under OpenRC. We redirect
# stderr to hide the lecture that OpenRC gives you if you
@@ -28,14 +28,15 @@ if (( $? == 0 || $? == 3 )); then
rc-service amavisd status 2>/dev/null && rc-service amavisd reload
fi
- if command -v systemctl 2>/dev/null; then
+ if command -v systemctl >/dev/null; then
# The systemctl (systemd) executable is installed, so try to
# use it to restart spamd and amavisd. These are safe to run
# if systemd is installed but not in use. The is-active
# check is to keep systemctl from outputting warnings if
# amavisd is not installed (bug #681872).
systemctl try-restart spamassassin
- systemctl is-active --quiet amavisd \
- && systemctl try-reload-or-restart amavisd
+ if ( systemctl is-active --quiet amavisd ); then
+ systemctl try-reload-or-restart amavisd
+ fi
fi
fi
diff --git a/mail-filter/spamassassin/metadata.xml b/mail-filter/spamassassin/metadata.xml
index 8a287d20edae..eed78776735d 100644
--- a/mail-filter/spamassassin/metadata.xml
+++ b/mail-filter/spamassassin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>gentoo_bugs_peep@parallaxshift.com</email>
@@ -15,4 +15,7 @@
</flag>
<flag name="qmail">Build qmail functionality and docs</flag>
</use>
+ <upstream>
+ <remote-id type="github">apache/spamassassin</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/mail-filter/spamassassin/spamassassin-3.4.5.ebuild b/mail-filter/spamassassin/spamassassin-3.4.6-r2.ebuild
index f8162b0b210a..00513ca2e5bf 100644
--- a/mail-filter/spamassassin/spamassassin-3.4.5.ebuild
+++ b/mail-filter/spamassassin/spamassassin-3.4.6-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="berkdb cron ipv6 ldap mysql postgres qmail sqlite ssl test"
RESTRICT="!test? ( test )"
@@ -55,7 +55,7 @@ OPTDEPEND="app-crypt/gnupg
dev-util/re2c
|| ( net-misc/wget[ssl] net-misc/curl[ssl] )
virtual/perl-MIME-Base64
- virtual/perl-Pod-Parser
+ dev-perl/Pod-Parser
berkdb? ( virtual/perl-DB_File )
ipv6? ( dev-perl/IO-Socket-INET6 )
ldap? ( dev-perl/perl-ldap )
@@ -82,6 +82,7 @@ RDEPEND="${REQDEPEND} ${OPTDEPEND}"
PATCHES=(
"${FILESDIR}/mention-geoip.cf-in-init.pre.patch"
+ "${FILESDIR}/3.4.6-configure-clang16.patch"
)
# There are a few renames and use-dependent ones in src_istall as well.
diff --git a/mail-filter/spamassassin/spamassassin-3.4.6.ebuild b/mail-filter/spamassassin/spamassassin-4.0.0-r3.ebuild
index f052cccd1aea..ecbdfeb2c745 100644
--- a/mail-filter/spamassassin/spamassassin-3.4.6.ebuild
+++ b/mail-filter/spamassassin/spamassassin-4.0.0-r3.ebuild
@@ -1,19 +1,23 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit perl-functions systemd toolchain-funcs
+inherit perl-functions systemd toolchain-funcs verify-sig autotools
MY_P="Mail-SpamAssassin-${PV//_/-}"
-S="${WORKDIR}/${MY_P}"
DESCRIPTION="An extensible mail filter which can identify and tag spam"
HOMEPAGE="https://spamassassin.apache.org/"
-SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2"
+SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2
+ verify-sig? (
+ https://downloads.apache.org/spamassassin/source/${MY_P}.tar.bz2.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="berkdb cron ipv6 ldap mysql postgres qmail sqlite ssl test"
RESTRICT="!test? ( test )"
@@ -26,10 +30,7 @@ REQDEPEND="acct-user/spamd
dev-perl/HTML-Parser
dev-perl/Net-DNS
dev-perl/NetAddr-IP
- virtual/perl-Archive-Tar
virtual/perl-Digest-SHA
- virtual/perl-IO-Zlib
- virtual/perl-Time-HiRes
ssl? (
dev-libs/openssl:0=
)"
@@ -43,19 +44,22 @@ REQDEPEND="acct-user/spamd
# We still need the old Digest-SHA1 because razor2 has not been ported
# to Digest-SHA.
OPTDEPEND="app-crypt/gnupg
+ dev-perl/Archive-Zip
dev-perl/BSD-Resource
dev-perl/Digest-SHA1
+ dev-perl/Email-Address-XS
dev-perl/Encode-Detect
|| ( dev-perl/GeoIP2 dev-perl/Geo-IP )
- dev-perl/HTTP-Date
+ dev-perl/IO-String
dev-perl/Mail-DKIM
+ dev-perl/Mail-DMARC
dev-perl/Mail-SPF
dev-perl/Net-Patricia
- dev-perl/Net-CIDR-Lite
+ dev-perl/Net-LibIDN2
dev-util/re2c
|| ( net-misc/wget[ssl] net-misc/curl[ssl] )
virtual/perl-MIME-Base64
- virtual/perl-Pod-Parser
+ dev-perl/Pod-Parser
berkdb? ( virtual/perl-DB_File )
ipv6? ( dev-perl/IO-Socket-INET6 )
ldap? ( dev-perl/perl-ldap )
@@ -79,12 +83,19 @@ DEPEND="${REQDEPEND}
virtual/perl-Test-Harness
)"
RDEPEND="${REQDEPEND} ${OPTDEPEND}"
+BDEPEND="${RDEPEND}
+ verify-sig? ( sec-keys/openpgp-keys-spamassassin )"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/spamassassin.apache.org.asc
PATCHES=(
"${FILESDIR}/mention-geoip.cf-in-init.pre.patch"
+ "${FILESDIR}/4.0.0-tests-dnsbl_subtests.t.patch"
+ "${FILESDIR}/4.0.0-tests-strip2.t.patch"
+ "${FILESDIR}/4.0.0-DnsResolver-udpsize.patch"
)
-# There are a few renames and use-dependent ones in src_istall as well.
+# There are a few renames and use-dependent ones in src_install as well.
DOCS=(
NOTICE TRADEMARK CREDITS UPGRADE USAGE sql/README.bayes
sql/README.awl procmailrc.example sample-nonspam.txt
@@ -140,6 +151,13 @@ src_configure() {
|| die 'failed to create a Makefile using Makefile.PL'
# Now configure spamc.
+
+ # Run autoreconf to avoid some issues caused by a standard test in the
+ # current autoconf. Expected to be fixed in next autoconf release, so
+ # these next 3 lines might not be needed for long. See bug #899782.
+ pushd spamc >/dev/null
+ eautoreconf
+ popd >/dev/null
emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" spamc/Makefile
}
@@ -182,7 +200,7 @@ src_install () {
newdoc ldap/README README.ldap
insinto /etc/mail/spamassassin/
- doins "${FILESDIR}"/geoip.cf
+ newins "${FILESDIR}"/geoip-4.0.0.cf geoip.cf
insopts -m0400
newins "${FILESDIR}"/secrets.cf secrets.cf.example
diff --git a/mail-filter/spamassassin/spamassassin-4.0.0-r4.ebuild b/mail-filter/spamassassin/spamassassin-4.0.0-r4.ebuild
new file mode 100644
index 000000000000..c08c4884139a
--- /dev/null
+++ b/mail-filter/spamassassin/spamassassin-4.0.0-r4.ebuild
@@ -0,0 +1,340 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit perl-functions systemd toolchain-funcs verify-sig autotools
+
+MY_P="Mail-SpamAssassin-${PV//_/-}"
+DESCRIPTION="An extensible mail filter which can identify and tag spam"
+HOMEPAGE="https://spamassassin.apache.org/"
+SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2
+ verify-sig? (
+ https://downloads.apache.org/spamassassin/source/${MY_P}.tar.bz2.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-2.0 GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="berkdb cron ipv6 ldap mysql postgres qmail sqlite ssl test"
+RESTRICT="!test? ( test )"
+
+# The Makefile.PL script checks for dependencies, but only fails if a
+# required (i.e. not optional) dependency is missing. We therefore
+# require most of the optional modules only at runtime.
+REQDEPEND="acct-user/spamd
+ acct-group/spamd
+ dev-lang/perl:=
+ dev-perl/HTML-Parser
+ dev-perl/Net-DNS
+ dev-perl/NetAddr-IP
+ virtual/perl-Digest-SHA
+ ssl? (
+ dev-libs/openssl:0=
+ )"
+
+# SpamAssassin doesn't use libwww-perl except as a fallback for when
+# curl/wget are missing, so we depend on one of those instead. Some
+# mirrors use https, so we need those utilities to support SSL.
+#
+# re2c is needed to compile the rules (sa-compile).
+#
+# We still need the old Digest-SHA1 because razor2 has not been ported
+# to Digest-SHA.
+OPTDEPEND="app-crypt/gnupg
+ dev-perl/Archive-Zip
+ dev-perl/BSD-Resource
+ dev-perl/Digest-SHA1
+ dev-perl/Email-Address-XS
+ dev-perl/Encode-Detect
+ || ( dev-perl/GeoIP2 dev-perl/Geo-IP )
+ dev-perl/IO-String
+ dev-perl/Mail-DKIM
+ dev-perl/Mail-DMARC
+ dev-perl/Mail-SPF
+ dev-perl/Net-Patricia
+ dev-perl/Net-LibIDN2
+ dev-util/re2c
+ || ( net-misc/wget[ssl] net-misc/curl[ssl] )
+ virtual/perl-MIME-Base64
+ dev-perl/Pod-Parser
+ berkdb? ( virtual/perl-DB_File )
+ ipv6? ( dev-perl/IO-Socket-INET6 )
+ ldap? ( dev-perl/perl-ldap )
+ mysql? (
+ dev-perl/DBI
+ dev-perl/DBD-mysql
+ )
+ postgres? (
+ dev-perl/DBI
+ dev-perl/DBD-Pg
+ )
+ sqlite? (
+ dev-perl/DBI
+ dev-perl/DBD-SQLite
+ )
+ ssl? ( dev-perl/IO-Socket-SSL )"
+
+DEPEND="${REQDEPEND}
+ test? (
+ ${OPTDEPEND}
+ virtual/perl-Test-Harness
+ )"
+RDEPEND="${REQDEPEND} ${OPTDEPEND}"
+BDEPEND="${RDEPEND}
+ verify-sig? ( sec-keys/openpgp-keys-spamassassin )"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/spamassassin.apache.org.asc
+
+PATCHES=(
+ "${FILESDIR}/mention-geoip.cf-in-init.pre.patch"
+ "${FILESDIR}/4.0.0-tests-dnsbl_subtests.t.patch"
+ "${FILESDIR}/4.0.0-tests-strip2.t.patch"
+ "${FILESDIR}/4.0.0-DnsResolver-udpsize.patch"
+ "${FILESDIR}/4.0.0-sa-update-rdatastr.patch"
+)
+
+# There are a few renames and use-dependent ones in src_install as well.
+DOCS=(
+ NOTICE TRADEMARK CREDITS UPGRADE USAGE sql/README.bayes
+ sql/README.awl procmailrc.example sample-nonspam.txt
+ sample-spam.txt spamd/PROTOCOL spamd/README.vpopmail
+ spamd-apache2/README.apache
+)
+
+src_prepare() {
+ default
+
+ # The sa_compile test does some weird stuff like hopping around in
+ # the directory tree and calling "make" to create a dist tarball
+ # from ${S}. It fails, and is more trouble than it's worth...
+ perl_rm_files t/sa_compile.t
+
+ # The spamc tests (which need the networked spamd daemon) fail for
+ # irrelevant reasons. It's too hard to disable them (unlike the
+ # spamd tests themselves -- see src_test), so use a crude
+ # workaround.
+ perl_rm_files t/spamc_*.t
+
+ # Some tests need extra dependencies
+ # e.g. t/sql_based_whitelist.t needs DBD
+ # This is kinder than REQUIRED_USE for tests which hurts automation
+ if ! use mysql && ! use postgres && ! use sqlite ; then
+ perl_rm_files t/sql_based_whitelist.t
+ fi
+
+ # Disable plugin by default
+ sed -i -e 's/^loadplugin/\#loadplugin/g' \
+ "rules/init.pre" \
+ || die "failed to disable plugins by default"
+}
+
+src_configure() {
+ # This is how and where the perl-module eclass disables the
+ # MakeMaker interactive prompt.
+ export PERL_MM_USE_DEFAULT=1
+
+ # Set SYSCONFDIR explicitly so we can't get bitten by bug 48205 again
+ # (just to be sure, nobody knows how it could happen in the first place).
+ #
+ # We also set the path to the perl executable explictly. This will be
+ # used to create the initial shebang line in the scripts (bug 62276).
+ perl Makefile.PL \
+ PREFIX="${EPREFIX}/usr" \
+ INSTALLDIRS=vendor \
+ SYSCONFDIR="${EPREFIX}/etc" \
+ DATADIR="${EPREFIX}/usr/share/spamassassin" \
+ PERL_BIN="${EPREFIX}/usr/bin/perl" \
+ ENABLE_SSL="$(usex ssl)" \
+ DESTDIR="${D}" \
+ || die 'failed to create a Makefile using Makefile.PL'
+
+ # Now configure spamc.
+
+ # Run autoreconf to avoid some issues caused by a standard test in the
+ # current autoconf. Expected to be fixed in next autoconf release, so
+ # these next 3 lines might not be needed for long. See bug #899782.
+ pushd spamc >/dev/null
+ eautoreconf
+ popd >/dev/null
+ emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" spamc/Makefile
+}
+
+src_compile() {
+ emake
+ use qmail && emake spamc/qmail-spamc
+}
+
+src_install () {
+ default
+
+ # Create the stub dir used by sa-update and friends
+ keepdir /var/lib/spamassassin
+
+ # Move spamd to sbin where it belongs.
+ dodir /usr/sbin
+ mv "${ED}"/usr/bin/spamd "${ED}"/usr/sbin/spamd || die "move spamd failed"
+
+ if use qmail; then
+ dobin spamc/qmail-spamc
+ fi
+
+ dosym mail/spamassassin /etc/spamassassin
+
+ # Add the init and config scripts.
+ newinitd "${FILESDIR}/3.4.1-spamd.init-r3" spamd
+ newconfd "${FILESDIR}/3.4.1-spamd.conf-r1" spamd
+
+ systemd_newunit "${FILESDIR}/${PN}.service-r4" "${PN}.service"
+ systemd_install_serviced "${FILESDIR}/${PN}.service.conf-r2" \
+ "${PN}.service"
+
+ use postgres && dodoc sql/*_pg.sql
+ use mysql && dodoc sql/*_mysql.sql
+ use qmail && dodoc spamc/README.qmail
+
+ # Rename some files so that they don't clash with others.
+ newdoc spamd/README README.spamd
+ newdoc sql/README README.sql
+ newdoc ldap/README README.ldap
+
+ insinto /etc/mail/spamassassin/
+ newins "${FILESDIR}"/geoip-4.0.0.cf geoip.cf
+ insopts -m0400
+ newins "${FILESDIR}"/secrets.cf secrets.cf.example
+
+ # Create the directory where sa-update stores its GPG key (if you
+ # choose to import one). If this directory does not exist, the
+ # import will fail. This is bug 396307. We expect that the import
+ # will be performed as root, and making the directory accessible
+ # only to root prevents a warning on the command-line.
+ diropts -m0700
+ dodir /etc/mail/spamassassin/sa-update-keys
+
+ if use cron; then
+ # Install the cron job if they want it.
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}/update-spamassassin-rules-r1.cron" \
+ update-spamassassin-rules
+ fi
+
+ # Remove perllocal.pod to avoid file collisions (bug #603338).
+ perl_delete_localpod
+
+ # The perl-module eclass calls three other functions to clean
+ # up in src_install. The first fixes references to ${D} in the
+ # packlist, and is useful to us, too. The other two functions,
+ # perl_delete_emptybsdir and perl_remove_temppath, don't seem
+ # to be needed: there are no empty directories, *.bs files, or
+ # ${D} paths remaining in our installed image.
+ perl_fix_packlist
+}
+
+src_test() {
+ # Trick the test suite into skipping the spamd tests. Setting
+ # SPAMD_HOST to a non-localhost value causes SKIP_SPAMD_TESTS to be
+ # set in SATest.pm.
+ export SPAMD_HOST=disabled
+ default
+}
+
+pkg_preinst() {
+ if use mysql || use postgres ; then
+ local _awlwarn=0
+ local _v
+ for _v in ${REPLACING_VERSIONS}; do
+ if ver_test "${_v}" -lt "3.4.3"; then
+ _awlwarn=1
+ break
+ fi
+ done
+ if [[ ${_awlwarn} == 1 ]] ; then
+ ewarn 'If you used AWL before 3.4.3, the SQL schema has changed.'
+ ewarn 'You will need to manually ALTER your tables for them to'
+ ewarn 'continue working. See the UPGRADE documentation for'
+ ewarn 'details.'
+ ewarn
+ fi
+ fi
+}
+
+pkg_postinst() {
+ elog
+ elog 'No rules are installed by default. You will need to run sa-update'
+ elog 'at least once, and most likely configure SpamAssassin before it'
+ elog 'will work.'
+
+ if ! use cron; then
+ elog
+ elog 'You should consider a cron job for sa-update. One is provided'
+ elog 'for daily updates if you enable the "cron" USE flag.'
+ fi
+ elog
+ elog 'Configuration and update help can be found on the wiki:'
+ elog
+ elog ' https://wiki.gentoo.org/wiki/SpamAssassin'
+ elog
+
+ if use mysql || use postgres ; then
+ local _v
+ for _v in ${REPLACING_VERSIONS}; do
+ if ver_test "${_v}" -lt "3.4.3"; then
+ ewarn
+ ewarn 'If you used AWL before 3.4.3, the SQL schema has changed.'
+ ewarn 'You will need to manually ALTER your tables for them to'
+ ewarn 'continue working. See the UPGRADE documentation for'
+ ewarn 'details.'
+ ewarn
+
+ # show this only once
+ break
+ fi
+ done
+ fi
+
+ ewarn 'If this version of SpamAssassin causes permissions issues'
+ ewarn 'with your user configurations or bayes databases, then you'
+ ewarn 'may need to set SPAMD_RUN_AS_ROOT=true in your OpenRC service'
+ ewarn 'configuration file, or remove the --username and --groupname'
+ ewarn 'flags from the SPAMD_OPTS variable in your systemd service'
+ ewarn 'configuration file.'
+
+ if [[ ! ~spamd -ef "${ROOT}/var/lib/spamd" ]] ; then
+ ewarn "The spamd user's home folder has been moved to a new location."
+ elog
+ elog "The acct-user/spamd package should have relocated it for you,"
+ elog "but may have failed because your spamd daemon was running."
+ elog
+ elog "To fix this:"
+ elog " - Stop your spamd daemon"
+ elog " - emerge -1 acct-user/spamd"
+ elog " - Restart your spamd daemon"
+ elog " - Remove the old home folder if you want"
+ elog " rm -rf \"${ROOT}/home/spamd\""
+ fi
+ if [[ -e "${ROOT}/home/spamd" ]] ; then
+ ewarn
+ ewarn "The spamd user's home folder has been moved to a new location."
+ elog
+ elog " Old Home: ${ROOT}/home/spamd"
+ elog " New Home: ${ROOT}/var/lib/spamd"
+ elog
+ elog "You may wish to migrate your data to the new location:"
+ elog " - Stop your spamd daemon"
+ elog " - Re-emerge acct-user/spamd to ensure the home folder has been"
+ elog " updated to the new location, now that the daemon isn't running:"
+ elog " # emerge -1 acct-user/spamd"
+ elog " # echo ~spamd"
+ elog " - Migrate the contents from the old location to the new home"
+ elog " For example:"
+ elog " # cp -Rpi \"${ROOT}/home/spamd/\" \"${ROOT}/var/lib/\""
+ elog " - Remove the old home folder"
+ elog " # rm -rf \"${ROOT}/home/spamd\""
+ elog " - Restart your spamd daemon"
+ elog
+ elog "If you do not wish to migrate data, you should remove the old"
+ elog "home folder from your system as it is not used."
+ fi
+}
diff --git a/mail-filter/spamdyke/Manifest b/mail-filter/spamdyke/Manifest
deleted file mode 100644
index cefbe306c96c..000000000000
--- a/mail-filter/spamdyke/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST spamdyke-5.0.1.tgz 383720 BLAKE2B 5128ef128af1b136e9a78df6e38f727d06e51bae82cb604513f80458265eee03d5966655ae70544d6ba24f0719c35dcc9a153e245a8c2c7ef1f7dab3ee90e561 SHA512 a022c8a8d4a8d74f5249f8e2d901d3de423ee853bbaffaf7e86cece1d19880d9039135892ef6ccb8a2a0fb11532c487402dc97a8dd6d89c9de431752c55f6eb9
diff --git a/mail-filter/spamdyke/metadata.xml b/mail-filter/spamdyke/metadata.xml
deleted file mode 100644
index c7cfde448e73..000000000000
--- a/mail-filter/spamdyke/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-<longdescription lang="en">
-spamdyke is a filter for monitoring and intercepting SMTP connections between a
-remote host and a qmail server. Spam is blocked while the remote server
-(spammer) is still connected; no additional processing or storage is needed.
-
-In addition to all of its anti-spam filters, spamdyke also includes a number of
-features to enhance qmail.
-
-Best of all, using spamdyke does not require patching or recompiling qmail!
-</longdescription>
-<use>
- <flag name="ssl">Enables TLS protocol for spamdyke</flag>
-</use>
-</pkgmetadata>
diff --git a/mail-filter/spamdyke/spamdyke-5.0.1.ebuild b/mail-filter/spamdyke/spamdyke-5.0.1.ebuild
deleted file mode 100644
index 27c11ebaf741..000000000000
--- a/mail-filter/spamdyke/spamdyke-5.0.1.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools
-
-DESCRIPTION="A drop-in connection-time spam filter for qmail"
-HOMEPAGE="http://www.spamdyke.org/"
-SRC_URI="http://www.spamdyke.org/releases/${P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+ssl"
-
-DEPEND="
- ssl? (
- dev-libs/openssl:0=
- )"
-
-RDEPEND="
- ${DEPEND}
- virtual/qmail"
-
-S="${WORKDIR}/${P}/${PN}"
-
-src_prepare() {
- echo "# Configuration option for ${PN}" > ${PN}.conf || die
- if use ssl; then
- echo "tls-certificate-file=/var/qmail/control/clientcert.pem" \
- >> ${PN}.conf || die
- fi
- cat <<- EOF >> ${PN}.conf || die
-graylist-level=always-create-dir
-graylist-dir=/var/tmp/${PN}/graylist
-reject-empty-rdns
-reject-unresolvable-rdns
-dns-blacklist-entry=zen.spamhaus.org
-local-domains-file=/var/qmail/control/rcpthosts
-EOF
- sed -i \
- -e "/STRIP_CMD/d" \
- Makefile.in || die "sed on Makefile.in failed"
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable ssl tls)
- cd ../utils || die
- econf
-}
-
-src_compile() {
- emake CFLAGS="${CFLAGS}"
- cd ../utils
- emake CFLAGS="${CFLAGS}"
-}
-
-src_install() {
- insinto /etc/${PN}
- doins ${PN}.conf
- dodir /var/tmp/${PN}/graylist
- fowners -R qmaild /var/tmp/${PN}/graylist
- cd ../utils || die
- dobin domain2path
- cd ../documentation || die
- dodoc {Changelog,INSTALL,UPGRADING}.txt
- dohtml FAQ.html \
- README.html \
- README_ip_file_format.html \
- README_rdns_directory_format.html \
- README_rdns_file_format.html
-}
-
-pkg_postinst() {
- ewarn "Change /var/qmail/control/conf-common:SOFTLIMIT_OPTS="-m 16000000""
- ewarn "to 32000000 or spamdyke will fail to load"
- elog "In /var/qmail/control/conf-smtpd insert the line:"
- elog "QMAIL_SMTP_PRE=\"${QMAIL_SMTP_PRE} spamdyke -f /etc/${PN}/${PN}.conf\""
- elog "Run spamdyke with the '-h' flag to see the available options and"
- elog "update /etc/spamdyke/spamdyke.conf accordingly"
-}
diff --git a/mail-filter/spampd/Manifest b/mail-filter/spampd/Manifest
index 5c8eb31c7cee..34c544eee5d3 100644
--- a/mail-filter/spampd/Manifest
+++ b/mail-filter/spampd/Manifest
@@ -1 +1 @@
-DIST spampd-2.42.tar.gz 202504 BLAKE2B 9ad74d3199345ba54c613fa928cfd177fded551ca304dd22c802b996b95e2905d40d92bfa25d7c64b823b2357c657f283c9550b635f3188fbbb42fb793cd2b8d SHA512 5c44b5902efd6c628fb62887b755012b137940d7d687f5d9489e5f96623d6eeca5f3641a76fe3b2ce8585040c3661e19df981c612cdb1a767b4a46fec982fa4e
+DIST spampd-2.61.tar.gz 246956 BLAKE2B de2b428fbed80ba6d65bd2b249a3adfb00cd0a33df21b71676da1949b680dbfee72412ae2c752f4e5dcf9f7f7349ae59ce94f81b2abae5fd4de34d3a92954fbb SHA512 e2f84c4b24648d4f4db70174f04b72981faa1c54ffc4bbc433d14c730ef4ad7fd4cd3772a476f25be0bee103e951700d038634d14848f1eb90849d1a6655199b
diff --git a/mail-filter/spampd/files/init b/mail-filter/spampd/files/init
index 7a5171e46034..339a938d9c7d 100644
--- a/mail-filter/spampd/files/init
+++ b/mail-filter/spampd/files/init
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Note: spampd configuration file is /etc/conf.d/spampd
@@ -10,14 +10,14 @@ depend() {
start() {
ebegin "Starting spampd"
- start-stop-daemon --start --quiet \
- --exec /usr/sbin/spampd -- --pid=/var/run/spampd.pid \
+ start-stop-daemon --start --quiet --interpreted \
+ --exec /usr/sbin/spampd -- --pid=/run/spampd.pid \
${SPAMPD_OPTS}
eend $? "Failed to start spampd"
}
stop() {
ebegin "Stopping spampd"
- start-stop-daemon --stop --quiet --pidfile /var/run/spampd.pid
+ start-stop-daemon --stop --quiet --retry 60 --pidfile /run/spampd.pid
eend $? "Failed to stop spampd"
}
diff --git a/mail-filter/spampd/files/init-r1 b/mail-filter/spampd/files/init-r1
deleted file mode 100644
index b6402e4b5b55..000000000000
--- a/mail-filter/spampd/files/init-r1
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# Note: spampd configuration file is /etc/conf.d/spampd
-
-depend() {
- use net
-}
-
-start() {
- ebegin "Starting spampd"
- start-stop-daemon --start --quiet \
- --exec /usr/sbin/spampd.pl -- --pid=/run/spampd.pid \
- ${SPAMPD_OPTS}
- eend $? "Failed to start spampd"
-}
-
-stop() {
- ebegin "Stopping spampd"
- start-stop-daemon --stop --quiet --pidfile /run/spampd.pid
- eend $? "Failed to stop spampd"
-}
diff --git a/mail-filter/spampd/files/spampd-2.61-no-pid-file.patch b/mail-filter/spampd/files/spampd-2.61-no-pid-file.patch
new file mode 100644
index 000000000000..b5151e11f8a5
--- /dev/null
+++ b/mail-filter/spampd/files/spampd-2.61-no-pid-file.patch
@@ -0,0 +1,11 @@
+diff -ruN spampd-2.61-v/spampd.pl spampd-2.61/spampd.pl
+--- spampd-2.61-v/spampd.pl 2021-08-07 06:01:37.000000000 +1000
++++ spampd-2.61/spampd.pl 2021-08-13 03:48:34.527166029 +1000
+@@ -761,6 +761,7 @@
+
+ # Set misc. options based on other options.
+ $srv_p->{setsid}= 0 if !$srv_p->{background};
++ $srv_p->{pid_file} = undef if !$srv_p->{background};
+ $sa_p->{home_dir_for_helpers} = $sa_p->{userstate_dir};
+ $sa_p->{username} = $srv_p->{user};
+ }
diff --git a/mail-filter/spampd/files/spampd.service b/mail-filter/spampd/files/spampd.service
new file mode 100644
index 000000000000..78ef5520323c
--- /dev/null
+++ b/mail-filter/spampd/files/spampd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=SpamAssassin Proxy Daemon
+Before=mail-transfer-agent.target
+After=syslog.target network.target
+
+[Service]
+ExecStart=/usr/sbin/spampd --nodetach $SPAMPD_OPTS
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/mail-filter/spampd/files/spampd.service.conf b/mail-filter/spampd/files/spampd.service.conf
new file mode 100644
index 000000000000..1c2d9c1154e1
--- /dev/null
+++ b/mail-filter/spampd/files/spampd.service.conf
@@ -0,0 +1,5 @@
+[Service]
+User=mail
+Group=mail
+Environment="SPAMPD_OPTS=--host=localhost:10025 --relayhost=localhost:10026 --tagall --set-envelope-from"
+
diff --git a/mail-filter/spampd/metadata.xml b/mail-filter/spampd/metadata.xml
index 5bf3244d0c7f..d234c5d9d066 100644
--- a/mail-filter/spampd/metadata.xml
+++ b/mail-filter/spampd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/spampd/spampd-2.42.ebuild b/mail-filter/spampd/spampd-2.42.ebuild
deleted file mode 100644
index 357e81734992..000000000000
--- a/mail-filter/spampd/spampd-2.42.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="spampd is a program to scan messages for Unsolicited Commercial E-mail content"
-HOMEPAGE="http://www.worlddesign.com/index.cfm/rd/mta/spampd.htm"
-SRC_URI="https://github.com/mpaperno/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc x86"
-IUSE=""
-
-RDEPEND="dev-lang/perl
- dev-perl/Net-Server
- mail-filter/spamassassin"
-DEPEND="${RDEPEND}"
-
-src_install() {
- dosbin spampd.pl
- dodoc changelog.txt misc/spampd-rh-rc-script.sh misc/spampd.service
- dohtml spampd.html
- newinitd "${FILESDIR}"/init-r1 spampd
- newconfd "${FILESDIR}"/conf spampd
-}
diff --git a/mail-filter/spampd/spampd-2.61.ebuild b/mail-filter/spampd/spampd-2.61.ebuild
new file mode 100644
index 000000000000..8650eff99a70
--- /dev/null
+++ b/mail-filter/spampd/spampd-2.61.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+DESCRIPTION="A program to scan messages for Unsolicited Commercial E-mail content"
+HOMEPAGE="http://www.worlddesign.com/index.cfm/rd/mta/spampd.htm https://github.com/mpaperno/spampd"
+SRC_URI="https://github.com/mpaperno/spampd/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc x86"
+
+RDEPEND="acct-group/mail
+ acct-user/mail
+ dev-lang/perl
+ dev-perl/Net-Server
+ mail-filter/spamassassin
+ virtual/perl-IO-Socket-IP"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-lang/perl"
+
+PATCHES=(
+ "${FILESDIR}/${P}-no-pid-file.patch"
+)
+
+src_compile() {
+ mv ${PN}.pl ${PN} || die
+ pod2man ${PN}.pod > ${PN}.1 || die
+}
+
+src_install() {
+ dosbin ${PN}
+
+ dodoc changelog.txt
+ doman ${PN}.1
+
+ newinitd "${FILESDIR}"/init spampd
+ newconfd "${FILESDIR}"/conf spampd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+ systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
+}
diff --git a/mail-filter/spamprobe/files/spamprobe-1.4d-gcc11-const-comp.patch b/mail-filter/spamprobe/files/spamprobe-1.4d-gcc11-const-comp.patch
new file mode 100644
index 000000000000..1eec9cc6ee02
--- /dev/null
+++ b/mail-filter/spamprobe/files/spamprobe-1.4d-gcc11-const-comp.patch
@@ -0,0 +1,13 @@
+diff --git a/src/includes/LRUCache.h b/src/includes/LRUCache.h
+index cf7df30..50467d5 100644
+--- a/src/includes/LRUCache.h
++++ b/src/includes/LRUCache.h
+@@ -60,7 +60,7 @@ public:
+ {
+ public:
+ bool operator()(const NodeType *a,
+- const NodeType *b)
++ const NodeType *b) const
+ {
+ return a->key < b->key;
+ }
diff --git a/mail-filter/spamprobe/metadata.xml b/mail-filter/spamprobe/metadata.xml
index cd1df7d47104..8428aa6c4afc 100644
--- a/mail-filter/spamprobe/metadata.xml
+++ b/mail-filter/spamprobe/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/mail-filter/spamprobe/spamprobe-1.4d-r2.ebuild b/mail-filter/spamprobe/spamprobe-1.4d-r2.ebuild
index dfe97b87b27f..8ff7226aac12 100644
--- a/mail-filter/spamprobe/spamprobe-1.4d-r2.ebuild
+++ b/mail-filter/spamprobe/spamprobe-1.4d-r2.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
DESCRIPTION="Fast, intelligent, automatic spam detector using Bayesian analysis"
HOMEPAGE="http://spamprobe.sourceforge.net/"
@@ -26,6 +26,7 @@ PATCHES=(
"${FILESDIR}"/${P}+db-5.0.patch
"${FILESDIR}"/${P}-gcc47.patch
"${FILESDIR}"/${P}-giflib5.patch
+ "${FILESDIR}"/${P}-gcc11-const-comp.patch
)
src_configure() {
@@ -37,6 +38,7 @@ src_configure() {
src_install() {
default
+
insinto /usr/share/${PN}/contrib
doins contrib/*
}
diff --git a/mail-filter/spamprobe/spamprobe-1.4d-r3.ebuild b/mail-filter/spamprobe/spamprobe-1.4d-r3.ebuild
new file mode 100644
index 000000000000..a3dc63ef9f30
--- /dev/null
+++ b/mail-filter/spamprobe/spamprobe-1.4d-r3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Fast, intelligent, automatic spam detector using Bayesian analysis"
+HOMEPAGE="https://spamprobe.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="QPL-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="berkdb gif jpeg png"
+
+RDEPEND="
+ berkdb? ( >=sys-libs/db-3.2:* )
+ gif? ( media-libs/giflib:= )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ png? ( media-libs/libpng:0= )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4b-gcc43.patch
+ "${FILESDIR}"/${P}-libpng14.patch
+ "${FILESDIR}"/${P}+db-5.0.patch
+ "${FILESDIR}"/${P}-gcc47.patch
+ "${FILESDIR}"/${P}-giflib5.patch
+ "${FILESDIR}"/${P}-gcc11-const-comp.patch
+)
+
+src_configure() {
+ econf \
+ $(use_with gif) \
+ $(use_with jpeg) \
+ $(use_with png)
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+
+ insinto /usr/share/${PN}/contrib
+ doins contrib/*
+}
diff --git a/mail-filter/spf-engine/Manifest b/mail-filter/spf-engine/Manifest
index e26a6abe5232..cfeb6a304f68 100644
--- a/mail-filter/spf-engine/Manifest
+++ b/mail-filter/spf-engine/Manifest
@@ -1,2 +1,2 @@
-DIST pypolicyd-spf-2.0.2.tar.gz 38546 BLAKE2B 691cd5db37592be0ef0cda41223280e764e83802e37563f4e6c08505731118199c03d27b0bf51cec0556aa946fc6c7465fe09d3c9100c8e2582a4d85ad828495 SHA512 adcc7b30c6922894f9407edd0637b02a138623f4480ec37635475396826b457c835b3ffb599d1985e306770fe5f72404552ed705bd957e63b5c54ca3d8991673
-DIST spf-engine-2.9.2.tar.gz 52737 BLAKE2B 39d6c9831ef3ea489f2910fcbcaec9b2bed627f02459e20826166f04a2fe895aecf83768a3446a037e4231cc317ee277f6ff8e9030c72d8819739f6af889d632 SHA512 fe1fe82411ed4d6fcfadccd6ccc9fbd36372b4676051aafa5984740cba862336b00567576b3e32451cd24b0cfcd992d7dfdee33f0cf65a35f4009837e99b8f98
+DIST spf-engine-3.0.3.tar.gz 61350 BLAKE2B f28dfb10559bfd61be152a4b65a5653ec50b25718fcb63f8a2c9532fd9d52a51c131c99ba5408bd6aa424adc5ce6094da7eeb97dbacd7e60e8abb48c65c4f188 SHA512 08db392d2cce16651ba416fcd265e6606e1a8af3cb88721ed149a2286d11ac9ea6ed4d01572cea6950740890c3334e8e0d496d1d1e9edcc29d04833fec049ab0
+DIST spf-engine-3.0.4.tar.gz 61428 BLAKE2B b4c1e920cdb6706650341a21abe21a3318649a3bd379aea2d16c30bb9d27d95b83b980dfb0f62c234627f3c87b4d82f6074b88eb0f4ccb878618f61f9d8b9827 SHA512 29a6cd4d2c94ef1d47ff6d6d03bd485961f8c01e838800dd8c1194a51fdfbf384ffb5f073e1262993cd2bb5cbf2eff645048d6f1f3ce57bdebfefe3d0425ee77
diff --git a/mail-filter/spf-engine/metadata.xml b/mail-filter/spf-engine/metadata.xml
index 9d7516779a0b..9a9efb07d3fe 100644
--- a/mail-filter/spf-engine/metadata.xml
+++ b/mail-filter/spf-engine/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
diff --git a/mail-filter/spf-engine/spf-engine-2.0.2-r1.ebuild b/mail-filter/spf-engine/spf-engine-2.0.2-r1.ebuild
deleted file mode 100644
index 14de72aa96c2..000000000000
--- a/mail-filter/spf-engine/spf-engine-2.0.2-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_7 python3_8 )
-
-# The built-in ipaddress module handles the parsing of IP addresses. If
-# python is built without ipv6 support, then ipaddress can't parse ipv6
-# addresses, and the daemon will crash if it sees an ipv6 SPF record. In
-# other words, it's completely broken.
-PYTHON_REQ_USE="ipv6"
-
-DISTUTILS_USE_SETUPTOOLS=no
-inherit distutils-r1
-
-OLD_PN="pypolicyd-spf"
-OLD_P="${OLD_PN}-${PV}"
-OLD_PF="${PN}-${PVR}"
-DESCRIPTION="Python-based policy daemon for Postfix SPF verification"
-HOMEPAGE="https://launchpad.net/pypolicyd-spf"
-SRC_URI="mirror://pypi/p/${OLD_PN}/${OLD_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND="dev-python/pyspf[${PYTHON_USEDEP}]"
-
-RDEPEND="${DEPEND}
- dev-python/authres[${PYTHON_USEDEP}]"
-
-S="${WORKDIR}/${OLD_P}"
-
-DOCS=( CHANGES policyd-spf.conf.commented README README.per_user_whitelisting )
-
-python_prepare_all() {
- # The "real" config file mentions the commented one, so we point
- # users in the right direction.
- local oldconf="policyd-spf.conf.commented"
- local newconf="/usr/share/doc/${OLD_PF}/${oldconf}"
-
- sed -i "1 s~ ${oldconf}~,\n# ${newconf}~" policyd-spf.conf \
- || die 'failed to update commented config file path'
-
- distutils-r1_python_prepare_all
-}
diff --git a/mail-filter/spf-engine/spf-engine-2.9.2.ebuild b/mail-filter/spf-engine/spf-engine-2.9.2.ebuild
deleted file mode 100644
index 8ce61a814053..000000000000
--- a/mail-filter/spf-engine/spf-engine-2.9.2.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_7 python3_8 )
-
-# The built-in ipaddress module handles the parsing of IP addresses. If
-# python is built without ipv6 support, then ipaddress can't parse ipv6
-# addresses, and the daemon will crash if it sees an ipv6 SPF record. In
-# other words, it's completely broken.
-PYTHON_REQ_USE="ipv6"
-
-# setup.py defines entry_points
-DISTUTILS_USE_SETUPTOOLS=rdepend
-inherit distutils-r1
-
-DESCRIPTION="Policy daemon and milter for Postfix SPF verification"
-HOMEPAGE="https://launchpad.net/spf-engine"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND="dev-python/pyspf[${PYTHON_USEDEP}]"
-
-RDEPEND="${DEPEND}
- dev-python/authres[${PYTHON_USEDEP}]"
-
-DOCS=( CHANGES policyd-spf.conf.commented README README.per_user_whitelisting )
-
-python_prepare_all() {
- # The "real" config file mentions the commented one, so we point
- # users in the right direction.
- local oldconf="policyd-spf.conf.commented"
- local newconf="/usr/share/doc/${PF}/${oldconf}"
-
- sed -e "1 s~ ${oldconf}~,\n# ${newconf}~" -i policyd-spf.conf \
- || die 'failed to update commented config file path'
-
- distutils-r1_python_prepare_all
-}
-
-src_install() {
- distutils-r1_src_install
-
- # Remove the milter files that are installed by default. The milter
- # isn't quite ready:
- #
- # * The README says it's experimental not well-tested.
- # * There's no documentation for its configuration parameters
- # (expecially the UserID).
- # * The configuration file is hard-coded to /usr/local.
- # * The paths in the systemd service file are hard-coded to /usr/local.
- # * We need to write an OpenRC service script for it.
- #
- # These are all eventually doable, but I'm not willing to commit to
- # making the milter work before upstream is.
- #
- rm "${ED}/usr/bin/pyspf-milter" \
- || die "failed to remove ${ED}/usr/bin/pyspf-milter"
- rm -r "${ED}/usr/lib/systemd" \
- || die "failed to remove ${ED}/usr/lib/systemd"
- rm -r "${ED}/usr/etc/init.d" \
- || die "failed to remove ${ED}/usr/etc/init.d"
- einfo "The milter component of spf-engine is still deemed experimental"
- einfo "and not well-tested by upstream. It's missing configuration"
- einfo "files, service scripts, and documentation. In other words, it"
- einfo "doesn't work yet."
-
- # The setuptools installation routing always works relative to
- # python's prefix, so that when installing locally you wind up
- # with paths like /usr/local/etc. However for system installs
- # that does the wrong thing and puts the sysconfdir at /usr/etc.
- # Here we move it to the right place.
- mv -v "${ED}/usr/etc" "${ED}/" || die 'failed to relocate sysconfdir'
-}
diff --git a/mail-filter/spf-engine/spf-engine-3.0.3.ebuild b/mail-filter/spf-engine/spf-engine-3.0.3.ebuild
new file mode 100644
index 000000000000..46d608b77a7e
--- /dev/null
+++ b/mail-filter/spf-engine/spf-engine-3.0.3.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_9 python3_10 python3_11 )
+
+# The built-in ipaddress module handles the parsing of IP addresses. If
+# python is built without ipv6 support, then ipaddress can't parse ipv6
+# addresses, and the daemon will crash if it sees an ipv6 SPF record. In
+# other words, it's completely broken.
+PYTHON_REQ_USE="ipv6(+)"
+DISTUTILS_USE_PEP517=flit
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Policy daemon for Postfix SPF verification"
+HOMEPAGE="https://launchpad.net/spf-engine"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="dev-python/pyspf[${PYTHON_USEDEP}]
+ dev-python/authres[${PYTHON_USEDEP}]"
+
+DOCS=( CHANGES )
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # The tarball has a "data" directory containing a hierarchy that
+ # flit wants to insert right into /usr. Before it does that, we have
+ # to remove the parts we don't want, and fix some of the paths.
+ #
+ # Note that one of our patches already mangles a few of these
+ # before we even see them.
+
+ einfo "removing milter files"
+ rm -v -r data/lib data/etc/init.d data/share/man/man8 || die
+ rm -v data/etc/pyspf-milter/pyspf-milter.conf || die
+ rm -v spf_engine/milter_spf.py || die
+
+ # And don't create a python-exec wrapper for it.
+ sed -e '/^pyspf-milter = /d' -i pyproject.toml || die
+
+ # The commented conf example is documentation, not configuration.
+ mv -v data/etc/python-policyd-spf/policyd-spf.conf.commented \
+ data/share/doc/python-policyd-spf/ || die
+
+ # The man page hard-codes /usr/local/etc, it should be /etc.
+ sed -e 's:/usr/local/etc:/etc:g' \
+ -i data/share/man/man1/policyd-spf.1 || die
+
+ # Fix the documentation path.
+ mv -v data/share/doc/python-policyd-spf "data/share/doc/${PF}" || die
+
+ # The "real" config file mentions the commented one, so we point
+ # users in the right direction. Caveat: the documentation is
+ # compressed, so we're usually off by a ".bz2" suffix anyway.
+ local oldconf="policyd-spf.conf.commented"
+ local newconf="/usr/share/doc/${PF}/${oldconf}"
+ sed -e "1 s~ ${oldconf}~,\n# ${newconf}~" \
+ -i "data/etc/python-policyd-spf/policyd-spf.conf" \
+ || die 'failed to update commented config file path'
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ # The "data" installation is relative to python's prefix, so
+ # data/etc gets installed to /usr/etc. Let's fix that.
+ mv -v "${ED}/usr/etc" "${ED}/" || die 'failed to relocate sysconfdir'
+}
diff --git a/mail-filter/spf-engine/spf-engine-3.0.4-r1.ebuild b/mail-filter/spf-engine/spf-engine-3.0.4-r1.ebuild
new file mode 100644
index 000000000000..cb36d22f03ce
--- /dev/null
+++ b/mail-filter/spf-engine/spf-engine-3.0.4-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_10 python3_11 python3_12 )
+
+# The built-in ipaddress module handles the parsing of IP addresses. If
+# python is built without ipv6 support, then ipaddress can't parse ipv6
+# addresses, and the daemon will crash if it sees an ipv6 SPF record. In
+# other words, it's completely broken.
+PYTHON_REQ_USE="ipv6(+)"
+DISTUTILS_USE_PEP517=flit
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Policy daemon for Postfix SPF verification"
+HOMEPAGE="https://launchpad.net/spf-engine"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/pyspf[${PYTHON_USEDEP}]
+ dev-python/authres[${PYTHON_USEDEP}]"
+
+DOCS=( CHANGES )
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # The tarball has a "data" directory containing a hierarchy that
+ # flit wants to insert right into /usr. Before it does that, we have
+ # to remove the parts we don't want, and fix some of the paths.
+ #
+ # Note that one of our patches already mangles a few of these
+ # before we even see them.
+
+ einfo "removing milter files"
+ rm -v -r data/lib data/etc/init.d data/share/man/man8 || die
+ rm -v data/etc/pyspf-milter/pyspf-milter.conf || die
+ rm -v spf_engine/milter_spf.py || die
+
+ # And don't create a python-exec wrapper for it.
+ sed -e '/^pyspf-milter = /d' -i pyproject.toml || die
+
+ # The commented conf example is documentation, not configuration.
+ mv -v data/etc/python-policyd-spf/policyd-spf.conf.commented \
+ data/share/doc/python-policyd-spf/ || die
+
+ # The man page hard-codes /usr/local/etc, it should be /etc.
+ sed -e 's:/usr/local/etc:/etc:g' \
+ -i data/share/man/man1/policyd-spf.1 || die
+
+ # Fix the documentation path.
+ mv -v data/share/doc/python-policyd-spf "data/share/doc/${PF}" || die
+
+ # The "real" config file mentions the commented one, so we point
+ # users in the right direction. Caveat: the documentation is
+ # compressed, so we're usually off by a ".bz2" suffix anyway.
+ local oldconf="policyd-spf.conf.commented"
+ local newconf="/usr/share/doc/${PF}/${oldconf}"
+ sed -e "1 s~ ${oldconf}~,\n# ${newconf}~" \
+ -i "data/etc/python-policyd-spf/policyd-spf.conf" \
+ || die 'failed to update commented config file path'
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ # The "data" installation is relative to python's prefix, so
+ # data/etc gets installed to /usr/etc. Let's fix that.
+ mv -v "${ED}/usr/etc" "${ED}/" || die 'failed to relocate sysconfdir'
+}
diff --git a/mail-filter/sqlgrey/Manifest b/mail-filter/sqlgrey/Manifest
index a1d23dbdd3b6..d4cf7b1cac00 100644
--- a/mail-filter/sqlgrey/Manifest
+++ b/mail-filter/sqlgrey/Manifest
@@ -1,2 +1 @@
-DIST sqlgrey-1.7.6.tar.bz2 63738 BLAKE2B 7835079f3f220c2894781cb1ba8d1cac66f46e9fad7f17bfc0f1f7e2cfe1b1b05664179abacb873acf1829114093c48764c34e1a0a3128503f8e3f134dd0772d SHA512 62822d808aa5991a8d29f455be933cf782c9d5232b63bd1f357093a06982474018fb7a02dedf29274d8b7e9f12525063e6af744efceecf420cd01e74f561aa81
DIST sqlgrey-1.8.0.tar.gz 69476 BLAKE2B f48aa9e41a988338a817026fbf022e145922db0bad9983e4d7cde7bc621560ce6189e494cfba5dd5f48ba4ff30e47686c54298f9a006b8fcc2b27444e102b0d1 SHA512 97ab057bf7111159166a6963d5948c10468731730136ddca6449d2d629f39235c09d00497a52408bb87057905c1bf43bc064571ee6302d7f1f8c6408af82d044
diff --git a/mail-filter/sqlgrey/files/sqlgrey-1.7.6-init.patch b/mail-filter/sqlgrey/files/sqlgrey-1.7.6-init.patch
deleted file mode 100644
index 355cb4539248..000000000000
--- a/mail-filter/sqlgrey/files/sqlgrey-1.7.6-init.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- sqlgrey-1.7.6/init/sqlgrey.gentoo.orig 2007-05-12 11:12:12.000000000 +0200
-+++ sqlgrey-1.7.6/init/sqlgrey.gentoo 2007-05-12 12:05:52.491468250 +0200
-@@ -14,13 +14,13 @@
- # SQLite puts files in the working directory
- cd ~sqlgrey
- sqlgrey -d
-- eend
-+ eend $?
- }
-
- stop() {
- ebegin "Shutting down SQLgrey"
- sqlgrey -k
-- eend
-+ eend $?
- }
-
- # hack: seems Net::Server doesn't set REUSEADDR on socket?
diff --git a/mail-filter/sqlgrey/metadata.xml b/mail-filter/sqlgrey/metadata.xml
index 5ffa9031be64..916b77c4c157 100644
--- a/mail-filter/sqlgrey/metadata.xml
+++ b/mail-filter/sqlgrey/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>gentoo_bugs_peep@parallaxshift.com</email>
diff --git a/mail-filter/sqlgrey/sqlgrey-1.7.6-r2.ebuild b/mail-filter/sqlgrey/sqlgrey-1.7.6-r2.ebuild
deleted file mode 100644
index 1e7d2013e063..000000000000
--- a/mail-filter/sqlgrey/sqlgrey-1.7.6-r2.ebuild
+++ /dev/null
@@ -1,252 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd user
-
-DESCRIPTION="A postfix policy service implementing a grey-listing policy"
-HOMEPAGE="http://sqlgrey.sourceforge.net/"
-SRC_URI="mirror://sourceforge/sqlgrey/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~sparc x86"
-IUSE="mysql +postgres sqlite"
-REQUIRED_USE="|| ( mysql postgres sqlite )"
-
-RDEPEND="dev-lang/perl
- dev-perl/DBI
- dev-perl/Date-Calc
- dev-perl/Net-Server
- virtual/mailx
- mysql? ( dev-perl/DBD-mysql )
- postgres? ( dev-perl/DBD-Pg )
- sqlite? ( dev-perl/DBD-SQLite )"
-DEPEND="${RDEPEND}
- sys-apps/sed"
-
-PATCHES=(
- "${FILESDIR}/${P}-init.patch"
-)
-
-pkg_setup() {
- enewgroup sqlgrey
- enewuser sqlgrey -1 -1 /var/spool/sqlgrey sqlgrey
-}
-
-src_install() {
- emake gentoo-install ROOTDIR="${D}"
- dodoc HOWTO FAQ README README.OPTINOUT README.PERF TODO Changelog
-
- # keeps SQLgrey data in /var/spool/sqlgrey
- diropts -m0775 -o sqlgrey -g sqlgrey
- keepdir /var/spool/sqlgrey
-
- systemd_dounit "${FILESDIR}/${PN}.service"
-}
-
-pkg_postinst() {
- elog "To make use of greylisting, please update your postfix config."
- elog
- elog "Put something like this in /etc/postfix/main.cf:"
- elog " smtpd_recipient_restrictions ="
- elog " ..."
- elog " check_policy_service inet:127.0.0.1:2501"
- elog
- elog "Remember to restart Postfix after that change. Also remember"
- elog "to make the daemon start durig boot:"
- elog " rc-update add sqlgrey default"
- elog
- elog
- elog "To setup SQLgrey to run out-of-the-box on your system, run:"
- elog "emerge --config ${PN}"
- elog
- ewarn "Read the documentation for more info (perldoc sqlgrey) or the"
- ewarn "included howto /usr/share/doc/${PF}/HOWTO.gz"
- ewarn
- ewarn "If you are using MySQL >= 4.1 use \"latin1\" as charset for"
- ewarn "the SQLgrey db"
-}
-
-pkg_config() {
- # SQLgrey configuration file
- local SQLgrey_CONFIG="/etc/sqlgrey/sqlgrey.conf"
- local SQLgrey_DB_USER_NAME="sqlgrey"
- local SQLgrey_DB_NAME="sqlgrey"
-
- # Check if a password is set in sqlgrey.conf
- local SQLgrey_CONF_PWD=""
- if [ -f "${SQLgrey_CONFIG}" ]; then
- if (grep -iq "^[\t ]*db_pass[\t ]*=[\t ]*.*$" ${SQLgrey_CONFIG}); then
- # User already has a db_pass entry
- SQLgrey_CONF_PWD="$(sed -n 's:^[\t ]*db_pass[\t ]*=[\t ]*\(.*\)[\t ]*:\1:gIp' ${SQLgrey_CONFIG})"
- else
- SQLgrey_CONF_PWD=""
- fi
- else
- ewarn "SQLgrey configuration missing. Exiting now."
- echo
- exit 0
- fi
-
- # Check if we need SQLgrey to configure for this system or not
- local SQLgrey_DB_HOST="localhost"
- local SQLgrey_KEY_INPUT="l,r,x"
- einfo "SQLgrey database backend configuration"
- einfo " Please select where SQLgrey database will run:"
- einfo " [l] Database backend runs on localhost"
- einfo " [r] Database backend runs on remote host"
- einfo " [x] Exit"
- echo
- einfo " Press one of the keys [${SQLgrey_KEY_INPUT}]: "
- while true; do
- read -n 1 -s SQLgrey_ACCESS_TYPE
- case "${SQLgrey_ACCESS_TYPE}" in
- "r" | "R" )
- SQLgrey_ACCESS_TYPE="r"
- einfo " remote setup"
- read -p " Please enter the remote hostname: " SQLgrey_DB_HOST
- echo
- break
- ;;
- "l" | "L" )
- SQLgrey_ACCESS_TYPE="l"
- einfo " local setup"
- echo
- break
- ;;
- "x" | "X" )
- exit 0
- ;;
- esac
- done
-
- # Generate random password
- if [[ "${SQLgrey_CONF_PWD}" == "" ]]; then
- einfo "Generating random database user password..."
- local SQLgrey_PWD_MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
- local SQLgrey_DB_USER_PWD=""
- while [ "${n:=1}" -le "16" ]; do
- SQLgrey_DB_USER_PWD="${SQLgrey_DB_USER_PWD}${SQLgrey_PWD_MATRIX:$(($RANDOM%${#SQLgrey_PWD_MATRIX})):1}"
- let n+=1
- done
- else
- einfo "Reusing current database user password..."
- local SQLgrey_DB_USER_PWD="${SQLgrey_CONF_PWD}"
- fi
- echo
-
- # Configure the various database backends
- local SQLgrey_KEY_INPUT=""
- einfo "Creating SQLgrey database backend data and configuration"
- einfo " Please select what kind of database you like to use:"
- if use postgres || has_version dev-perl/DBD-Pg ; then
- einfo " [p] PostgreSQL"
- SQLgrey_KEY_INPUT="${SQLgrey_KEY_INPUT},p"
- fi
- if use mysql || has_version dev-perl/DBD-mysql ; then
- einfo " [m] MySQL"
- SQLgrey_KEY_INPUT="${SQLgrey_KEY_INPUT},m"
- fi
- if use sqlite || has_version dev-perl/DBD-SQLite ; then
- einfo " [s] SQLite"
- SQLgrey_KEY_INPUT="${SQLgrey_KEY_INPUT},s"
- fi
- einfo " [x] Exit"
- SQLgrey_KEY_INPUT="${SQLgrey_KEY_INPUT},x"
- echo
- einfo " Press one of the keys [${SQLgrey_KEY_INPUT:1}]: "
- while true; do
- read -n 1 -s SQLgrey_DB_TYPE
- case "${SQLgrey_DB_TYPE}" in
- "p" | "P" )
- SQLgrey_DB_TYPE="p"
- einfo " PostgreSQL database backend"
- echo
- break
- ;;
- "m" | "M" )
- SQLgrey_DB_TYPE="m"
- einfo " MySQL database backend"
- echo
- break
- ;;
- "s" | "S" )
- SQLgrey_DB_TYPE="s"
- einfo " SQLite database backend"
- echo
- break
- ;;
- "x" | "X" )
- exit 0
- ;;
- esac
- done
-
- # If we don't use SQLite, the password must not be set
- if [[ ( "${SQLgrey_DB_TYPE}" != "s" ) && ( "${SQLgrey_CONF_PWD}" != "" ) ]]; then
- ewarn "This configuration is only for new installations. You seem to"
- ewarn "have already a modified sqlgrey.conf"
- ewarn "Do you want to continue?"
- SQLgrey_KEY_INPUT="y,n"
- einfo " Press one of the keys [$SQLgrey_KEY_INPUT]: "
- while true; do
- read -n 1 -s SQLgrey_Ignore
- case "$SQLgrey_Ignore" in
- "y"|"Y" )
- break
- ;;
- "n"|"N" )
- exit 0
- ;;
- esac
- done
- fi
-
- ## Per-RDBMS configuration ##
- # POSTGRESQL
- if [[ "${SQLgrey_DB_TYPE}" == "p" ]] ; then
-
- ewarn "If prompted for a password, please enter your PgSQL postgres password"
- ewarn ""
-
- einfo "Creating SQLgrey PostgreSQL database \"${SQLgrey_DB_NAME}\" and user \"${SQLgrey_DB_USER_NAME}\""
- /usr/bin/psql -h ${SQLgrey_DB_HOST} -d template1 -U postgres -c "CREATE USER ${SQLgrey_DB_USER_NAME} WITH PASSWORD '${SQLgrey_DB_USER_PWD}' NOCREATEDB NOCREATEUSER; CREATE DATABASE ${SQLgrey_DB_NAME}; GRANT ALL PRIVILEGES ON DATABASE ${SQLgrey_DB_NAME} TO ${SQLgrey_DB_USER_NAME}; GRANT ALL PRIVILEGES ON SCHEMA public TO ${SQLgrey_DB_USER_NAME}; UPDATE pg_database SET datdba=(SELECT usesysid FROM pg_shadow WHERE usename='${SQLgrey_DB_USER_NAME}') WHERE datname='${SQLgrey_DB_NAME}';"
-
- einfo "Changing SQLgrey configuration in sqlgrey.conf"
- sed -i "s:^[# ]*\(db_type[ \t]*= \).*:\1Pg:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_user[ \t]*= \).*:\1${SQLgrey_DB_USER_NAME}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_pass[ \t]*= \).*:\1${SQLgrey_DB_USER_PWD}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_host[ \t]*= \).*:\1${SQLgrey_DB_HOST}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_name[ \t]*= \).*:\1${SQLgrey_DB_NAME}:gI" ${SQLgrey_CONFIG}
- elif [[ "${SQLgrey_DB_TYPE}" == "m" ]] ; then
- # MYSQL
- ewarn "If prompted for a password, please enter your MySQL root password"
- ewarn ""
-
- einfo "Creating SQLgrey MySQL database \"${SQLgrey_DB_NAME}\" and user \"${SQLgrey_DB_USER_NAME}\""
- echo -ne " "
- /usr/bin/mysql -u root -h ${SQLgrey_DB_HOST} -p -e "CREATE DATABASE IF NOT EXISTS ${SQLgrey_DB_NAME} CHARACTER SET latin1; GRANT ALL ON ${SQLgrey_DB_NAME}.* TO ${SQLgrey_DB_USER_NAME}@${SQLgrey_DB_HOST} IDENTIFIED BY '${SQLgrey_DB_USER_PWD}';FLUSH PRIVILEGES;" -D mysql
- echo
-
- einfo "Changing SQLgrey configuration in sqlgrey.conf"
- sed -i "s:^[# ]*\(db_type[ \t]*= \).*:\1mysql:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_user[ \t]*= \).*:\1${SQLgrey_DB_USER_NAME}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_pass[ \t]*= \).*:\1${SQLgrey_DB_USER_PWD}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_host[ \t]*= \).*:\1${SQLgrey_DB_HOST}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_name[ \t]*= \).*:\1${SQLgrey_DB_NAME}:gI" ${SQLgrey_CONFIG}
- elif [[ "${SQLgrey_DB_TYPE}" == "s" ]] ; then
- einfo "Changing SQLgrey configuration in sqlgrey.conf"
- sed -i "s:^[# ]*\(db_type[ \t]*= \).*:\1SQLite:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_name[ \t]*= \).*:\1${SQLgrey_DB_NAME}:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_user[ \t]*=.*\)$:# \1:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_pass[ \t]*= .*\)$:# \1:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_host[ \t]*= .*\)$:# \1:gI" ${SQLgrey_CONFIG}
- sed -i "s:^[# ]*\(db_cleandelay[ \t]*= .*\)$:# \1:gI" ${SQLgrey_CONFIG}
- fi
- echo
- if [[ "${SQLgrey_DB_TYPE}" != "s" ]]; then
- einfo "Note: the database password is stored in $SQLgrey_CONFIG"
- fi
-}
diff --git a/mail-filter/sqlgrey/sqlgrey-1.8.0.ebuild b/mail-filter/sqlgrey/sqlgrey-1.8.0.ebuild
index 1dccd8565268..d6bb19932fe3 100644
--- a/mail-filter/sqlgrey/sqlgrey-1.8.0.ebuild
+++ b/mail-filter/sqlgrey/sqlgrey-1.8.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -24,8 +24,7 @@ RDEPEND="acct-user/sqlgrey
mysql? ( dev-perl/DBD-mysql )
postgres? ( dev-perl/DBD-Pg )
sqlite? ( dev-perl/DBD-SQLite )"
-DEPEND="${RDEPEND}
- sys-apps/sed"
+DEPEND="${RDEPEND}"
DOCS=( HOWTO FAQ README README.OPTINOUT README.PERF TODO Changelog )
PATCHES=(
diff --git a/mail-filter/zdkimfilter/Manifest b/mail-filter/zdkimfilter/Manifest
index 4616acb8693c..e855cb11d00d 100644
--- a/mail-filter/zdkimfilter/Manifest
+++ b/mail-filter/zdkimfilter/Manifest
@@ -1,3 +1,4 @@
-DIST zdkimfilter-1.8.tar.gz 717481 BLAKE2B ec662a02c4a248085a42548d892084eb23c592c0511026039d18e8cc7a1a46dcf37411f8fc7395be507065ddb9cda8c5a1226e5e379852b4ef7ee84c2936b439 SHA512 e4b32c5d636db8a76ecfc2e4c8b1bda2053dc6c5baba13ed66120458f012a9d22d9ec269ae88100f1cc048b9c7d6c67a887ed1a48435a6353ab68bc13054c42c
-DIST zdkimfilter-2.1.tar.gz 737474 BLAKE2B a36155eef3bc31ede1446244f920040f1885109deae5646379f66a1a41315ad7f90552b64f138a61c4d88c0f616e2524fd8911302fd301503e70443948a68a34 SHA512 493a53d0879c7516196df32e364bf94d4f7f5265095637417ca9e569145dea68e528debe93f0835ffac493f05ab38d2b4cbd2bcd7da8029f5a9ef98a488d058d
-DIST zdkimfilter-2.2.tar.gz 742580 BLAKE2B b0d7c4ead1e6f3d3588c0b197b9615dd9cddde62230937a1d91ad38799e90e9ec18d29a14c14def9e1f88207afaebe3de496a57a78c049871d875391abce9574 SHA512 3a258f67ace9542dbc150ad1e89791fd50885c9e2599fffeb84b85460a56b3b3541f62779d374366b405274f92d5fa518d8e4c758e82a8a7dfac8a94fb0c6d91
+DIST zdkimfilter-3.13.tar.gz 928058 BLAKE2B 70e16bb9063e966b03d5fd96b8ec458cf5451bb7ce3941539687897a6ad5446a05a8da54a129352ada98b9ed9d4412f3534e189034e9b2507ffe22d0aecf5f1d SHA512 1d3a5d1e5b9f8d56f6a03dd08c09ac7ee52fc9af0d305da3965fbd59e6dffcc85238f448df6746ad4f692dfe2bc928a1209ca6630c63ee3c378cb2660f019ce4
+DIST zdkimfilter-3.14.tar.gz 937212 BLAKE2B 93a7e74ad347d171527c24d0f9ee8c38895607ebb3bf08505eef1083cc63d199f82f98d45b9537ecd60e46716f9601694fc8df9d1a96dfd5f7ce74f1646c13ab SHA512 3d8fa2955fe4c61de961d5396a14cdfd60e7df4c48b19dcdc283688192693ad4876ce470a2e9de18292f3addb7f9c2fed3586e4fe11ab3a362456af7c036eb1b
+DIST zdkimfilter-3.15.tar.gz 940615 BLAKE2B 7d28b116ecbe64700eaecb5c51b4a11d01c02c59873d22bd4f909274a270e836f75a0ce4fd0b722ff4dcfc6b83e0383789fa31acd8493ed3d1a641807246e9da SHA512 9df73cb246146cd217704887d4e3d78460e492803337cf75b4fcdc28c0ac0565d84340f85d07891af5b07d36b34aedf45182bb52ef53ac30e6ae3d8dec53977c
+DIST zdkimfilter-3.17.tar.gz 950222 BLAKE2B b1a9b6cc19dac6e78d8f9f16eaf79af043021f1ede9f29e702b76e3d3ac9c96ade2ed4a3e0d1dd49d75326cee5c8bcfe36b126f1537853a90c475c39f19aab20 SHA512 3624d80fc9c077b0ba33e4227fdf74f16d4f9a9242fd6aa960277c61ed08b822e39669bd564f15d4924b8753d59c0b6eb797a9e5d836b9101dcd5c5b19b69578
diff --git a/mail-filter/zdkimfilter/metadata.xml b/mail-filter/zdkimfilter/metadata.xml
index 38ce6c17a3f2..c7c1283db866 100644
--- a/mail-filter/zdkimfilter/metadata.xml
+++ b/mail-filter/zdkimfilter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>hanno@gentoo.org</email>
diff --git a/mail-filter/zdkimfilter/zdkimfilter-2.2.ebuild b/mail-filter/zdkimfilter/zdkimfilter-3.13-r1.ebuild
index d7ee7b6edfc1..495b98b46cd9 100644
--- a/mail-filter/zdkimfilter/zdkimfilter-2.2.ebuild
+++ b/mail-filter/zdkimfilter/zdkimfilter-3.13-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="DKIM filter for Courier-MTA"
HOMEPAGE="https://www.tana.it/sw/zdkimfilter"
SRC_URI="https://www.tana.it/sw/zdkimfilter/${P}.tar.gz"
@@ -10,16 +10,16 @@ SLOT="0"
KEYWORDS="~amd64"
IUSE="debug"
-DEPEND="mail-filter/opendkim
+DEPEND="net-libs/gnutls
mail-mta/courier
dev-db/opendbx
dev-libs/nettle:=
net-dns/libidn2:=
- dev-libs/libunistring:="
+ dev-libs/libunistring:=
+ dev-libs/libbsd"
RDEPEND="${DEPEND}"
-# For working tests we need a fix for opendkim,
-# see https://bugs.gentoo.org/700174
+# Tests don't work with portage sandbox
RESTRICT="test"
src_configure() {
diff --git a/mail-filter/zdkimfilter/zdkimfilter-1.8.ebuild b/mail-filter/zdkimfilter/zdkimfilter-3.14.ebuild
index d7ee7b6edfc1..495b98b46cd9 100644
--- a/mail-filter/zdkimfilter/zdkimfilter-1.8.ebuild
+++ b/mail-filter/zdkimfilter/zdkimfilter-3.14.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="DKIM filter for Courier-MTA"
HOMEPAGE="https://www.tana.it/sw/zdkimfilter"
SRC_URI="https://www.tana.it/sw/zdkimfilter/${P}.tar.gz"
@@ -10,16 +10,16 @@ SLOT="0"
KEYWORDS="~amd64"
IUSE="debug"
-DEPEND="mail-filter/opendkim
+DEPEND="net-libs/gnutls
mail-mta/courier
dev-db/opendbx
dev-libs/nettle:=
net-dns/libidn2:=
- dev-libs/libunistring:="
+ dev-libs/libunistring:=
+ dev-libs/libbsd"
RDEPEND="${DEPEND}"
-# For working tests we need a fix for opendkim,
-# see https://bugs.gentoo.org/700174
+# Tests don't work with portage sandbox
RESTRICT="test"
src_configure() {
diff --git a/mail-filter/zdkimfilter/zdkimfilter-2.1.ebuild b/mail-filter/zdkimfilter/zdkimfilter-3.15.ebuild
index d7ee7b6edfc1..928a0c563b2b 100644
--- a/mail-filter/zdkimfilter/zdkimfilter-2.1.ebuild
+++ b/mail-filter/zdkimfilter/zdkimfilter-3.15.ebuild
@@ -1,31 +1,39 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+inherit toolchain-funcs
+
DESCRIPTION="DKIM filter for Courier-MTA"
HOMEPAGE="https://www.tana.it/sw/zdkimfilter"
SRC_URI="https://www.tana.it/sw/zdkimfilter/${P}.tar.gz"
+
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="debug"
-DEPEND="mail-filter/opendkim
+DEPEND="net-libs/gnutls
mail-mta/courier
dev-db/opendbx
dev-libs/nettle:=
net-dns/libidn2:=
- dev-libs/libunistring:="
+ dev-libs/libunistring:=
+ dev-libs/libbsd"
RDEPEND="${DEPEND}"
-# For working tests we need a fix for opendkim,
-# see https://bugs.gentoo.org/700174
+# Tests don't work with portage sandbox
RESTRICT="test"
src_configure() {
econf $(use_enable debug)
}
+src_compile() {
+ emake AR=$(tc-getAR)
+}
+
src_install() {
emake DESTDIR="${D}" install
diropts -o mail -g mail
diff --git a/mail-filter/zdkimfilter/zdkimfilter-3.17.ebuild b/mail-filter/zdkimfilter/zdkimfilter-3.17.ebuild
new file mode 100644
index 000000000000..09af6b16b266
--- /dev/null
+++ b/mail-filter/zdkimfilter/zdkimfilter-3.17.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="DKIM filter for Courier-MTA"
+HOMEPAGE="https://www.tana.it/sw/zdkimfilter"
+SRC_URI="https://www.tana.it/sw/zdkimfilter/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+DEPEND="net-libs/gnutls
+ mail-mta/courier
+ dev-db/opendbx
+ dev-libs/nettle:=
+ net-dns/libidn2:=
+ dev-libs/libunistring:=
+ dev-libs/libbsd"
+RDEPEND="${DEPEND}"
+
+# Tests don't work with portage sandbox
+RESTRICT="test"
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_compile() {
+ emake AR=$(tc-getAR)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ diropts -o mail -g mail
+ dodir /etc/courier/filters/keys
+ dodoc release-notes-*.txt README ChangeLog
+ dodoc odbx_example.{conf,sql}
+}