Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package spampd Yes, I know it is a new upstream version, but all versions of spampd starting with 2.40 had a breaking bug in LMTP processing for multiple recipients (re-introducing the bug originally reported in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=395355). When upstream learned this, he released a new and fixed version. The only other change in the new upstream version is a fix for a warning message that we had a very similar patch for. The only change is that upstream put the initialization in question at a different line of the source file. Finally I fixed an oversight by myself that upstream pointed out. The standard way of calling spampd lacked the option "--setsid". I seem to have forgotten the option when the prior patched-in solution was removed. debdiff is attached. Thanks Michael unblock spampd/2.53-1 -- System Information: Debian Release: buster/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.20.0-trunk-amd64 (SMP w/8 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled
diff -Nru spampd-2.52/changelog.txt spampd-2.53/changelog.txt --- spampd-2.52/changelog.txt 2018-11-10 10:24:14.000000000 +0100 +++ spampd-2.53/changelog.txt 2019-02-25 12:49:09.000000000 +0100 @@ -1,6 +1,11 @@ SpamPD Change Log ----------------- +2.53 (25-Feb-19) + +- Fix LMTP delivery with multiple recipients (https://github.com/mpaperno/spampd/issues/23 & https://github.com/mail-in-a-box/mailinabox/issues/1523) +- Fix Warning for "Use of uninitialized value in string" (https://github.com/mpaperno/spampd/issues/22) + 2.52 (10-Nov-18) - Override Net::Server's HUP handling, just restart children (https://github.com/mpaperno/spampd/pull/20). @@ -10,17 +15,11 @@ 2.51 (01-May-18) -- Fix listening to IP address, broken in 2.50 "Unix ports" feature. (#18) -- Add --setsid option to start server with setsid if running in background (#18) - Fix listening to IP address, broken in 2.50 "Unix ports" feature. (https://github.com/mpaperno/spampd/pull/18) - Add --setsid option to start server with setsid if running in background (https://github.com/mpaperno/spampd/pull/18) 2.50 (30-Apr-18) -- Replace IO::Socket::INET with IO::Socket::IP for IPv6 support (#9). -- Unix ports (ability to listen on UNIX sockets) (#13). -- Add X-Envelope-* headers before Received (#14). -- Add /usr/local/bin and /usr/local/sbin to PATH (#17). - Replace IO::Socket::INET with IO::Socket::IP for IPv6 support (https://github.com/mpaperno/spampd/pull/9). - Unix ports (ability to listen on UNIX sockets) (https://github.com/mpaperno/spampd/pull/13). - Add X-Envelope-* headers before Received (https://github.com/mpaperno/spampd/pull/14). diff -Nru spampd-2.52/debian/changelog spampd-2.53/debian/changelog --- spampd-2.52/debian/changelog 2018-11-21 12:24:59.000000000 +0100 +++ spampd-2.53/debian/changelog 2019-02-26 12:16:46.000000000 +0100 @@ -1,3 +1,11 @@ +spampd (2.53-1) unstable; urgency=medium + + * New upstream version 2.53 + * Use the --setsid argument to make sure the process is correctly detached. + * Bumped Standards-Version, no changes needed. + + -- Michael Meskes <mes...@debian.org> Tue, 26 Feb 2019 12:16:46 +0100 + spampd (2.52-1) unstable; urgency=medium * New upstream version 2.52 (Closes: #849543) diff -Nru spampd-2.52/debian/control spampd-2.53/debian/control --- spampd-2.52/debian/control 2018-11-21 12:21:27.000000000 +0100 +++ spampd-2.53/debian/control 2019-02-26 12:16:46.000000000 +0100 @@ -3,7 +3,7 @@ Priority: optional Maintainer: Michael Meskes <mes...@debian.org> Build-Depends: debhelper (>= 11), quilt, dh-exec -Standards-Version: 4.2.1 +Standards-Version: 4.3.0 Homepage: https://github.com/mpaperno/spampd Package: spampd diff -Nru spampd-2.52/debian/patches/20-proto-warning.patch spampd-2.53/debian/patches/20-proto-warning.patch --- spampd-2.52/debian/patches/20-proto-warning.patch 2018-11-21 12:22:45.000000000 +0100 +++ spampd-2.53/debian/patches/20-proto-warning.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,10 +0,0 @@ ---- spampd-2.52/spampd.pl.orig 2018-11-10 10:24:14.000000000 +0100 -+++ spampd-2.52/spampd.pl 2018-11-12 08:32:59.000000000 +0100 -@@ -145,6 +145,7 @@ - return 0 unless defined($_ = $self->_getline); - s/[\r\n]*$//; - $self->{state} = $_; -+ $self->{proto} = "(unknown)"; - if (s/^(l|h)?he?lo\s+//i) { # mp: find helo|ehlo|lhlo - # mp: determine protocol - if (s/^helo\s+//i) { diff -Nru spampd-2.52/debian/patches/series spampd-2.53/debian/patches/series --- spampd-2.52/debian/patches/series 2018-11-21 12:24:02.000000000 +0100 +++ spampd-2.53/debian/patches/series 2019-02-26 12:09:26.000000000 +0100 @@ -1,3 +1,2 @@ 10-homedir.patch -20-proto-warning.patch 45-fix-man-references.patch diff -Nru spampd-2.52/debian/spampd.init spampd-2.53/debian/spampd.init --- spampd-2.52/debian/spampd.init 2018-05-20 13:05:28.000000000 +0200 +++ spampd-2.53/debian/spampd.init 2019-02-26 12:16:03.000000000 +0100 @@ -148,7 +148,7 @@ # start daemon start-stop-daemon --start --exec $EXECUTABLE \ --startas $PROGRAM --pidfile $PIDFILE \ - --user $USERID --group $GRPID -- $ARGS + --user $USERID --group $GRPID -- --setsid $ARGS if [ "$?" = '0' ]; then log_end_msg 0 exit 0 diff -Nru spampd-2.52/debian/spampd.service spampd-2.53/debian/spampd.service --- spampd-2.52/debian/spampd.service 2018-05-20 13:05:28.000000000 +0200 +++ spampd-2.53/debian/spampd.service 2019-02-26 12:15:45.000000000 +0100 @@ -5,7 +5,7 @@ [Service] EnvironmentFile=-/var/run/spampd/spampd.arguments ExecStartPre=/usr/share/spampd/process_arguments.sh -ExecStart=/usr/sbin/spampd $SPAMPD_ARGS +ExecStart=/usr/sbin/spampd --setsid $SPAMPD_ARGS Restart=on-failure PIDFile=/var/run/spampd/spampd.pid diff -Nru spampd-2.52/readme.md spampd-2.53/readme.md --- spampd-2.52/readme.md 2018-11-10 10:24:14.000000000 +0100 +++ spampd-2.53/readme.md 2019-02-25 12:49:09.000000000 +0100 @@ -3,10 +3,14 @@ Check the [Releases](https://github.com/mpaperno/spampd/releases) area for latest versions, and see the old <a href="https://github.com/mpaperno/spampd/downloads">Downloads</a> section for older releases. Originally released in May of 2002, SpamPD is a program used within an e-mail delivery system to scan messages for possible Unsolicited Commercial E-mail (UCE, aka spam) content. -It uses an excellent program called SpamAssassin (SA) to do the actual message scanning. spampd acts as a transparent SMTP/LMTP proxy between -two mail servers, and during the transaction it passes the mail through SA. If SA decides the mail could be spam, then spampd will ask SA to -add some headers and a report to the message indicating it's spam and why. spampd is written in Perl and should theoretically run on any +It uses an excellent program called <a href="https://spamassassin.apache.org/" target="_new">SpamAssassin</a> (SA) to do the actual message scanning. SpamPD acts as a transparent SMTP/LMTP proxy between +two mail servers, and during the transaction it passes the mail through SA. If SA decides the mail could be spam, then SpamPD will ask SA to +add some headers and a report to the message indicating it's spam and why. SpamPD is written in Perl and should theoretically run on any platform supported by Perl and SpamAssassin. -More information is available at <a href="http://www.worlddesign.com/index.cfm/page/rd/mta/spampd.htm">here</a>. +More information is available <a href="http://www.worlddesign.com/index.cfm/page/rd/mta/spampd.htm">here</a>. +Linux packages data courtesy of Repology: +<a href="https://repology.org/metapackage/spampd/versions" target="_new"> + <img src="https://repology.org/badge/vertical-allrepos/spampd.svg?minversion=2.52&header=Latest+release+v2.52" alt="Packaging status"> +</a> diff -Nru spampd-2.52/spampd.pl spampd-2.53/spampd.pl --- spampd-2.52/spampd.pl 2018-11-10 10:24:14.000000000 +0100 +++ spampd-2.53/spampd.pl 2019-02-25 12:49:09.000000000 +0100 @@ -3,6 +3,7 @@ ###################### # SpamPD - spam proxy daemon # +# v2.53 - 25-Feb-19 # v2.52 - 10-Nov-18 # v2.51 - 01-May-18 # v2.50 - 30-Apr-18 @@ -110,6 +111,8 @@ die "$0: socket bind failure: $!\n" unless defined $self->{sock}; $self->{state} = 'started'; + $self->{proto} = 'unknown'; + $self->{helo} = 'unknown.host'; return $self; } @@ -145,7 +148,7 @@ return 0 unless defined($_ = $self->_getline); s/[\r\n]*$//; $self->{state} = $_; - if (s/^(l|h)?he?lo\s+//i) { # mp: find helo|ehlo|lhlo + if (/^(l|h)?he?lo\s+/i) { # mp: find helo|ehlo|lhlo # mp: determine protocol if (s/^helo\s+//i) { $self->{proto} = "smtp"; @@ -413,7 +416,7 @@ use vars qw(@ISA $VERSION); our @ISA = qw(Net::Server::PreForkSimple); -our $VERSION = '2.52'; +our $VERSION = '2.53'; sub process_message { my ($self, $fh) = @_;