Dear all;

I’m experiencing trouble having tags (as in user+...@example.com) transported 
properly through lmtp.  In my setup, smtpd delivers to cyrus by lmtp through a 
local socket.  I’m running this on Debian stable (which for all practical 
purposes is identical to opensmtpd-6.0.2p1).  Looking at lmtp_open() in 
delivery_lmtp.c:

        char            *buf = NULL, hn[HOST_NAME_MAX + 1],
                        *rcpt = deliver->to, *to = deliver->to;

… which, in my case, will set rcpt to "/run/cyrus/socket/lmtp"…

        strsep(&rcpt, " ");

… and now rcpt is NULL…

        if (lmtp_cmd(&buf, &sz, '2', fp, "RCPT TO:<%s>",
            rcpt ? deliver->dest : deliver->user) != 0)
                errx(1, "RCPT TO rejected: %s", buf);

… which, assuming something like "echo body | mail -s subject user+tag", yields 
"RCPT TO: <user>", and the tag is gone.  I have to admit that whole business 
with rcpt is lost on me, but apart from that I don’t see how this code can make 
cyrus see the tag.

Cluebat, anyone?

// Best wishes; Johan
--
You received this mail because you are subscribed to misc@opensmtpd.org
To unsubscribe, send a mail to: misc+unsubscr...@opensmtpd.org

Reply via email to