#48182 [Com]: asynchronous socket connection over ssl fails entirely
| From: | frase at cs dot wisc dot edu | Date: | Tue, 18 Aug 2009 13:40:45 +0000 |
| Subject: | #48182 [Com]: asynchronous socket connection over ssl fails entirely | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-141192@lists.php.net to get a copy of this message | ||
ID: 48182
Comment by: frase at cs dot wisc dot edu
Reported By: frase at cs dot wisc dot edu
Status: Assigned
Bug Type: OpenSSL related
Operating System: *
PHP Version: 5.2.11RC1
Assigned To: srinatar
New Comment:
The new problem could be unrelated, it is definitely different behavior
than before. I've reported it here only because it still only affects
ssl:// socket connections opened asynchronously --
tcp sockets open fine (both sync and async), and ssl sockets open fine
synchronously.
Also, I have a new clue. The very first attempt (ssl+async) on a
freshly booted Apache server works fine. It is only on the second and
subsequent attempts that the new warnings appear and the socket won't
open. When I restart Apache, it works one more time.
This is Windows 2000 Professional SP4, Apache 2.2.11, with the posted
PHP 5.2.11RC1-Win32-VC6 binary (threadsafe, and apparently including
OpenSSL 0.9.8k) configured as an Apache module (not CGI).
Hope that helps.
Previous Comments:
------------------------------------------------------------------------
[2009-08-18 02:11:12] srinatar@php.net
thanks for verifying it. let me try this again with php 5.2.11rc1 and
see why it is happening (again).
------------------------------------------------------------------------
[2009-08-14 13:56:38] frase at cs dot wisc dot edu
To clarify, I tested the posted patch by recompiling 5.3.0 on Ubuntu
Linux, and the fix worked. I was not able to test the patch in 5.2.10
on Windows as I have no suitable build environment. The posted
5.2.11RC1 binaries (under Apache 2.2.11) now exhibit this new problem.
------------------------------------------------------------------------
[2009-08-14 13:49:53] frase at cs dot wisc dot edu
I'm re-opening this bug as the fix appears not to work in 5.2.11RC1.
With the same testing code as in the original report, when connecting
synchronously, all is well. But when connecting asynchronously I get
these warnings:
Warning: stream_socket_client() [function.stream-socket-client]: SSL:
The operation completed successfully. in test-async-ssl.php on line 14
Warning: stream_socket_client() [function.stream-socket-client]: Failed
to enable crypto in test-async-ssl.php on line 14
Warning: stream_socket_client() [function.stream-socket-client]: unable
to connect to ssl://91.189.90.211:443 (Unknown error) in
test-async-ssl.php on line 14
Line 14 is of course the stream_socket_client() call. Additionally,
after these warnings, $errno contains 10035 and $errstr is empty.
------------------------------------------------------------------------
[2009-07-28 19:34:15] srinatar@php.net
This bug has been fixed in SVN.
Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
Thank you for the report, and for helping us make PHP better.
Committed revision 286465.
------------------------------------------------------------------------
[2009-07-10 13:38:01] frase at cs dot wisc dot edu
The supplied patch does fix the problem in 5.3.0 on Linux; I have no
Windows build environment so I can't test it there but can't see why it
wouldn't also work. Since the patch was to OpenSSL I've changed the
category back.
Many thanks!
------------------------------------------------------------------------
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/48182
--
Edit this bug report at http://bugs.php.net/?id=48182&edit=1