@@ -7,13 +7,16 @@ if (!function_exists("proc_open")) die("skip no proc_open");
7
7
?>
8
8
--FILE--
9
9
<?php
10
+ $ caCertFile = __DIR__ . DIRECTORY_SEPARATOR . 'bug69215-ca.pem.tmp ' ;
11
+ $ clientCertFile = __DIR__ . DIRECTORY_SEPARATOR . 'bug69215-client.pem.tmp ' ;
12
+ $ serverCertFile = __DIR__ . DIRECTORY_SEPARATOR . 'bug69215-server.pem.tmp ' ;
13
+
10
14
$ serverCode = <<<'CODE'
11
15
$serverUri = "ssl://127.0.0.1:64321";
12
16
$serverFlags = STREAM_SERVER_BIND | STREAM_SERVER_LISTEN;
13
17
$serverCtx = stream_context_create(['ssl' => [
14
- 'local_cert' => __DIR__ . '/bug69215-server.pem',
15
- 'passphrase' => 'elephpant',
16
- 'cafile' => __DIR__ . '/bug69215-ca.pem',
18
+ 'local_cert' => '%s',
19
+ 'cafile' => '%s',
17
20
'verify_peer' => true,
18
21
'verify_peer_name' => true,
19
22
'peer_name' => 'bug69215-client',
@@ -24,14 +27,14 @@ $serverCode = <<<'CODE'
24
27
25
28
stream_socket_accept($server, 30);
26
29
CODE;
30
+ $ serverCode = sprintf ($ serverCode , $ serverCertFile , $ caCertFile );
27
31
28
32
$ clientCode = <<<'CODE'
29
33
$serverUri = "ssl://127.0.0.1:64321";
30
34
$clientFlags = STREAM_CLIENT_CONNECT;
31
35
$clientCtx = stream_context_create(['ssl' => [
32
- 'local_cert' => __DIR__ . '/bug69215-client.pem',
33
- 'passphrase' => 'elephpant',
34
- 'cafile' => __DIR__ . '/bug69215-ca.pem',
36
+ 'local_cert' => '%s',
37
+ 'cafile' => '%s',
35
38
'verify_peer' => true,
36
39
'verify_peer_name' => true,
37
40
'peer_name' => 'bug69215-server',
@@ -41,9 +44,22 @@ $clientCode = <<<'CODE'
41
44
42
45
var_dump(stream_socket_client($serverUri, $errno, $errstr, 1, $clientFlags, $clientCtx));
43
46
CODE;
47
+ $ clientCode = sprintf ($ clientCode , $ clientCertFile , $ caCertFile );
48
+
49
+ include 'CertificateGenerator.inc ' ;
50
+ $ certificateGenerator = new CertificateGenerator ();
51
+ $ certificateGenerator ->saveCaCert ($ caCertFile );
52
+ $ certificateGenerator ->saveNewCertAsFileWithKey ('bug69215-client ' , $ clientCertFile );
53
+ $ certificateGenerator ->saveNewCertAsFileWithKey ('bug69215-server ' , $ serverCertFile );
44
54
45
55
include 'ServerClientTestCase.inc ' ;
46
56
ServerClientTestCase::getInstance ()->run ($ clientCode , $ serverCode );
47
57
?>
58
+ --CLEAN--
59
+ <?php
60
+ @unlink (__DIR__ . DIRECTORY_SEPARATOR . 'bug69215-ca.pem.tmp ' );
61
+ @unlink (__DIR__ . DIRECTORY_SEPARATOR . 'bug69215-client.pem.tmp ' );
62
+ @unlink (__DIR__ . DIRECTORY_SEPARATOR . 'bug69215-server.pem.tmp ' );
63
+ ?>
48
64
--EXPECTF--
49
65
resource(%d) of type (stream)
0 commit comments