[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2009-07-06 Thread Pierre-Alain Joye
pajoye  Mon Jul  6 23:02:19 2009 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  - #48116, fix build against openssl 1.0
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.29r2=1.98.2.5.2.41.2.30diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.29 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.30
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.29Mon Apr 20 09:44:29 2009
+++ php-src/ext/openssl/openssl.c   Mon Jul  6 23:02:18 2009
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.29 2009/04/20 09:44:29 mkoppanen Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.30 2009/07/06 23:02:18 pajoye Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -502,8 +502,8 @@
 static char default_ssl_conf_filename[MAXPATHLEN];
 
 struct php_x509_request { /* {{{ */
-   LHASH * global_config;  /* Global SSL config */
-   LHASH * req_config; /* SSL config for this request */
+   LHASH_OF(CONF_VALUE) * global_config;   /* Global SSL config */
+   LHASH_OF(CONF_VALUE) * req_config;  /* SSL config for this 
request */
const EVP_MD * md_alg;
const EVP_MD * digest;
char* section_name,
@@ -680,7 +680,7 @@
 }
 /* }}} */
 
-static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename,const char * section, LHASH * config 
TSRMLS_DC) /* {{{ */
+static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename,const char * section, LHASH_OF(CONF_VALUE) * 
config TSRMLS_DC) /* {{{ */
 {
X509V3_CTX ctx;

@@ -1158,7 +1158,7 @@
if (in == NULL) {
return NULL;
}
-   cert = (X509 *) PEM_ASN1_read_bio((char *(*)())d2i_X509, 
PEM_STRING_X509, in, NULL, NULL, NULL);
+   cert = (X509 *) PEM_ASN1_read_bio((d2i_of_void *)d2i_X509, 
PEM_STRING_X509, in, NULL, NULL, NULL);
BIO_free(in);
}
 
@@ -2787,8 +2787,7 @@
case EVP_PKEY_RSA:
case EVP_PKEY_RSA2:
assert(pkey-pkey.rsa != NULL);
-
-   if (NULL == pkey-pkey.rsa-p || NULL == 
pkey-pkey.rsa-q) {
+   if (pkey-pkey.rsa != NULL  (NULL == 
pkey-pkey.rsa-p || NULL == pkey-pkey.rsa-q)) {
return 0;
}
break;



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2009-07-06 Thread Pierre-Alain Joye
pajoye  Mon Jul  6 23:26:23 2009 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  - #48116, restore 0.x compability, thx config.cache.
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.30r2=1.98.2.5.2.41.2.31diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.30 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.31
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.30Mon Jul  6 23:02:18 2009
+++ php-src/ext/openssl/openssl.c   Mon Jul  6 23:26:23 2009
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.30 2009/07/06 23:02:18 pajoye Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.31 2009/07/06 23:26:23 pajoye Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -502,8 +502,13 @@
 static char default_ssl_conf_filename[MAXPATHLEN];
 
 struct php_x509_request { /* {{{ */
+#if OPENSSL_VERSION_NUMBER = 0x1002L
LHASH_OF(CONF_VALUE) * global_config;   /* Global SSL config */
LHASH_OF(CONF_VALUE) * req_config;  /* SSL config for this 
request */
+#else
+   LHASH * global_config;  /* Global SSL config */
+   LHASH * req_config; /* SSL config for this request */
+#endif
const EVP_MD * md_alg;
const EVP_MD * digest;
char* section_name,
@@ -680,7 +685,11 @@
 }
 /* }}} */
 
-static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename,const char * section, LHASH_OF(CONF_VALUE) * 
config TSRMLS_DC) /* {{{ */
+#if OPENSSL_VERSION_NUMBER = 0x1002L
+static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename, const char * section, LHASH_OF(CONF_VALUE) * 
config TSRMLS_DC) /* {{{ */
+#else
+static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename, const char * section, LHASH * config TSRMLS_DC) 
/* {{{ */
+#endif
 {
X509V3_CTX ctx;




-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2009-04-20 Thread Mikko Koppanen
mkoppanen   Mon Apr 20 09:44:30 2009 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH: Closes #47991 SSL streams fail if error stack contains items
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.28r2=1.98.2.5.2.41.2.29diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.28 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.29
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.28Sun Mar 29 23:32:34 2009
+++ php-src/ext/openssl/openssl.c   Mon Apr 20 09:44:29 2009
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.28 2009/03/29 23:32:34 scottmac Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.29 2009/04/20 09:44:29 mkoppanen Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -4367,6 +4367,7 @@
char *cipherlist = NULL;
int ok = 1;
 
+   ERR_clear_error();
 
/* look at context options in the stream and set appropriate 
verification flags */
if (GET_VER_OPT(verify_peer)  zval_is_true(*val)) {



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2009-03-29 Thread Scott MacVicar
scottmacSun Mar 29 23:32:34 2009 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH Fix bug #47828 - Converting to UTF-8 can sometimes fail, check error 
codes and avoid segfault.
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.27r2=1.98.2.5.2.41.2.28diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.27 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.28
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.27Wed Dec 31 11:15:40 2008
+++ php-src/ext/openssl/openssl.c   Sun Mar 29 23:32:34 2009
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.27 2008/12/31 11:15:40 sebastian Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.28 2009/03/29 23:32:34 scottmac Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -575,7 +575,9 @@
str = X509_NAME_ENTRY_get_data(ne);
if (ASN1_STRING_type(str) != V_ASN1_UTF8STRING) 
{
to_add_len = 
ASN1_STRING_to_UTF8(to_add, str);
-   add_next_index_stringl(subentries, 
(char *)to_add, to_add_len, 1);
+   if (to_add_len != -1) {
+   
add_next_index_stringl(subentries, (char *)to_add, to_add_len, 1);
+   }
} else {
to_add = ASN1_STRING_data(str);
to_add_len = ASN1_STRING_length(str);
@@ -591,7 +593,7 @@
} else {
zval_dtor(subentries);
FREE_ZVAL(subentries);
-   if (obj_cnt  str) {
+   if (obj_cnt  str  to_add_len  -1) {
add_assoc_stringl(subitem, sname, (char 
*)to_add, to_add_len, 1);
}
}



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-11-17 Thread Scott MacVicar
scottmacMon Nov 17 21:54:25 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH Add openssl_random_pseudo_bytes() in order to expose access to a PRG, 
this wraps around whatever the OS provides.
  
  - OpenBSD uses arc4random()
  - Windows uses the Windows Crypto API
  - FreeBSD, Linux, etc use /dev/random or /dev/urandom if available
  [DOC]
  
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.24r2=1.98.2.5.2.41.2.25diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.24 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.25
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.24Mon Nov 17 11:27:57 2008
+++ php-src/ext/openssl/openssl.c   Mon Nov 17 21:54:25 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.24 2008/11/17 11:27:57 felipe Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.25 2008/11/17 21:54:25 scottmac Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -94,6 +94,7 @@
 PHP_FUNCTION(openssl_decrypt);
 
 PHP_FUNCTION(openssl_dh_compute_key);
+PHP_FUNCTION(openssl_random_pseudo_bytes);
 
 /* {{{ arginfo */
 ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_x509_export_to_file, 0, 0, 2)
@@ -352,6 +353,11 @@
 ZEND_ARG_INFO(0, pub_key)
 ZEND_ARG_INFO(0, dh_key)
 ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_random_pseudo_bytes, 0, 0, 1)
+ZEND_ARG_INFO(0, length)
+ZEND_ARG_INFO(1, result_is_strong)
+ZEND_END_ARG_INFO()
 /* }}} */
 
 /* {{{ openssl_functions[]
@@ -416,6 +422,7 @@
 
PHP_FE(openssl_dh_compute_key,  arginfo_openssl_dh_compute_key)
 
+   PHP_FE(openssl_random_pseudo_bytes,
arginfo_openssl_random_pseudo_bytes)
PHP_FE(openssl_error_string, arginfo_openssl_error_string)
{NULL, NULL, NULL}
 };
@@ -4704,6 +4711,52 @@
 }
 /* }}} */
 
+/* {{{ proto string openssl_random_pseudo_bytes(integer length [, bool 
returned_strong_result])
+   Returns a string of the length specified filled with random pseudo bytes */
+PHP_FUNCTION(openssl_random_pseudo_bytes)
+{
+   long buffer_length;
+   unsigned char *buffer = NULL;
+   zval *zstrong_result_returned = NULL;
+   int strong_result = 0;
+
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, l|z, 
buffer_length, zstrong_result_returned) == FAILURE) {
+   return;
+   }
+
+   if (buffer_length = 0) {
+   RETURN_FALSE;
+   }
+
+   if (zstrong_result_returned) {
+   zval_dtor(zstrong_result_returned);
+   ZVAL_BOOL(zstrong_result_returned, 0);
+   }
+
+   buffer = emalloc(buffer_length);
+
+   if (!buffer) {
+   RETURN_FALSE;
+   }
+
+#ifdef WINDOWS
+RAND_screen();
+#endif
+
+   if ((strong_result = RAND_pseudo_bytes(buffer, buffer_length))  0) {
+   RETVAL_FALSE;
+   } else {
+   RETVAL_STRINGL((char *)buffer, buffer_length, 1);
+
+   if (zstrong_result_returned) {
+   ZVAL_BOOL(zstrong_result_returned, strong_result);
+   }
+
+   }
+   efree(buffer);
+}
+/* }}} */
+
 /*
  * Local variables:
  * tab-width: 8



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c /ext/openssl/tests bug41033.pem bug41033.phpt bug41033pub.pem

2008-11-17 Thread Pierre-Alain Joye
pajoye  Tue Nov 18 01:56:12 2008 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/openssl/tests  bug41033.pem bug41033.phpt 
bug41033pub.pem 

  Modified files:  
/php-src/ext/opensslopenssl.c 
  Log:
  - #41033, enable signing with DSA keys
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.25r2=1.98.2.5.2.41.2.26diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.25 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.26
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.25Mon Nov 17 21:54:25 2008
+++ php-src/ext/openssl/openssl.c   Tue Nov 18 01:56:12 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.25 2008/11/17 21:54:25 scottmac Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.26 2008/11/18 01:56:12 pajoye Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -58,6 +58,7 @@
 #define OPENSSL_ALGO_MD5   2
 #define OPENSSL_ALGO_MD4   3
 #define OPENSSL_ALGO_MD2   4
+#define OPENSSL_ALGO_DSS1  5
 
 #define DEBUG_SMIME0
 
@@ -904,6 +905,9 @@
case OPENSSL_ALGO_MD2:
mdtype = (EVP_MD *) EVP_md2();
break;
+   case OPENSSL_ALGO_DSS1:
+   mdtype = (EVP_MD *) EVP_dss1();
+   break;
default:
return NULL;
break;
@@ -983,6 +987,7 @@
REGISTER_LONG_CONSTANT(OPENSSL_ALGO_MD5, OPENSSL_ALGO_MD5, 
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(OPENSSL_ALGO_MD4, OPENSSL_ALGO_MD4, 
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(OPENSSL_ALGO_MD2, OPENSSL_ALGO_MD2, 
CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(OPENSSL_ALGO_DSS1, OPENSSL_ALGO_DSS1, 
CONST_CS|CONST_PERSISTENT);
 
/* flags for S/MIME */
REGISTER_LONG_CONSTANT(PKCS7_DETACHED, PKCS7_DETACHED, 
CONST_CS|CONST_PERSISTENT);
@@ -1470,7 +1475,6 @@
return 0;
}
X509_STORE_CTX_init(csc, ctx, x, untrustedchain);
-
if(purpose = 0) {
X509_STORE_CTX_set_purpose(csc, purpose);
}

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/bug41033.pem?view=markuprev=1.1
Index: php-src/ext/openssl/tests/bug41033.pem
+++ php-src/ext/openssl/tests/bug41033.pem

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/bug41033.phpt?view=markuprev=1.1
Index: php-src/ext/openssl/tests/bug41033.phpt
+++ php-src/ext/openssl/tests/bug41033.phpt

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/bug41033pub.pem?view=markuprev=1.1
Index: php-src/ext/openssl/tests/bug41033pub.pem
+++ php-src/ext/openssl/tests/bug41033pub.pem



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-10-14 Thread Ilia Alshanetsky
iliaa   Tue Oct 14 23:38:41 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  Fixed bug #46271 (local_cert option is not resolved to full path)
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.18r2=1.98.2.5.2.41.2.19diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.18 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.19
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.18Tue Sep 30 14:41:49 2008
+++ php-src/ext/openssl/openssl.c   Tue Oct 14 23:38:41 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.18 2008/09/30 14:41:49 rrichards Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.19 2008/10/14 23:38:41 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -4439,30 +4439,33 @@
X509 *cert = NULL;
EVP_PKEY *key = NULL;
SSL *tmpssl;
+   char resolved_path_buff[MAXPATHLEN];
 
-   /* a certificate to use for authentication */
-   if (SSL_CTX_use_certificate_chain_file(ctx, certfile) != 1) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to 
set local cert chain file `%s'; Check that your cafile/capath settings include 
details of your certificate and its issuer, certfile);
-   return NULL;
-   }
+   if (VCWD_REALPATH(certfile, resolved_path_buff)) {
+   /* a certificate to use for authentication */
+   if (SSL_CTX_use_certificate_chain_file(ctx, 
resolved_path_buff) != 1) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
Unable to set local cert chain file `%s'; Check that your cafile/capath 
settings include details of your certificate and its issuer, certfile);
+   return NULL;
+   }
 
-   if (SSL_CTX_use_PrivateKey_file(ctx, certfile, 
SSL_FILETYPE_PEM) != 1) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to 
set private key file `%s', certfile);
-   return NULL;
-   }
+   if (SSL_CTX_use_PrivateKey_file(ctx, 
resolved_path_buff, SSL_FILETYPE_PEM) != 1) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
Unable to set private key file `%s', resolved_path_buff);
+   return NULL;
+   }
 
-   tmpssl = SSL_new(ctx);
-   cert = SSL_get_certificate(tmpssl);
+   tmpssl = SSL_new(ctx);
+   cert = SSL_get_certificate(tmpssl);
 
-   if (cert) {
-   key = X509_get_pubkey(cert);
-   EVP_PKEY_copy_parameters(key, 
SSL_get_privatekey(tmpssl));
-   EVP_PKEY_free(key);
-   }
-   SSL_free(tmpssl);
+   if (cert) {
+   key = X509_get_pubkey(cert);
+   EVP_PKEY_copy_parameters(key, 
SSL_get_privatekey(tmpssl));
+   EVP_PKEY_free(key);
+   }
+   SSL_free(tmpssl);
 
-   if (!SSL_CTX_check_private_key(ctx)) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Private 
key does not match certificate!);
+   if (!SSL_CTX_check_private_key(ctx)) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
Private key does not match certificate!);
+   }
}
}
if (ok) {



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-09-30 Thread Rob Richards
rrichards   Tue Sep 30 14:41:49 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH: initialize keyresource
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.17r2=1.98.2.5.2.41.2.18diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.17 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.18
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.17Thu Sep 18 16:09:19 2008
+++ php-src/ext/openssl/openssl.c   Tue Sep 30 14:41:49 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.17 2008/09/18 16:09:19 scottmac Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.18 2008/09/30 14:41:49 rrichards Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -2295,7 +2295,7 @@
X509 * cert = NULL, *new_cert = NULL;
X509_REQ * csr;
EVP_PKEY * key = NULL, *priv_key = NULL;
-   long csr_resource, certresource = 0, keyresource;
+   long csr_resource, certresource = 0, keyresource = -1;
int i;
struct php_x509_request req;




-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-07-30 Thread Antony Dovgal
tony2001Wed Jul 30 11:59:05 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  fix folding
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.15r2=1.98.2.5.2.41.2.16diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.15 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.16
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.15Tue Jul 15 03:20:44 2008
+++ php-src/ext/openssl/openssl.c   Wed Jul 30 11:59:05 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.15 2008/07/15 03:20:44 hnangelo Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.16 2008/07/30 11:59:05 tony2001 Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -395,6 +395,7 @@
 ZEND_ARG_INFO(0, dh_key)
 ZEND_END_ARG_INFO()
 /* }}} */
+
 /* {{{ openssl_functions[]
  */
 const zend_function_entry openssl_functions[] = {
@@ -530,7 +531,7 @@
 }
 /* }}} */
 
-/* {{{ openssl - PHP bridging */
+/* openssl - PHP bridging */
 /* true global; readonly after module startup */
 static char default_ssl_conf_filename[MAXPATHLEN];
 
@@ -561,7 +562,6 @@
 static X509_REQ * php_openssl_csr_from_zval(zval ** val, int makeresource, 
long * resourceval TSRMLS_DC);
 static EVP_PKEY * php_openssl_generate_private_key(struct php_x509_request * 
req TSRMLS_DC);
 
-
 static void add_assoc_name_entry(zval * val, char * key, X509_NAME * name, int 
shortname TSRMLS_DC) /* {{{ */
 {
zval *subitem, *subentries;
@@ -712,12 +712,7 @@
 }
 /* }}} */
 
-static inline int php_openssl_config_check_syntax(
-   const char * section_label,
-   const char * config_filename,
-   const char * section,
-   LHASH * config TSRMLS_DC
-   ) /* {{{ */
+static inline int php_openssl_config_check_syntax(const char * section_label, 
const char * config_filename,const char * section, LHASH * config 
TSRMLS_DC) /* {{{ */
 {
X509V3_CTX ctx;

@@ -780,13 +775,7 @@
else \
varname = defval
 
-
-
-static int php_openssl_parse_config(
-   struct php_x509_request * req,
-   zval * optional_args
-   TSRMLS_DC
-   ) /* {{{ */
+static int php_openssl_parse_config(struct php_x509_request * req, zval * 
optional_args TSRMLS_DC) /* {{{ */
 {
char * str;
zval ** item;
@@ -1686,9 +1675,8 @@
 
 /* }}} */
 
-
 /* Pop all X509 from Stack and free them, free the stack afterwards */
-static void php_sk_X509_free(STACK_OF(X509) * sk)
+static void php_sk_X509_free(STACK_OF(X509) * sk) /* {{{ */
 {
for (;;) {
X509* x = sk_X509_pop(sk);
@@ -1697,8 +1685,9 @@
}
sk_X509_free(sk);
 }
+/* }}} */
 
-static STACK_OF(X509) * php_array_to_X509_sk(zval ** zcerts TSRMLS_DC)
+static STACK_OF(X509) * php_array_to_X509_sk(zval ** zcerts TSRMLS_DC) /* {{{ 
*/
 {
HashPosition hpos;
zval ** zcertval;
@@ -1750,6 +1739,7 @@
   clean_exit:
 return sk;
 }
+/* }}} */
 
 /* {{{ proto bool openssl_pkcs12_export_to_file(mixed x509, string filename, 
mixed priv_key, string pass[, array args])
Creates and exports a PKCS to file */
@@ -4715,7 +4705,6 @@
 }
 /* }}} */
 
-
 /* {{{ proto string openssl_dh_compute_key(string pub_key, resource dh_key)
Computes shared sicret for public value of remote DH key and local DH key */
 PHP_FUNCTION(openssl_dh_compute_key)



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c /ext/openssl/tests 006.phpt

2008-07-14 Thread Henrique do Nascimento Angelo
hnangeloTue Jul 15 02:43:30 2008 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/openssl/tests  006.phpt 

  Modified files:  
/php-src/ext/opensslopenssl.c 
  Log:
  Fix segfault caused by openssl_pkey_new() in ext/openssl/tests/006.phpt
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.12r2=1.98.2.5.2.41.2.13diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.12 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.13
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.12Sat Jun 28 09:17:39 2008
+++ php-src/ext/openssl/openssl.c   Tue Jul 15 02:43:30 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.12 2008/06/28 09:17:39 hnangelo Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.13 2008/07/15 02:43:30 hnangelo Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -2912,8 +2912,10 @@
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
rsa, dmp1);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
rsa, dmq1);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
rsa, iqmp);
-   if (EVP_PKEY_assign_RSA(pkey, rsa)) {
-   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   if (rsa-n  rsa-d) {
+   if (EVP_PKEY_assign_RSA(pkey, 
rsa)) {
+   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   }
}
RSA_free(rsa);
}
@@ -2931,11 +2933,13 @@
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dsa, g);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dsa, priv_key);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dsa, pub_key);
-   if (!dsa-priv_key  !dsa-pub_key) {
-   DSA_generate_key(dsa);
-   }
-   if (EVP_PKEY_assign_DSA(pkey, dsa)) {
-   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   if (dsa-p  dsa-q  dsa-g) {
+   if (!dsa-priv_key  
!dsa-pub_key) {
+   DSA_generate_key(dsa);
+   }
+   if (EVP_PKEY_assign_DSA(pkey, 
dsa)) {
+   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   }
}
DSA_free(dsa);
}
@@ -2952,11 +2956,13 @@
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dh, g);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dh, priv_key);
OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), 
dh, pub_key);
-   if (!dh-pub_key) {
-   DH_generate_key(dh);
-   }
-   if (EVP_PKEY_assign_DH(pkey, dh)) {
-   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   if (dh-p  dh-g) {
+   if (!dh-pub_key) {
+   DH_generate_key(dh);
+   }
+   if (EVP_PKEY_assign_DH(pkey, 
dh)) {
+   
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
+   }
}
DH_free(dh);
}

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/006.phpt?view=markuprev=1.1
Index: php-src/ext/openssl/tests/006.phpt
+++ php-src/ext/openssl/tests/006.phpt



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c /ext/openssl/tests 012.phpt public.key

2008-07-14 Thread Henrique do Nascimento Angelo
hnangeloTue Jul 15 03:20:45 2008 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/openssl/tests  012.phpt public.key 

  Modified files:  
/php-src/ext/opensslopenssl.c 
  Log:
  Fix error message
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.14r2=1.98.2.5.2.41.2.15diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.14 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.15
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.14Tue Jul 15 02:59:56 2008
+++ php-src/ext/openssl/openssl.c   Tue Jul 15 03:20:44 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.14 2008/07/15 02:59:56 hnangelo Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.15 2008/07/15 03:20:44 hnangelo Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -4126,7 +4126,7 @@
pos) == SUCCESS) {
pkeys[i] = php_openssl_evp_from_zval(pubkey, 1, NULL, 0, 
key_resources[i] TSRMLS_CC);
if (pkeys[i] == NULL) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, not a 
public key (%dth member of pubkeys), i);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, not a 
public key (%dth member of pubkeys), i+1);
RETVAL_FALSE;
goto clean_exit;
}

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/012.phpt?view=markuprev=1.1
Index: php-src/ext/openssl/tests/012.phpt
+++ php-src/ext/openssl/tests/012.phpt

http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/tests/public.key?view=markuprev=1.1
Index: php-src/ext/openssl/tests/public.key
+++ php-src/ext/openssl/tests/public.key



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-06-28 Thread Henrique do Nascimento Angelo
hnangeloSat Jun 28 09:17:40 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  Fix a memory leak on openssl_decrypt()
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.11r2=1.98.2.5.2.41.2.12diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.11 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.12
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.11Sun Jun  1 18:24:38 2008
+++ php-src/ext/openssl/openssl.c   Sat Jun 28 09:17:39 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.11 2008/06/01 18:24:38 bjori Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.12 2008/06/28 09:17:39 hnangelo Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -4653,10 +4653,9 @@
return;
}
 
-   if (!raw_input) {
-   base64_str = (char*)php_base64_decode((unsigned char*)data, 
data_len, base64_str_len);
-   data_len = base64_str_len;
-   data = base64_str;
+   if (!method_len) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unknown cipher 
algorithm);
+   RETURN_FALSE;
}
 
cipher_type = EVP_get_cipherbyname(method);
@@ -4665,6 +4664,12 @@
RETURN_FALSE;
}
 
+   if (!raw_input) {
+   base64_str = (char*)php_base64_decode((unsigned char*)data, 
data_len, base64_str_len);
+   data_len = base64_str_len;
+   data = base64_str;
+   }
+
keylen = EVP_CIPHER_key_length(cipher_type);
if (keylen  password_len) {
key = emalloc(keylen);



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-06-01 Thread Hannes Magnusson
bjori   Sun Jun  1 18:24:38 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  fix arginfo and proto
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.10r2=1.98.2.5.2.41.2.11diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.10 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.11
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.10Sun Jun  1 17:54:02 2008
+++ php-src/ext/openssl/openssl.c   Sun Jun  1 18:24:38 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.10 2008/06/01 17:54:02 bjori Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.11 2008/06/01 18:24:38 bjori Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -291,7 +291,7 @@
 static
 ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_private_encrypt, 0, 0, 3)
 ZEND_ARG_INFO(0, data)
-ZEND_ARG_INFO(0, crypted)
+ZEND_ARG_INFO(1, crypted)
 ZEND_ARG_INFO(0, key)
 ZEND_ARG_INFO(0, padding)
 ZEND_END_ARG_INFO()
@@ -299,7 +299,7 @@
 static
 ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_private_decrypt, 0, 0, 3)
 ZEND_ARG_INFO(0, data)
-ZEND_ARG_INFO(0, crypted)
+ZEND_ARG_INFO(1, crypted)
 ZEND_ARG_INFO(0, key)
 ZEND_ARG_INFO(0, padding)
 ZEND_END_ARG_INFO()
@@ -307,7 +307,7 @@
 static
 ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_public_encrypt, 0, 0, 3)
 ZEND_ARG_INFO(0, data)
-ZEND_ARG_INFO(0, crypted)
+ZEND_ARG_INFO(1, crypted)
 ZEND_ARG_INFO(0, key)
 ZEND_ARG_INFO(0, padding)
 ZEND_END_ARG_INFO()
@@ -315,7 +315,7 @@
 static
 ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_public_decrypt, 0, 0, 3)
 ZEND_ARG_INFO(0, data)
-ZEND_ARG_INFO(0, crypted)
+ZEND_ARG_INFO(1, crypted)
 ZEND_ARG_INFO(0, key)
 ZEND_ARG_INFO(0, padding)
 ZEND_END_ARG_INFO()
@@ -1526,7 +1526,7 @@
 }
 /* }}} */
 
-/* {{{ proto mixed openssl_x509_checkpurpose(mixed x509cert, int purpose, 
array cainfo [, string untrustedfile])
+/* {{{ proto int openssl_x509_checkpurpose(mixed x509cert, int purpose, array 
cainfo [, string untrustedfile])
Checks the CERT to see if it can be used for the purpose in purpose. cainfo 
holds information about trusted CAs */
 PHP_FUNCTION(openssl_x509_checkpurpose)
 {



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-04-02 Thread Antony Dovgal
tony2001Wed Apr  2 14:35:29 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH: initialize variable
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.7r2=1.98.2.5.2.41.2.8diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.7 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.8
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.7 Mon Mar 10 22:12:35 2008
+++ php-src/ext/openssl/openssl.c   Wed Apr  2 14:35:29 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.7 2008/03/10 22:12:35 felipe Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.8 2008/04/02 14:35:29 tony2001 Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -2014,7 +2014,7 @@
X509 * cert = NULL, *new_cert = NULL;
X509_REQ * csr;
EVP_PKEY * key = NULL, *priv_key = NULL;
-   long csr_resource, certresource, keyresource;
+   long csr_resource, certresource = 0, keyresource;
int i;
struct php_x509_request req;




-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c

2008-01-09 Thread Rob Richards
rrichards   Wed Jan  9 16:47:26 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/opensslopenssl.c 
  Log:
  MFH: fix crash when using default algorithm
  
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.4r2=1.98.2.5.2.41.2.5diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.4 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.5
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.4 Mon Dec 31 07:17:11 2007
+++ php-src/ext/openssl/openssl.c   Wed Jan  9 16:47:25 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.4 2007/12/31 07:17:11 sebastian Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.5 2008/01/09 16:47:25 rrichards Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -3687,7 +3687,7 @@
}
 
if (method == NULL || Z_TYPE_P(method) == IS_LONG) {
-   if (Z_TYPE_P(method) == IS_LONG) {
+   if (method != NULL) {
signature_algo = Z_LVAL_P(method);
}
mdtype = php_openssl_get_evp_md_from_algo(signature_algo);
@@ -3742,7 +3742,7 @@
}
 
if (method == NULL || Z_TYPE_P(method) == IS_LONG) {
-   if (Z_TYPE_P(method) == IS_LONG) {
+   if (method != NULL) {
signature_algo = Z_LVAL_P(method);
}
mdtype = php_openssl_get_evp_md_from_algo(signature_algo);

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/openssl openssl.c /ext/standard filestat.c php_filestat.h /ext/standard/tests/file 005_basic.phpt 005_error.phpt bug43137.phpt /main/streams plain_wrapper.c

2007-10-31 Thread Jani Taskinen
janiWed Oct 31 13:22:45 2007 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/standard/tests/filebug43137.phpt 

  Modified files:  
/php-src/ext/opensslopenssl.c 
/php-src/ext/standard   filestat.c php_filestat.h 
/php-src/ext/standard/tests/file005_basic.phpt 005_error.phpt 
/php-src/main/streams   plain_wrapper.c 
  Log:
  MFH: - Fixed bug #43137 (rmdir() and rename() do not clear statcache)
  
  http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/openssl.c?r1=1.98.2.5.2.41.2.2r2=1.98.2.5.2.41.2.3diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.2 
php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.3
--- php-src/ext/openssl/openssl.c:1.98.2.5.2.41.2.2 Thu Sep 27 18:00:42 2007
+++ php-src/ext/openssl/openssl.c   Wed Oct 31 13:22:44 2007
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.98.2.5.2.41.2.2 2007/09/27 18:00:42 dmitry Exp $ */
+/* $Id: openssl.c,v 1.98.2.5.2.41.2.3 2007/10/31 13:22:44 jani Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -48,6 +48,9 @@
 #include openssl/ssl.h
 #include openssl/pkcs12.h
 
+/* Common */
+#include time.h
+
 #define DEFAULT_KEY_LENGTH 512
 #define MIN_KEY_LENGTH 384
 
@@ -1233,7 +1236,7 @@
 }
 /* }}} */
 
-/* {{{ proto int openssl_x509_checkpurpose(mixed x509cert, int purpose, array 
cainfo [, string untrustedfile])
+/* {{{ proto mixed openssl_x509_checkpurpose(mixed x509cert, int purpose, 
array cainfo [, string untrustedfile])
Checks the CERT to see if it can be used for the purpose in purpose. cainfo 
holds information about trusted CAs */
 PHP_FUNCTION(openssl_x509_checkpurpose)
 {
@@ -1244,10 +1247,9 @@
STACK_OF(X509) * untrustedchain = NULL;
long purpose;
char * untrusted = NULL;
-   int untrusted_len;
+   int untrusted_len, ret;
 
-   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, Zl|a!s, zcert, 
purpose, zcainfo, untrusted, untrusted_len)
-   == FAILURE) {
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, Zl|a!s, zcert, 
purpose, zcainfo, untrusted, untrusted_len) == FAILURE) {
return;
}
 
@@ -1268,7 +1270,13 @@
if (cert == NULL) {
goto clean_exit;
}
-   RETVAL_LONG(check_cert(cainfo, cert, untrustedchain, purpose));
+
+   ret = check_cert(cainfo, cert, untrustedchain, purpose);
+   if (ret != 0  ret != 1) {
+   RETVAL_LONG(ret);
+   } else {
+   RETVAL_BOOL(ret);
+   }
 
 clean_exit:
if (certresource == 1  cert) {
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/filestat.c?r1=1.136.2.8.2.14r2=1.136.2.8.2.14.2.1diff_format=u
Index: php-src/ext/standard/filestat.c
diff -u php-src/ext/standard/filestat.c:1.136.2.8.2.14 
php-src/ext/standard/filestat.c:1.136.2.8.2.14.2.1
--- php-src/ext/standard/filestat.c:1.136.2.8.2.14  Fri Sep 21 14:05:18 2007
+++ php-src/ext/standard/filestat.c Wed Oct 31 13:22:44 2007
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: filestat.c,v 1.136.2.8.2.14 2007/09/21 14:05:18 tony2001 Exp $ */
+/* $Id: filestat.c,v 1.136.2.8.2.14.2.1 2007/10/31 13:22:44 jani Exp $ */
 
 #include php.h
 #include safe_mode.h
@@ -698,14 +698,10 @@
 /* }}} */
 #endif
 
-/* {{{ proto void clearstatcache(void)
-   Clear file stat cache */
-PHP_FUNCTION(clearstatcache)
+/* {{{ php_clear_stat_cache()
+*/
+PHPAPI void php_clear_stat_cache(TSRMLS_D)
 {
-   if (ZEND_NUM_ARGS()) {
-   WRONG_PARAM_COUNT;
-   }
-
if (BG(CurrentStatFile)) {
efree(BG(CurrentStatFile));
BG(CurrentStatFile) = NULL;
@@ -718,6 +714,17 @@
 }
 /* }}} */
 
+/* {{{ proto void clearstatcache(void)
+   Clear file stat cache */
+PHP_FUNCTION(clearstatcache)
+{
+   if (ZEND_NUM_ARGS()) {
+   WRONG_PARAM_COUNT;
+   }
+   php_clear_stat_cache(TSRMLS_C);
+}
+/* }}} */
+
 #define IS_LINK_OPERATION(__t) ((__t) == FS_TYPE || (__t) == FS_IS_LINK || 
(__t) == FS_LSTAT)
 #define IS_EXISTS_CHECK(__t) ((__t) == FS_EXISTS  || (__t) == FS_IS_W || (__t) 
== FS_IS_R || (__t) == FS_IS_X || (__t) == FS_IS_FILE || (__t) == FS_IS_DIR || 
(__t) == FS_IS_LINK)
 #define IS_ABLE_CHECK(__t) ((__t) == FS_IS_R || (__t) == FS_IS_W || (__t) == 
FS_IS_X)
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/php_filestat.h?r1=1.24.2.4.2.1.2.1r2=1.24.2.4.2.1.2.2diff_format=u
Index: php-src/ext/standard/php_filestat.h
diff -u php-src/ext/standard/php_filestat.h:1.24.2.4.2.1.2.1 
php-src/ext/standard/php_filestat.h:1.24.2.4.2.1.2.2
--- php-src/ext/standard/php_filestat.h:1.24.2.4.2.1.2.1Sun Oct  7 
05:22:07 2007
+++ php-src/ext/standard/php_filestat.h Wed Oct 31 13:22:44 2007
@@ -16,7 +16,7 @@