Skip to content

Commit a3e1082

Browse files
committed
Merge branch 'PHP-8.0'
2 parents 118cd3e + 4dca114 commit a3e1082

File tree

1 file changed

+42
-5
lines changed

1 file changed

+42
-5
lines changed

ext/openssl/tests/bug62890.phpt

Lines changed: 42 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,51 @@ Bug #62890 (default_socket_timeout=-1 causes connection to timeout)
33
--SKIPIF--
44
<?php
55
if (!extension_loaded('openssl')) die('skip openssl extension not available');
6-
if (getenv('SKIP_ONLINE_TESTS')) die('skip online test');
6+
if (!function_exists("proc_open")) die("skip no proc_open");
77
?>
88
--INI--
99
default_socket_timeout=-1
1010
--FILE--
1111
<?php
12-
$clientCtx = stream_context_create(['ssl' => ['verify_peer' => false]]);
13-
var_dump((bool) file_get_contents('https://www.php.net', false, $clientCtx));
12+
$certFile = __DIR__ . DIRECTORY_SEPARATOR . 'bug62890.pem.tmp';
13+
14+
$serverCode = <<<'CODE'
15+
$flags = STREAM_SERVER_BIND|STREAM_SERVER_LISTEN;
16+
$ctx = stream_context_create(['ssl' => [
17+
'local_cert' => '%s',
18+
'security_level' => 1,
19+
]]);
20+
21+
$server = stream_socket_server('tls://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
22+
phpt_notify();
23+
@stream_socket_accept($server, 3);
24+
CODE;
25+
$serverCode = sprintf($serverCode, $certFile);
26+
27+
$clientCode = <<<'CODE'
28+
$flags = STREAM_CLIENT_CONNECT;
29+
$ctx = stream_context_create(['ssl' => [
30+
'verify_peer' => false,
31+
'verify_peer_name' => false,
32+
'security_level' => 1,
33+
]]);
34+
35+
phpt_wait();
36+
37+
$client = stream_socket_client("tls://127.0.0.1:64321", $errno, $errstr, 3, $flags, $ctx);
38+
var_dump($client);
39+
CODE;
40+
41+
include 'CertificateGenerator.inc';
42+
$certificateGenerator = new CertificateGenerator();
43+
$certificateGenerator->saveNewCertAsFileWithKey('bug62890', $certFile);
44+
45+
include 'ServerClientTestCase.inc';
46+
ServerClientTestCase::getInstance()->run($clientCode, $serverCode);
1447
?>
15-
--EXPECT--
16-
bool(true)
48+
--CLEAN--
49+
<?php
50+
@unlink(__DIR__ . DIRECTORY_SEPARATOR . 'bug62890.pem.tmp');
51+
?>
52+
--EXPECTF--
53+
resource(%d) of type (stream)

0 commit comments

Comments
 (0)