On 28 Apr 2015, at 15:53, Dianne Skoll wrote:

Hi,

Actually, this is a more thought-through patch. I don't use Postfix, but
if any Postfix users would care to give this a try, I'd appreciate it.

Built and installed 2.78 plus that patch, ~4 hours ago on my personal system, works as intended without any sign of trouble on 219 messages, all single-rcpt.

Doing the build reminded me of a longstanding unreported bug in t/unit/dates.t, in the rfc2822_date_works test. It assumes that it is using the GNU/Linux implementation of 'date' or another which includes 'unrecognized' in the error message when it is given a bad option. BSD 'date' accepts no 'long' options and says "date: illegal option -- -" so it breaks this. A quick and dirty hack is to add '|illegal' to the pattern match in the existing test, but frankly the whole model of looking for specific words in a merged stdout+stderr is a bit shabby. Here's an alternative, using a highly portable 'date' command and determining its success based simply on the return value:

--- t/unit/dates.t.orig 2015-04-29 00:05:30.000000000 -0400
+++ t/unit/dates.t      2015-04-29 00:02:30.000000000 -0400
@@ -23,8 +23,9 @@

 sub rfc2822_date_works : Test(1)
 {
-       my $want = `date --rfc-822 2>&1`;
- return '"date" command does not support --rfc-822 option' if $want =~ /unrecognized/;
+       my $want = `LC_ALL=C date +"%a, %d %b %Y %H:%M:%S %z"`;
+       my $RC=$?;
+       return '"date" command returned $RC' if $RC != 0;
        chomp $want;
        $want =~ s/\d{2}:\d{2} (-+)/\\d{2}:\\d{2} $1/;
        like(::main::rfc2822_date(), qr/$want/, 'Got correct RFC 2822 date');


_______________________________________________
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

Reply via email to