From 8bf8989a4c5f6b660c7c227bcbdac9328afaab49 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Gustavo=20Andr=C3=A9=20dos=20Santos=20Lopes?= Date: Wed, 14 Sep 2011 09:56:59 +0000 Subject: [PATCH] - Fixed test ext/openssl/tests/004.phpt. - Made ext/openssl/tests/bug55646.phpt more reproducible by giving it a custom openssl.cnf. --- ext/openssl/tests/004.phpt | 2 +- ext/openssl/tests/bug55646.phpt | 8 ++++++- ext/openssl/tests/openssl.cnf | 40 +++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 ext/openssl/tests/openssl.cnf diff --git a/ext/openssl/tests/004.phpt b/ext/openssl/tests/004.phpt index b9c41590cf..c6c7e874cf 100644 --- a/ext/openssl/tests/004.phpt +++ b/ext/openssl/tests/004.phpt @@ -28,7 +28,7 @@ NULL Warning: openssl_csr_new(): key array must be of the form array(0 => key, 1 => phrase) in %s on line %d -Warning: openssl_csr_new(): add1_attr_by_txt challengePassword_min -> 4 (failed) in %s on line %d +Warning: openssl_csr_new(): add1_attr_by_txt challengePassword_min -> 4 (failed; check error queue and value of string_mask OpenSSL option if illegal characters are reported) in %s on line %d bool(false) resource(%d) of type (OpenSSL X.509 CSR) Done diff --git a/ext/openssl/tests/bug55646.phpt b/ext/openssl/tests/bug55646.phpt index b7118fc04d..c11284d72d 100644 --- a/ext/openssl/tests/bug55646.phpt +++ b/ext/openssl/tests/bug55646.phpt @@ -17,7 +17,13 @@ $csr_info = array( "organizationalUnitName" => "IT \xe4\xba\x92", "commonName" => "www.example.com",); $private = openssl_pkey_new($config); -$csr_res = openssl_csr_new($csr_info, $private); +while (openssl_error_string()) {} +$csr_res = openssl_csr_new($csr_info, $private, + ['config' => __DIR__."/openssl.cnf"]); +if (!$csr_res) { + while ($e = openssl_error_string()) { $err = $e; } + die("Failed; last error: $err"); +} openssl_csr_export($csr_res, $csr); $output = openssl_csr_get_subject($csr); diff --git a/ext/openssl/tests/openssl.cnf b/ext/openssl/tests/openssl.cnf new file mode 100644 index 0000000000..20bc1ee43e --- /dev/null +++ b/ext/openssl/tests/openssl.cnf @@ -0,0 +1,40 @@ +[ req ] +default_bits = 1024 +default_keyfile = privkey.pem +distinguished_name = req_distinguished_name +attributes = req_attributes +x509_extensions = v3_ca # The extentions to add to the self signed cert +string_mask = MASK:4294967295 + + +[ req_distinguished_name ] +countryName = Country Name (2 letter code) +countryName_default = AU +countryName_min = 2 +countryName_max = 2 +stateOrProvinceName = State or Province Name (full name) +stateOrProvinceName_default = Some-State +localityName = Locality Name (eg, city) +0.organizationName = Organization Name (eg, company) +0.organizationName_default = Internet Widgits Pty Ltd +organizationalUnitName = Organizational Unit Name (eg, section) +commonName = Common Name (eg, YOUR name) +commonName_max = 64 +emailAddress = Email Address +emailAddress_max = 64 + +[ req_attributes ] +challengePassword = A challenge password +challengePassword_min = 4 +challengePassword_max = 20 +unstructuredName = An optional company name + +[ v3_req ] +basicConstraints = CA:FALSE +keyUsage = nonRepudiation, digitalSignature, keyEncipherment + +[ v3_ca ] +subjectKeyIdentifier=hash +authorityKeyIdentifier=keyid:always,issuer:always +basicConstraints = CA:true + -- 2.40.0