]> granicus.if.org Git - php/commitdiff
Speed up TLS wrapper tests when SSLv3 disabled
authorJakub Zelenka <bukka@php.net>
Sun, 10 Mar 2019 16:23:44 +0000 (16:23 +0000)
committerJakub Zelenka <bukka@php.net>
Sun, 10 Mar 2019 16:23:44 +0000 (16:23 +0000)
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.

ext/openssl/tests/ServerClientTestCase.inc
ext/openssl/tests/tls_wrapper.phpt
ext/openssl/tests/tlsv1.0_wrapper.phpt
ext/openssl/tests/tlsv1.1_wrapper.phpt
ext/openssl/tests/tlsv1.2_wrapper.phpt

index 75767647773f1893adbb430223a57b21e8b97c4c..753366df6f4bec66fc8dc34f6b08a271d7b9ccaa 100644 (file)
@@ -14,6 +14,18 @@ function phpt_wait($worker = WORKER_DEFAULT_NAME, $timeout = null)
     ServerClientTestCase::getInstance()->wait($worker, $timeout);
 }
 
+function phpt_has_sslv3() {
+    static $result = null;
+    if (!is_null($result)) {
+        return $result;
+    }
+    $server = @stream_socket_server('sslv3://127.0.0.1:10013');
+    if ($result = !!$server) {
+        fclose($server);
+    }
+    return $result;
+}
+
 /**
  * This is a singleton to let the wait/notify functions work
  * I know it's horrible, but it's a means to an end
index 8579fc154cae63ea6af9a0c9e8af78b73008d149..1a0ac3abb7d2ad2ed2f6d270eb943da8230321ed 100644 (file)
@@ -16,7 +16,7 @@ $serverCode = <<<'CODE'
     $server = stream_socket_server('tls://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
     phpt_notify();
 
-    for ($i=0; $i < 6; $i++) {
+    for ($i = 0; $i < (phpt_has_sslv3() ? 6 : 5); $i++) {
         @stream_socket_accept($server, 3);
     }
 CODE;
index 6be29848bc5c4993f5f952a6e4c5511accdc6564..58ba8168ba6cd4caa66b8fef6bb76307abafca60 100644 (file)
@@ -16,7 +16,7 @@ $serverCode = <<<'CODE'
     $server = stream_socket_server('tlsv1.0://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
     phpt_notify();
 
-    for ($i=0; $i < 3; $i++) {
+    for ($i = 0; $i < (phpt_has_sslv3() ? 3 : 2); $i++) {
         @stream_socket_accept($server, 3);
     }
 CODE;
index cbc9474ca8566dc21897828628dd55d2236fa824..a493a241bab20712c0c399062a723490ea32fd67 100644 (file)
@@ -16,7 +16,7 @@ $serverCode = <<<'CODE'
     $server = stream_socket_server('tlsv1.1://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
     phpt_notify();
 
-    for ($i=0; $i < 3; $i++) {
+    for ($i = 0; $i < (phpt_has_sslv3() ? 3 : 2); $i++) {
         @stream_socket_accept($server, 3);
     }
 CODE;
index d1ec44053bcbee771b11c99c1ba17f083773ce9f..dd23086a44884fafb07e977bdb17a255e68af26b 100644 (file)
@@ -16,7 +16,7 @@ $serverCode = <<<'CODE'
     $server = stream_socket_server('tlsv1.2://127.0.0.1:64321', $errno, $errstr, $flags, $ctx);
     phpt_notify();
 
-    for ($i=0; $i < 3; $i++) {
+    for ($i = 0; $i < (phpt_has_sslv3() ? 3 : 2); $i++) {
         @stream_socket_accept($server, 3);
     }
 CODE;