diff options
author | Jakub Zelenka <bukka@php.net> | 2017-10-30 14:29:05 +0000 |
---|---|---|
committer | Jakub Zelenka <bukka@php.net> | 2017-10-30 16:40:56 +0000 |
commit | e78e839e53e6e91d6637cfce220f98a6070f48d5 (patch) | |
tree | e72fa002b3d3723018de3f74d7f1784c7679fc3d /ext | |
parent | 528aa540b44e5889c41ec350cec76c2117aa9f0b (diff) | |
download | php-git-e78e839e53e6e91d6637cfce220f98a6070f48d5.tar.gz |
Rewrite openssl_csr_get_subject test to improve coverage
Diffstat (limited to 'ext')
-rw-r--r-- | ext/openssl/tests/openssl_csr_get_subject_basic.phpt | 58 |
1 files changed, 47 insertions, 11 deletions
diff --git a/ext/openssl/tests/openssl_csr_get_subject_basic.phpt b/ext/openssl/tests/openssl_csr_get_subject_basic.phpt index 895ed3695d..6fe41f80e8 100644 --- a/ext/openssl/tests/openssl_csr_get_subject_basic.phpt +++ b/ext/openssl/tests/openssl_csr_get_subject_basic.phpt @@ -2,19 +2,43 @@ openssl_csr_get_subject() tests --SKIPIF-- <?php -if (!extension_loaded("openssl")) die("skip"); -if (!function_exists("utf8_decode")) die("skip"); +if (!extension_loaded("openssl")) die("skip"); ?> --FILE-- <?php +$config = __DIR__ . DIRECTORY_SEPARATOR . 'openssl.cnf'; +$phex = 'dcf93a0b883972ec0e19989ac5a2ce310e1d37717e8d9571bb7623731866e61e' . + 'f75a2e27898b057f9891c2e27a639c3f29b60814581cd3b2ca3986d268370557' . + '7d45c2e7e52dc81c7a171876e5cea74b1448bfdfaf18828efd2519f14e45e382' . + '6634af1949e5b535cc829a483b8a76223e5d490a257f05bdff16f2fb22c583ab'; +$dh_details = array('p' => $phex, 'g' => '2'); +$dh = openssl_pkey_new(array( + 'dh'=> array('p' => hex2bin($phex), 'g' => '2')) +); -$csr = file_get_contents(dirname(__FILE__) . '/cert.csr'); -if ($out = openssl_csr_get_subject($csr, 1)) { - var_dump($out); -} -echo "\n"; -$cn = utf8_decode($out['CN']); -var_dump($cn); +$dn = array( + "countryName" => "BR", + "stateOrProvinceName" => "Rio Grande do Sul", + "localityName" => "Porto Alegre", + "commonName" => "Henrique do N. Angelo", + "emailAddress" => "hnangelo@php.net" +); + +$args = array( + "digest_alg" => "sha1", + "private_key_bits" => 2048, + "private_key_type" => OPENSSL_KEYTYPE_DSA, + "encrypt_key" => true, + "config" => $config, +); + +$privkey_file = 'file://' . dirname(__FILE__) . '/private_rsa_2048.key'; +$csr = openssl_csr_new($dn, $privkey_file, $args); +$csr_file = file_get_contents(dirname(__FILE__) . '/cert.csr'); + +var_dump(openssl_csr_get_subject($csr_file)); +var_dump(openssl_csr_get_subject($csr, false)); +?> --EXPECTF-- array(6) { ["C"]=> @@ -30,5 +54,17 @@ array(6) { ["CN"]=> string(15) "*.triconnect.nl" } - -string(15) "*.triconnect.nl" +array(6) { + ["countryName"]=> + string(2) "BR" + ["stateOrProvinceName"]=> + string(17) "Rio Grande do Sul" + ["localityName"]=> + string(12) "Porto Alegre" + ["commonName"]=> + string(21) "Henrique do N. Angelo" + ["emailAddress"]=> + string(16) "hnangelo@php.net" + ["organizationName"]=> + string(24) "Internet Widgits Pty Ltd" +} |