lmtpd segfaults after update to 2.4.19, seems it wants to act as proxy

ellie timoney ellie at fastmail.com
Sun May 21 23:17:29 EDT 2017


On Sat, May 20, 2017, at 05:59 PM, Simon Matter wrote:
> > This is the point where the wrong path is taken.
> >
> >
> > r = mlookup(namebuf, &server, NULL, NULL);
> > if (!r && server) {
> >      /* remote mailbox */
> >      proxy_adddest(&dlist, rcpt, n, server, authuser);
> >      status[n] = nosieve;
> > }
> >
> > mlookup did return something that is not 0, and server has not been set
> > in mlookup. In 2.4.17 there has was "if (server) *server = NULL;"
> 
> Hi Michael,
> 
> Thanks a lot for pointing me into the right direction. Indeed attached
> patch makes it work for me.
> 
> I don't know if this is the proper fix for the issue. Hopefully someone
> who knows better than me can comment.
> 
> Regards,
> Simon

Hi,

Thanks Simon and Michael for the sleuthing!

I've attached what I think is a better patch -- it makes sure the server
variable is correctly initialised to NULL, and mlookup() keeps the
idiomatic implementation whereby it only touches the output variable if
it succeeds.

Are you able to confirm if this patch also fixes the issue for you?  I
don't have a 2.4 environment to test this on

Cheers,

ellie
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cyrus-imapd-2.4.19-simon-lmtpd-segfault.patch
Type: text/x-diff
Size: 538 bytes
Desc: not available
URL: <http://lists.andrew.cmu.edu/pipermail/info-cyrus/attachments/20170522/591db80e/attachment.bin>


More information about the Info-cyrus mailing list