Req #70939 [Com]: socket_import_stream does not indicate missing support for SSL
Edit report at https://bugs.php.net/bug.php?id=70939&edit=1
ID: 70939
Comment by: contact at sshilko dot com
Reported by: lcharron at meditech dot com
Summary: socket_import_stream does not indicate missing
support for SSL
Status: Open
Type: Feature/Change Request
Package: Sockets related
Operating System: Any
PHP Version: 5.5.30
Block user comment: N
Private report: N
New Comment:
Same issue, i thought its "by design", at the moment there is no option to enable
SO_KEEPALIVE when using stream_socket_client() with SSL/TLS
Previous Comments:
------------------------------------------------------------------------
[2015-11-18 20:33:10] lcharron at meditech dot com
Description:
------------
You should be able to obtain the socket from a socket-based SSL stream so that socket options (ex.
SO_KEEPALIVE) can be set.
The documentation makes no mention that this is not possible.
Test script:
---------------
$host = "host";
$port = "443";
$stream = stream_socket_client("ssl://{$host}:{$port}");
$socket = socket_import_stream($stream);
if ($socket) {
socket_set_option($socket, SOL_SOCKET, SO_KEEPALIVE, 1);
}
Expected result:
----------------
socket_import_stream should return the underlying socket so options can be set.
Actual result:
--------------
socket_import_stream returns null and the following warning is emitted:
Warning: socket_import_stream(): cannot represent a stream of type tcp_socket/ssl as a Socket
Descriptor in ...
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=70939&edit=1
Thread (7 messages)