mirror of
https://github.com/php/php-src.git
synced 2025-08-19 08:49:28 +02:00

If SSLv3 is disabled in OpenSSL, then sslv3 is not available so the accept times out. This commit removes the extra accept if SSLv3 is disabled.
49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
--TEST--
|
|
tlsv1.0 stream wrapper
|
|
--SKIPIF--
|
|
<?php
|
|
if (!extension_loaded("openssl")) die("skip openssl not loaded");
|
|
if (!function_exists("proc_open")) die("skip no proc_open");
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
$serverCode = <<<'CODE'
|
|
$flags = STREAM_SERVER_BIND|STREAM_SERVER_LISTEN;
|
|
$ctx = stream_context_create(['ssl' => [
|
|
'local_cert' => __DIR__ . '/streams_crypto_method.pem',
|
|
]]);
|
|
|
|
$server = stream_socket_server('tlsv1.0://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
|
|
phpt_notify();
|
|
|
|
for ($i = 0; $i < (phpt_has_sslv3() ? 3 : 2); $i++) {
|
|
@stream_socket_accept($server, 3);
|
|
}
|
|
CODE;
|
|
|
|
$clientCode = <<<'CODE'
|
|
$flags = STREAM_CLIENT_CONNECT;
|
|
$ctx = stream_context_create(['ssl' => [
|
|
'verify_peer' => false,
|
|
'verify_peer_name' => false,
|
|
]]);
|
|
|
|
phpt_wait();
|
|
|
|
$client = stream_socket_client("tlsv1.0://127.0.0.1:64321", $errno, $errstr, 3, $flags, $ctx);
|
|
var_dump($client);
|
|
|
|
$client = @stream_socket_client("sslv3://127.0.0.1:64321", $errno, $errstr, 3, $flags, $ctx);
|
|
var_dump($client);
|
|
|
|
$client = @stream_socket_client("tlsv1.2://127.0.0.1:64321", $errno, $errstr, 3, $flags, $ctx);
|
|
var_dump($client);
|
|
CODE;
|
|
|
|
include 'ServerClientTestCase.inc';
|
|
ServerClientTestCase::getInstance()->run($clientCode, $serverCode);
|
|
?>
|
|
--EXPECTF--
|
|
resource(%d) of type (stream)
|
|
bool(false)
|
|
bool(false)
|