diff options
Diffstat (limited to 'ext/phar')
-rw-r--r-- | ext/phar/tests/files/openssl.cnf | 43 | ||||
-rw-r--r-- | ext/phar/tests/phar_setsignaturealgo2.phpt | 4 |
2 files changed, 46 insertions, 1 deletions
diff --git a/ext/phar/tests/files/openssl.cnf b/ext/phar/tests/files/openssl.cnf new file mode 100644 index 0000000000..10e69076cf --- /dev/null +++ b/ext/phar/tests/files/openssl.cnf @@ -0,0 +1,43 @@ +[ 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 + +[ usr_cert ] +basicConstraints=CA:FALSE + diff --git a/ext/phar/tests/phar_setsignaturealgo2.phpt b/ext/phar/tests/phar_setsignaturealgo2.phpt index 66edb61222..9f548d0803 100644 --- a/ext/phar/tests/phar_setsignaturealgo2.phpt +++ b/ext/phar/tests/phar_setsignaturealgo2.phpt @@ -34,9 +34,11 @@ var_dump($p->getSignature()); echo $e->getMessage(); } try { +$config = dirname(__FILE__) . '/files/openssl.cnf'; +$config_arg = array('config' => $config); $private = openssl_get_privatekey(file_get_contents(dirname(__FILE__) . '/files/private.pem')); $pkey = ''; -openssl_pkey_export($private, $pkey); +openssl_pkey_export($private, $pkey, NULL, $config_arg); $p->setSignatureAlgorithm(Phar::OPENSSL, $pkey); var_dump($p->getSignature()); } catch (Exception $e) { |