summaryrefslogtreecommitdiff
path: root/ext/openssl/tests/bug73833.phpt
blob: cf46092a4613b2b7f0242f7a3393117c1aba0ee5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--TEST--
Bug #73833: null character not allowed in openssl_pkey_get_private
--SKIPIF--
<?php
if (!extension_loaded("openssl")) die("skip openssl not loaded");
?>
--FILE--
<?php
$passwords = ["abc\x00defghijkl", "abcdefghikjl"];
$conf = ['config' => __DIR__.'/openssl.cnf'];

foreach($passwords as $password) {
	$key = openssl_pkey_new($conf);

	if (openssl_pkey_export($key, $privatePEM, $password, $conf) === false) {
		echo "Failed to encrypt.\n";
	} else {
		echo "Encrypted!\n";
	}
	if (openssl_pkey_get_private($privatePEM, $password) === false) {
		echo "Failed to decrypt.\n";
	} else {
		echo "Decrypted!\n";
	}
}
?>
--EXPECT--
Encrypted!
Decrypted!
Encrypted!
Decrypted!