Hi Wez,
<?php
$dn = array(
   "countryName" => "UK",
   "stateOrProvinceName" => "Somerset",
   "localityName" => "Glastonbury",
   "organizationName" => "The Brain Room Limited",
   "organizationalUnitName" => "PHP Documentation Team",
   "commonName" => "Wez Furlong",
   "emailAddress" => "[EMAIL PROTECTED]"
);
// Non-existent or null private key
$csr = openssl_csr_new($dn, $privkey1);
?>
will also cause the double free of privkey and hence potential seg
fault.
openssl_csr_new tries to create a fresh private key and adds to the
resource list and fails to req.priv_key to null so the dispose function
frees the private key generated. Later when the php_request_shutdown is
called it agains frees the EG(regular_list) this causes the seg fault.

Patch is available at,
http://puggy.symonds.net/~kameshj/openssl.c.patch

With regards
Kamesh Jayachandran

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to