Bug 1509: Add parser for DSN spool lines exim-4_84_RC2
authorWolfgang Breyha <wbreyha@gmx.net>
Fri, 8 Aug 2014 20:04:06 +0000 (13:04 -0700)
committerTodd Lyons <tlyons@exim.org>
Fri, 8 Aug 2014 20:04:06 +0000 (13:04 -0700)
DSN support added a new formatted entry to the spool files, this change
  gives exipick the ability to read that entry.

src/src/exipick.src

index ed3b6615436ed6df7bfccd0780abe9b24190a6e1..4708ebb4a29d4e4419d9d54b5bbdf472329628dc 100644 (file)
@@ -1020,6 +1020,12 @@ sub _parse_header {
       return($self->_error("incorrect format: $_")) if (length($2) != $3);
       $self->{_recips}{$1} = { pno => $4, errors_to => $2 };
       $addr = $1;
       return($self->_error("incorrect format: $_")) if (length($2) != $3);
       $self->{_recips}{$1} = { pno => $4, errors_to => $2 };
       $addr = $1;
+    } elsif (/^(\S*)\s(\S*)\s(\d+),(\d+)\s(\S*)\s(\d+),(-?\d+)#3$/) {
+      #print STDERR "exim4 new type #3 DSN (untested): $_\n";
+      return($self->_error("incorrect format: $_"))
+        if ((length($2) != $3) || (length($5) != $6));
+      $self->{_recips}{$1} = { pno => $7, errors_to => $5 };
+      $addr = $1;
     } elsif (/^.*#(\d+)$/) {
       #print STDERR "exim4 #$1 style (unimplemented): $_\n";
       $self->_error("exim4 #$1 style (unimplemented): $_");
     } elsif (/^.*#(\d+)$/) {
       #print STDERR "exim4 #$1 style (unimplemented): $_\n";
       $self->_error("exim4 #$1 style (unimplemented): $_");