ID: 28038 Updated by: j...@php.net Reported By: jordi at jcanals dot net Status: Closed Bug Type: Mail related Operating System: win32 only PHP Version: 5.*, 6SVN Assigned To: garretts New Comment:
According to the commit, this is fixed in all branches. So fix will be in upcoming 5.2.11 release as well, not only 5.3.1. Previous Comments: ------------------------------------------------------------------------ [2009-08-18 18:58:33] s...@php.net Automatic comment from SVN on behalf of garretts Revision: http://svn.php.net/viewvc/?view=revision&revision=287462 Log: - Fixed bug #28038 (Sent incorrect RCPT TO commands to SMTP server) ------------------------------------------------------------------------ [2009-08-18 18:50:45] garre...@php.net I've fixed this in PHP-5.3.1-dev. I added in code to use the contents between angle brackets < > if there is a pair of angle brackets passed in. If the angle brackets are not passed in as a pair, this patch doesn't alter the contents (missing one angle bracket is clearly invalid), and should likely be rejected by the SMTP server. And, for the record SMTP (RFC 2821) doesn't have its addresses defined by RFC 2822 for "MAIL FROM:" and "RCPT TO:" -- they should be just the undecorated mailbox address. (see RFC 2821- 4.1.2 Command Argument Syntax) ------------------------------------------------------------------------ [2009-04-06 14:29:44] php at shitware dot nl I'm no C expert, but wouldn't this provide a quick fix: instead of: snprintf(Buffer, MAIL_BUFFER_SIZE, "RCPT TO:<%s>\r\n", token); use: snprintf(Buffer, MAIL_BUFFER_SIZE, token[(strlen(token)-1)] == ">" ? "RCPT TO:%s\r\n" : "RCPT TO:<%s>\r\n", token); for EVERY use of token (including RPath)? (plain e-mail addresses are still placed between <...>, formatted e-mail addresses get in the transaction unaltered) I tried setting up the Windows build environment to test this, but got lost in the different how-to's ... ------------------------------------------------------------------------ [2009-02-24 23:25:22] mark at lbisat dot com By modifying the following in PHP.ini [mail function] sendmail_from = em...@domain.com It fixed the issue for me on Windows 2003 Server SP2. ------------------------------------------------------------------------ [2009-01-12 11:49:18] julioworld at hotmail dot com I also had this problem and I solved it by adding this line in the php.ini in the section [mail function]: [mail function] sendmail_from = em...@domain.com ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/28038 -- Edit this bug report at http://bugs.php.net/?id=28038&edit=1