Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 0 additions & 68 deletions src/PhpBrew/Patches/PHP56WithOpenSSL11Patch.php
Original file line number Diff line number Diff line change
Expand Up @@ -1189,64 +1189,6 @@ public function rules()

if (len >= 0) {
data[len] = 0;
diff --git a/ext/openssl/tests/bug41033.phpt b/ext/openssl/tests/bug41033.phpt
index 4aeae66f4136..50c78fee8411 100644
--- a/ext/openssl/tests/bug41033.phpt
+++ b/ext/openssl/tests/bug41033.phpt
@@ -13,11 +13,11 @@ $pub = 'file://' . dirname(__FILE__) . '/' . 'bug41033pub.pem';

$prkeyid = openssl_get_privatekey($prv, "1234");
$ct = "Hello I am some text!";
-openssl_sign($ct, $signature, $prkeyid, OPENSSL_ALGO_DSS1);
+openssl_sign($ct, $signature, $prkeyid, OPENSSL_VERSION_NUMBER < 0x10100000 ? OPENSSL_ALGO_DSS1 : OPENSSL_ALGO_SHA1);
echo "Signature: ".base64_encode($signature) . "\n";

$pukeyid = openssl_get_publickey($pub);
-$valid = openssl_verify($ct, $signature, $pukeyid, OPENSSL_ALGO_DSS1);
+$valid = openssl_verify($ct, $signature, $pukeyid, OPENSSL_VERSION_NUMBER < 0x10100000 ? OPENSSL_ALGO_DSS1 : OPENSSL_ALGO_SHA1);
echo "Signature validity: " . $valid . "\n";


diff --git a/ext/openssl/tests/bug66501.phpt b/ext/openssl/tests/bug66501.phpt
index 7ad5e21749ff..c2146ab3b901 100644
--- a/ext/openssl/tests/bug66501.phpt
+++ b/ext/openssl/tests/bug66501.phpt
@@ -16,7 +16,7 @@ AwEHoUQDQgAEPq4hbIWHvB51rdWr8ejrjWo4qVNWVugYFtPg/xLQw0mHkIPZ4DvK
sqOTOnMoezkbSmVVMuwz9flvnqHGmQvmug==
-----END EC PRIVATE KEY-----';
$key = openssl_pkey_get_private($pkey);
-$res = openssl_sign($data ='alpha', $sign, $key, 'ecdsa-with-SHA1');
+$res = openssl_sign($data ='alpha', $sign, $key, OPENSSL_VERSION_NUMBER < 0x10100000 ? 'ecdsa-with-SHA1' : 'SHA1');
var_dump($res);
--EXPECTF--
bool(true)
diff --git a/ext/openssl/tests/openssl_error_string_basic.phpt b/ext/openssl/tests/openssl_error_string_basic.phpt
index 82f3099264ea..d94048d6ba3b 100644
--- a/ext/openssl/tests/openssl_error_string_basic.phpt
+++ b/ext/openssl/tests/openssl_error_string_basic.phpt
@@ -105,7 +105,7 @@ expect_openssl_errors('openssl_private_decrypt', ['04065072']);
// public encrypt and decrypt with failed padding check and padding
@openssl_public_encrypt("data", $crypted, $public_key_file, 1000);
@openssl_public_decrypt("data", $crypted, $public_key_file);
-expect_openssl_errors('openssl_private_(en|de)crypt padding', ['0906D06C', '04068076', '0407006A', '04067072']);
+expect_openssl_errors('openssl_private_(en|de)crypt padding', OPENSSL_VERSION_NUMBER < 0x10100000 ? ['0906D06C', '04068076', '0407006A', '04067072'] : ['0906D06C', '04068076', '04067072']);

// X509
echo "X509 errors\n";
diff --git a/ext/openssl/tests/sni_server.phpt b/ext/openssl/tests/sni_server.phpt
index d44a69f549e6..ef23258cee8f 100644
--- a/ext/openssl/tests/sni_server.phpt
+++ b/ext/openssl/tests/sni_server.phpt
@@ -27,6 +27,9 @@ CODE;
$clientCode = <<<'CODE'
$flags = STREAM_CLIENT_CONNECT;
$ctxArr = [
+ 'verify_peer' => false,
+ 'verify_peer_name' => false,
+ 'allow_self_signed' => true,
'cafile' => __DIR__ . '/sni_server_ca.pem',
'capture_peer_cert' => true
];
diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c
index d5490331d634..c2d477c1db2b 100644
--- a/ext/openssl/xp_ssl.c
Expand Down Expand Up @@ -1349,16 +1291,6 @@ public function rules()
#endif

*signature_len = phar_hex_str((const char*)sig, sig_len, signature TSRMLS_CC);

From 076c5a96b9730110f20fab62ec27cb830ea19272 Mon Sep 17 00:00:00 2001
From: zsalab <[email protected]>
Date: Tue, 1 Aug 2017 15:38:30 +0200
Subject: [PATCH 2/2] Improved compatibility for legacy OpenSSL

---
ext/openssl/openssl.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c
index 6c3ae3cde80a..b53114cdf34d 100644
--- a/ext/openssl/openssl.c
Expand Down
56 changes: 56 additions & 0 deletions tests/PhpBrew/Patches/PHP56WithOpenSSL11PatchTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<?php

namespace PhpBrew\Tests\Patches;

use CLIFramework\Logger;
use PhpBrew\Build;
use PhpBrew\Patches\PHP56WithOpenSSL11Patch;
use PhpBrew\Testing\PatchTestCase;

class PHP56WithOpenSSL11PatchTest extends PatchTestCase
{
/**
* @dataProvider versionProvider
*/
public function testPatchVersion($version)
{
$logger = new Logger();
$logger->setQuiet();

$sourceDirectory = getenv('PHPBREW_BUILD_PHP_DIR');

$this->setupBuildDirectory($version);

$build = new Build($version);
$build->setSourceDirectory($sourceDirectory);
$build->enableVariant('openssl');
$this->assertTrue($build->isEnabledVariant('openssl'));

$patch = new PHP56WithOpenSSL11Patch();
$this->assertTrue($patch->match($build, $logger));

$this->assertGreaterThan(0, $patch->apply($build, $logger));

$expectedDirectory = getenv('PHPBREW_EXPECTED_PHP_DIR') . '/' . $version . '-php56-openssl11-patch';

foreach (
array(
'ext/openssl/openssl.c',
'ext/openssl/xp_ssl.c',
'ext/phar/util.c',
) as $path
) {
$this->assertFileEquals(
$expectedDirectory . '/' . $path,
$sourceDirectory . '/' . $path
);
}
}

public static function versionProvider()
{
return array(
array('5.6.40'),
);
}
}
Loading