Bug#923378: unblock: spampd/2.53-1
Package: release.debian.org
Severity: normal
User: release.debian.org@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 <meskes@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 <meskes@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) = @_;
Reply to: