commit: 1121a40affec68c6a41cf77bcabce065aed584f2 Author: Michael Haubenwallner <haubi <AT> gentoo <DOT> org> AuthorDate: Tue Oct 1 12:34:59 2019 +0000 Commit: Michael Haubenwallner <haubi <AT> gentoo <DOT> org> CommitDate: Tue Oct 1 12:39:37 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1121a40a
mail-mta/nullmailer: import debian patches wrt tests Fix a race condition while running tests, disable tests relying on external resources like DNS and SMTP auth. Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Michael Haubenwallner <haubi <AT> gentoo.org> .../nullmailer-2.2-disable-dns-using-test.patch | 26 ++++++++++ .../nullmailer-2.2-disable-smtp-auth-tests.patch | 57 ++++++++++++++++++++++ .../nullmailer-2.2-fix-test-racecondition.patch | 29 +++++++++++ mail-mta/nullmailer/nullmailer-2.2.ebuild | 6 +++ 4 files changed, 118 insertions(+) diff --git a/mail-mta/nullmailer/files/nullmailer-2.2-disable-dns-using-test.patch b/mail-mta/nullmailer/files/nullmailer-2.2-disable-dns-using-test.patch new file mode 100644 index 00000000000..0c5939ab004 --- /dev/null +++ b/mail-mta/nullmailer/files/nullmailer-2.2-disable-dns-using-test.patch @@ -0,0 +1,26 @@ +https://sources.debian.org/data/main/n/nullmailer/1:2.2-3/debian/patches/0006-Disable-DNS-using-test.patch + +From: David Bremner <[email protected]> +Date: Wed, 31 Oct 2018 09:18:53 -0300 +Subject: Disable DNS using test. + +This is probably against policy, and causes build failures in pbuilder +--- + test/tests/protocols | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/test/tests/protocols b/test/tests/protocols +index 52209d7..8f67b0a 100644 +--- a/test/tests/protocols ++++ b/test/tests/protocols +@@ -28,8 +28,8 @@ do + + stop server + +- echo "Testing host not found error with $p." +- error 2 protocol $p --host=this.host.can.not.exist 3<$testmail ++# echo "Testing host not found error with $p." ++# error 2 protocol $p --host=this.host.can.not.exist 3<$testmail + + echo "Testing connection refused error with $p." + error 7 protocol $p -p $port --host=localhost 3<$testmail diff --git a/mail-mta/nullmailer/files/nullmailer-2.2-disable-smtp-auth-tests.patch b/mail-mta/nullmailer/files/nullmailer-2.2-disable-smtp-auth-tests.patch new file mode 100644 index 00000000000..f66a4841f4f --- /dev/null +++ b/mail-mta/nullmailer/files/nullmailer-2.2-disable-smtp-auth-tests.patch @@ -0,0 +1,57 @@ +https://sources.debian.org/data/main/n/nullmailer/1:2.2-3/debian/patches/0007-disable-all-smtp-auth-tests.patch + +From: David Bremner <[email protected]> +Date: Tue, 25 Dec 2018 08:18:35 +0900 +Subject: disable all smtp-auth tests + +These seem racy in ways that I haven't been able to completely nail down +--- + test/tests/smtp-auth | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) + +diff --git a/test/tests/smtp-auth b/test/tests/smtp-auth +index 52e12d0..2dc736f 100644 +--- a/test/tests/smtp-auth ++++ b/test/tests/smtp-auth +@@ -1,25 +1,25 @@ + . functions + export HELOHOST=f.q.d.n + +-make-testmail ++# make-testmail + +-start server "tcpserver -1 ::0 0 sh $srcdir/test/authtest-smtp.sh $tmpdir/smtp-result" +-catch-port server ++# start server "tcpserver -1 ::0 0 sh $srcdir/test/authtest-smtp.sh $tmpdir/smtp-result" ++# catch-port server + +-echo 'Testing auth success with smtp' +-echo '250 OK' > $tmpdir/smtp-result +-protocol smtp --host=localhost --port=$port --user=example --pass=example 3<$testmail ++# echo 'Testing auth success with smtp' ++# echo '250 OK' > $tmpdir/smtp-result ++# protocol smtp --host=localhost --port=$port --user=example --pass=example 3<$testmail + +-echo 'Testing auth login success with smtp' +-echo $'350 Go ahead\n250 AUTH' > $tmpdir/smtp-result +-protocol smtp --host=localhost --port=$port --user=example --pass=example --auth-login 3<$testmail ++# echo 'Testing auth login success with smtp' ++# echo $'350 Go ahead\n250 AUTH' > $tmpdir/smtp-result ++# protocol smtp --host=localhost --port=$port --user=example --pass=example --auth-login 3<$testmail + +-echo 'Testing auth temporary failure with smtp' +-echo '450 No' > $tmpdir/smtp-result +-error 16 protocol smtp --host=localhost --port $port --user=example --pass=example 3<$testmail ++# echo 'Testing auth temporary failure with smtp' ++# echo '450 No' > $tmpdir/smtp-result ++# error 16 protocol smtp --host=localhost --port $port --user=example --pass=example 3<$testmail + +-echo 'Testing auth permanent failure with smtp' +-echo '550 No' > $tmpdir/smtp-result +-error 20 protocol smtp --host=localhost --port $port --user=example --pass=example 3<$testmail ++# echo 'Testing auth permanent failure with smtp' ++# echo '550 No' > $tmpdir/smtp-result ++# error 20 protocol smtp --host=localhost --port $port --user=example --pass=example 3<$testmail + +-stop server ++# stop server diff --git a/mail-mta/nullmailer/files/nullmailer-2.2-fix-test-racecondition.patch b/mail-mta/nullmailer/files/nullmailer-2.2-fix-test-racecondition.patch new file mode 100644 index 00000000000..8f721d8d8cc --- /dev/null +++ b/mail-mta/nullmailer/files/nullmailer-2.2-fix-test-racecondition.patch @@ -0,0 +1,29 @@ +https://sources.debian.org/data/main/n/nullmailer/1:2.2-3/debian/patches/0001-Remove-race-conditions-from-tests.patch + +From: Felix Lechner <[email protected]> +Date: Sat, 2 Sep 2017 09:57:43 -0300 +Subject: Remove race conditions from tests + +Testing the qmqp protocol fails because the testing server cannot +acquire the lock. This is solved by waiting for the previous +server to exit gracefully and clear the lock. Similarly, wait +before removing temporary directories. + +Forwarded: no +Last-Update: 2017-10-07 +--- + test/tests/protocols | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/test/tests/protocols b/test/tests/protocols +index 0309d12..52209d7 100644 +--- a/test/tests/protocols ++++ b/test/tests/protocols +@@ -54,6 +54,7 @@ do + echo "Testing protocol failure with $p." + error 11 protocol $p -p $port --host=localhost 3<$testmail + stop server ++ wait + done + + stop server diff --git a/mail-mta/nullmailer/nullmailer-2.2.ebuild b/mail-mta/nullmailer/nullmailer-2.2.ebuild index 178c1507ac2..59e8c37fad7 100644 --- a/mail-mta/nullmailer/nullmailer-2.2.ebuild +++ b/mail-mta/nullmailer/nullmailer-2.2.ebuild @@ -35,6 +35,12 @@ RDEPEND=" !mail-mta/ssmtp[mta(+)] " +PATCHES=( + "${FILESDIR}/${P}-fix-test-racecondition.patch" + "${FILESDIR}/${P}-disable-dns-using-test.patch" + "${FILESDIR}/${P}-disable-smtp-auth-tests.patch" +) + pkg_setup() { enewgroup nullmail 88 enewuser nullmail 88 -1 /var/spool/nullmailer nullmail
