On Tue, Dec 04, 2018 at 03:22:14AM +0000, [email protected] wrote:
> Gilles Chehade <[email protected]> wrote:
> > On Mon, Dec 03, 2018 at 06:11:29PM -0200, Cristiano Costa wrote:
> > > Hello everyone,
> > > 
> > > Recently, we have updated our external MTA to use OpenBSD(6.4) and 
> > > opensmptd.
> > > 
> > > After we updated, our mailman (that run on a Linux machine) started to
> > > send "bounce message w/no discernible addresses" messages to us (list
> > > admins). It seems that mailman was not able to parse bounce messages
> > > sent from opensmtpd. Mailman uses the bounces to remove users from our
> > > mailing lists automatically.
> > > 
> > > I have opened a ticket in the mailman bug tracker and the guys there
> > > will fix it. However, they also replied in my bug report:
> > > 
> > > > It turns out that this (the bounce format) is almost an RFC 3464 
> > > > compliant DSN and should be recognized by Mailman/Bouncers/DSN.py 
> > > > except for the fact that the 'action' in the Delivery Report is 
> > > > 'error'. This is non-compliant. RFC 3464, sec 2.3.3 defines action as:
> > > >
> > > >        action-value =
> > > >                "failed" / "delayed" / "delivered" / "relayed" / 
> > > > "expanded"
> > > >
> > > >    Thus, 'Action: error' in this DSN is non-compliant. It should be 
> > > > 'Action: failed'. You may wish to report this to the opensmtpd 
> > > > developers."
> > > 
> > > So maybe you would like to patch opensmtpd too.
> > > 
> > > The link to the bug report is 
> > > https://bugs.launchpad.net/mailman/+bug/1805137
> > > 
> > > Thanks,
> > > 
> > > Please keep the great work,
> > > 
> > 
> > yes, we'll definitely issue a fix for that.
> > 
> > thanks,
> > gilles
> 
> This diff uses the standard action-values "failed", "delivered".
> Could you give this a try, thanks.
> 

The diff reads ok though maybe you could take it one step further and
rename the type enums to match:

failed -> B_FAILED
delayed -> B_DELAYED
relayd/delivered -> B_DELIVERED


> Index: bounce.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/smtpd/bounce.c,v
> retrieving revision 1.79
> diff -u -p -r1.79 bounce.c
> --- bounce.c  31 May 2018 21:06:12 -0000      1.79
> +++ bounce.c  4 Dec 2018 03:17:25 -0000
> @@ -796,14 +796,14 @@ action_str(const struct delivery_bounce 
>  {
>       switch (b->type) {
>       case B_ERROR:
> -             return ("error");
> +             return ("failed");
>       case B_WARNING:
>               return ("delayed");
>       case B_DSN:
>               if (b->mta_without_dsn)
>                       return ("relayed");
>  
> -             return ("success");
> +             return ("delivered");
>       default:
>               log_warn("warn: bounce: unknown bounce_type");
>               return ("");
> 
> --
> You received this mail because you are subscribed to [email protected]
> To unsubscribe, send a mail to: [email protected]
> 

-- 
Gilles Chehade                                                 @poolpOrg

https://www.poolp.org                 tip me: https://paypal.me/poolpOrg

-- 
You received this mail because you are subscribed to [email protected]
To unsubscribe, send a mail to: [email protected]

Reply via email to