]> granicus.if.org Git - php/commitdiff
Generate certificate for bug68920.phpt
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 18 Jun 2020 12:49:15 +0000 (14:49 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 18 Jun 2020 12:49:15 +0000 (14:49 +0200)
The certificate really doesn't matter here, but it still needs to
comply with security level...

ext/openssl/tests/bug68920.phpt

index 34e07a4532cd9e96ce72f726705d0c61c0ff1853..c9b90be5cee034647e8f6eb15c576256f9e925f1 100644 (file)
@@ -7,11 +7,13 @@ if (!function_exists("proc_open")) die("skip no proc_open");
 ?>
 --FILE--
 <?php
+$certFile = __DIR__ . DIRECTORY_SEPARATOR . 'bug68920.pem.tmp';
+
 $serverCode = <<<'CODE'
     $serverUri = "ssl://127.0.0.1:64321";
     $serverFlags = STREAM_SERVER_BIND | STREAM_SERVER_LISTEN;
     $serverCtx = stream_context_create(['ssl' => [
-        'local_cert' => __DIR__ . '/san-cert.pem',
+        'local_cert' => '%s',
     ]]);
 
     $server = stream_socket_server($serverUri, $errno, $errstr, $serverFlags, $serverCtx);
@@ -22,6 +24,7 @@ $serverCode = <<<'CODE'
     stream_socket_accept($server, 30);
     stream_socket_accept($server, 30);
 CODE;
+$serverCode = sprintf($serverCode, $certFile);
 
 $clientCode = <<<'CODE'
     $serverUri = "ssl://127.0.0.1:64321";
@@ -46,9 +49,17 @@ $clientCode = <<<'CODE'
     var_dump($sock);
 CODE;
 
+include 'CertificateGenerator.inc';
+$certificateGenerator = new CertificateGenerator();
+$certificateGenerator->saveNewCertAsFileWithKey('bug68920', $certFile);
+
 include 'ServerClientTestCase.inc';
 ServerClientTestCase::getInstance()->run($clientCode, $serverCode);
 ?>
+--CLEAN--
+<?php
+@unlink(__DIR__ . DIRECTORY_SEPARATOR . 'bug68920.pem.tmp');
+?>
 --EXPECTF--
 Warning: stream_socket_client(): Expected peer fingerprint must be a string or an array in %s on line %d