cataphract Wed, 14 Sep 2011 09:56:59 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=316726
Log: - Fixed test ext/openssl/tests/004.phpt. - Made ext/openssl/tests/bug55646.phpt more reproducible by giving it a custom openssl.cnf. Bug: https://bugs.php.net/55646 (Closed) decoding csr corrupts UTF8 characters Changed paths: U php/php-src/branches/PHP_5_4/ext/openssl/tests/004.phpt U php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55646.phpt A php/php-src/branches/PHP_5_4/ext/openssl/tests/openssl.cnf U php/php-src/trunk/ext/openssl/tests/004.phpt U php/php-src/trunk/ext/openssl/tests/bug55646.phpt A php/php-src/trunk/ext/openssl/tests/openssl.cnf Modified: php/php-src/branches/PHP_5_4/ext/openssl/tests/004.phpt =================================================================== --- php/php-src/branches/PHP_5_4/ext/openssl/tests/004.phpt 2011-09-14 09:27:39 UTC (rev 316725) +++ php/php-src/branches/PHP_5_4/ext/openssl/tests/004.phpt 2011-09-14 09:56:59 UTC (rev 316726) @@ -28,7 +28,7 @@ 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 Modified: php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55646.phpt =================================================================== --- php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55646.phpt 2011-09-14 09:27:39 UTC (rev 316725) +++ php/php-src/branches/PHP_5_4/ext/openssl/tests/bug55646.phpt 2011-09-14 09:56:59 UTC (rev 316726) @@ -17,7 +17,13 @@ "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); Added: php/php-src/branches/PHP_5_4/ext/openssl/tests/openssl.cnf =================================================================== --- php/php-src/branches/PHP_5_4/ext/openssl/tests/openssl.cnf (rev 0) +++ php/php-src/branches/PHP_5_4/ext/openssl/tests/openssl.cnf 2011-09-14 09:56:59 UTC (rev 316726) @@ -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 + Modified: php/php-src/trunk/ext/openssl/tests/004.phpt =================================================================== --- php/php-src/trunk/ext/openssl/tests/004.phpt 2011-09-14 09:27:39 UTC (rev 316725) +++ php/php-src/trunk/ext/openssl/tests/004.phpt 2011-09-14 09:56:59 UTC (rev 316726) @@ -28,7 +28,7 @@ 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 Modified: php/php-src/trunk/ext/openssl/tests/bug55646.phpt =================================================================== --- php/php-src/trunk/ext/openssl/tests/bug55646.phpt 2011-09-14 09:27:39 UTC (rev 316725) +++ php/php-src/trunk/ext/openssl/tests/bug55646.phpt 2011-09-14 09:56:59 UTC (rev 316726) @@ -17,7 +17,13 @@ "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); Added: php/php-src/trunk/ext/openssl/tests/openssl.cnf =================================================================== --- php/php-src/trunk/ext/openssl/tests/openssl.cnf (rev 0) +++ php/php-src/trunk/ext/openssl/tests/openssl.cnf 2011-09-14 09:56:59 UTC (rev 316726) @@ -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 +
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php