The following issue has been RESOLVED. ====================================================================== http://www.dbmail.org/mantis/view.php?id=239 ====================================================================== Reported By: idk Assigned To: aaron ====================================================================== Project: DBMail Issue ID: 239 Category: LMTP daemon Reproducibility: always Severity: minor Priority: normal Status: resolved Resolution: fixed Fixed in Version: SVN Trunk ====================================================================== Date Submitted: 05-Aug-05 00:28 CEST Last Modified: 07-Mar-06 09:10 CET ====================================================================== Summary: lmtp will reject valid recipient when sender contains | Description: LMTP returns error message 550 No address found for valid local recipient when sender's email contains pipe character "|", like <test|[EMAIL PROTECTED]>. ======================================================================
---------------------------------------------------------------------- aaron - 05-Aug-05 01:09 ---------------------------------------------------------------------- Same thing as bug http://www.dbmail.org/mantis/view.php?id=169: we're being a bit restrictive about validchars. This should probably be changed, since nobody's made any arguments not to do so. ---------------------------------------------------------------------- aaron - 05-Aug-05 01:10 ---------------------------------------------------------------------- Also the same as bug http://www.dbmail.org/mantis/view.php?id=179. ---------------------------------------------------------------------- idk - 05-Aug-05 02:36 ---------------------------------------------------------------------- Yes, I found validchars in lmtp.c, characters "|", "," and "?" are invalid characters in range http://www.dbmail.org/mantis/view.php?id=32-http://www.dbmail.org/mantis/view.php?id=126. But according to RFC 821, invalid char in local-part of sender/recipient addresses is "," only (from list above) and some other ones unless they are escaped by "\" or quoted by """ (so <some|[EMAIL PROTECTED]>, <some\,[EMAIL PROTECTED]> and <"some address"@domain> are valid adresses, whereas <[EMAIL PROTECTED]> is not valid address, because backslash escaped ">", so ">" is part of domain name, so address is not ending by required ">", however lmtp accepts this address as valid). And chars "?" and "|" are allowed by RFC. I understand "|" may be dangerous on recipient side (maybe interpreted as a process pipe), but on sender side? This (MAIL FROM) is used for Return-path header only, isn't it? ---------------------------------------------------------------------- aaron - 07-Mar-06 09:10 ---------------------------------------------------------------------- I've added escaping to the popen(sendmail_command) call in pipe.c, so we're safe to add this character into lmtp.c Issue History Date Modified Username Field Change ====================================================================== 05-Aug-05 00:28 idk New Issue 05-Aug-05 00:28 idk File Added: maillog 05-Aug-05 01:09 aaron Note Added: 0000804 05-Aug-05 01:10 aaron Note Added: 0000805 05-Aug-05 02:36 idk Note Added: 0000806 07-Mar-06 09:10 aaron Status new => resolved 07-Mar-06 09:10 aaron Fixed in Version => SVN Trunk 07-Mar-06 09:10 aaron Resolution open => fixed 07-Mar-06 09:10 aaron Assigned To => aaron 07-Mar-06 09:10 aaron Note Added: 0001030 ======================================================================