Edit report at http://bugs.php.net/bug.php?id=39654&edit=1
ID: 39654 Comment by: hamdisahloul at hotmail dot com Reported by: david at blue-labs dot org Summary: fsockopen(tls://...) starts SSL instead of TLS Status: Bogus Type: Bug Package: Sockets related Operating System: Linux PHP Version: 5.2.0 Block user comment: N Private report: N New Comment: Plain SMTP!! Not PHP problem?? Well, let me explain it to you! In case of TLS, PHP shall start a plain text connection and then upgrade it to an encrypted connection over the same port using the STARTTLS extension. Review this for more details: http://en.wikipedia.org/wiki/STARTTLS Previous Comments: ------------------------------------------------------------------------ [2006-11-28 09:21:21] [email protected] These error messages mean that you're trying to speak SMTP-SSL to a service which supports only plain SMTP. Usually SMTP over SSL uses different port instead of 25. Not PHP problem. ------------------------------------------------------------------------ [2006-11-28 01:19:23] david at blue-labs dot org Description: ------------ (this is actually php 5.1.6) using the tls target, fsockopen() tries to negotiate SSL instead of starting a connection and negotiating STARTTLS. Reproduce code: --------------- Scott PHP # cat tls-test.php <? $fp = fsockopen("tls://mail.blue-labs.org", 25, $errno, $errstr); ?> Expected result: ---------------- I expect it to open a connection and negotiate STARTTLS. ssl:// should start an SSL connection, tls:// should start a TLS connection Actual result: -------------- Scott PHP $ php ./tls-test.php Warning: fsockopen(): SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number in /home/david/svn/BlueLabs/BlueList/PHP/tls-test.php on line 3 Warning: fsockopen(): Failed to enable crypto in /home/david/svn/BlueLabs/BlueList/PHP/tls-test.php on line 3 Warning: fsockopen(): unable to connect to tls://mail.blue-labs.org:25 (Unknown error) in /home/david/svn/BlueLabs/BlueList/PHP/tls-test.php on line 3 (trimmed for brevity) NOQUEUE: connect from [69.167.98.28] AUTH: available mech=CRAM-MD5, allowed mech=DIGEST-MD5 CRAM-MD5 LOGIN PLAIN --- 220-sunny-beach.m2000inc.com ESMTP --- 220 <-- \026\003\001 --- 500 5.5.1 Command unrecognized: "\026\003\001" <-- --- 500 5.5.1 Command unrecognized: "" --- 421 4.4.1 sunny-beach.m2000inc.com Lost input channel from [69.167.98.28] [69.167.98.28] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=39654&edit=1
