[PHP-CVS-DAILY] cvs: php-src / ChangeLog

2008-06-28 Thread changelog
changelog   Sun Jun 29 01:31:45 2008 UTC

  Modified files:  
/php-srcChangeLog 
  Log:
  ChangeLog update
  
http://cvs.php.net/viewvc.cgi/php-src/ChangeLog?r1=1.3091r2=1.3092diff_format=u
Index: php-src/ChangeLog
diff -u php-src/ChangeLog:1.3091 php-src/ChangeLog:1.3092
--- php-src/ChangeLog:1.3091Sat Jun 28 01:31:44 2008
+++ php-src/ChangeLog   Sun Jun 29 01:31:44 2008
@@ -1,3 +1,80 @@
+2008-06-28  Felipe Pena  [EMAIL PROTECTED]
+
+* ext/xmlrpc/xmlrpc-epi-php.c:
+  - MFB: Added arginfo
+
+* (PHP_5_3)
+  ext/xmlrpc/xmlrpc-epi-php.c:
+  - Added arginfo
+
+* (PHP_5_3)
+  ext/xmlrpc/xmlrpc-epi-php.c:
+  - New parameter parsing API
+
+2008-06-28  Alexey Zakhlestin  [EMAIL PROTECTED]
+
+* (PHP_5_3)
+  ext/mbstring/mbstring.c
+  ext/mbstring/php_mbregex.c
+  ext/mbstring/tests/mb_ereg2.phpt
+  ext/mbstring/tests/mb_regex_encoding_error1.phpt
+  ext/mbstring/tests/mb_regex_encoding_variation1.phpt
+  ext/mbstring/tests/mb_substr_error1.phpt
+  ext/mbstring/tests/mb_substr_variation1.phpt
+  ext/mbstring/tests/mb_substr_variation2.phpt
+  sapi/apache/php_apache.c:
+  updated to the new parameter-parsing api
+
+* (PHP_5_3)
+  ext/mbstring/mbstring.c
+  ext/mbstring/php_mbregex.h:
+  added arginfo (fixes #45388)
+
+2008-06-28  Scott MacVicar  [EMAIL PROTECTED]
+
+* (PHP_5_3)
+  ext/hash/config.w32
+  ext/mhash/config.w32:
+  MFH: Sort Windows changes for mhash BC layer
+
+* ext/hash/config.w32
+  ext/mhash/config.w32:
+  Sort Windows changes for mhash BC layer
+
+* ext/hash/CREDITS
+  ext/hash/config.m4
+  ext/hash/hash.c
+  ext/hash/tests/mhash_001.phpt
+  ext/hash/tests/mhash_002.phpt
+  ext/hash/tests/mhash_003.phpt
+  ext/hash/tests/skip_mhash.inc
+  ext/mhash/config.m4
+  ext/mhash/mhash.c
+  ext/mhash/mhash.dsp
+  ext/mhash/php_mhash.h
+  ext/mhash/tests/001.phpt
+  ext/mhash/tests/002.phpt
+  ext/mhash/tests/003.phpt
+  ext/mhash/tests/skip.inc:
+  MFB: Make the old mhash API a wrapper around hash, this removes a
+  dependency.
+
+2008-06-28  Alexey Zakhlestin  [EMAIL PROTECTED]
+
+* sapi/apache/mod_php.c
+  sapi/apache/php_apache.c:
+  updated to the new parameter-parsing api (port from 5.3)
+
+* (PHP_5_3)
+  sapi/apache/mod_php5.c:
+  fixed types (no more compiler warnings)
+
+2008-06-28  Henrique do Nascimento Angelo  [EMAIL PROTECTED]
+
+* ext/openssl/openssl.c
+  ext/openssl/openssl.c:
+  Fix a memory leak on openssl_decrypt()
+
 2008-06-27  Stanislav Malyshev  [EMAIL PROTECTED]
 
 * ZendEngine2/zend_API.h




[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 /ext/openssl openssl.c

2008-06-28 Thread Henrique do Nascimento Angelo
hnangeloSat Jun 28 09:24:18 2008 UTC

  Modified files:  
/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.160r2=1.161diff_format=u
Index: php-src/ext/openssl/openssl.c
diff -u php-src/ext/openssl/openssl.c:1.160 php-src/ext/openssl/openssl.c:1.161
--- php-src/ext/openssl/openssl.c:1.160 Sun Jun  1 18:25:29 2008
+++ php-src/ext/openssl/openssl.c   Sat Jun 28 09:24:18 2008
@@ -20,7 +20,7 @@
+--+
  */
 
-/* $Id: openssl.c,v 1.160 2008/06/01 18:25:29 bjori Exp $ */
+/* $Id: openssl.c,v 1.161 2008/06/28 09:24:18 hnangelo Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -4691,10 +4691,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);
@@ -4703,6 +4702,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) /sapi/apache php_apache.c

2008-06-28 Thread Alexey Zakhlestin
indeyetsSat Jun 28 09:52:03 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/sapi/apachephp_apache.c 
  Log:
  updated to the new parameter-parsing api
  http://cvs.php.net/viewvc.cgi/php-src/sapi/apache/php_apache.c?r1=1.89.2.4.2.6.2.2r2=1.89.2.4.2.6.2.3diff_format=u
Index: php-src/sapi/apache/php_apache.c
diff -u php-src/sapi/apache/php_apache.c:1.89.2.4.2.6.2.2 
php-src/sapi/apache/php_apache.c:1.89.2.4.2.6.2.3
--- php-src/sapi/apache/php_apache.c:1.89.2.4.2.6.2.2   Mon Dec 31 07:17:18 2007
+++ php-src/sapi/apache/php_apache.cSat Jun 28 09:52:03 2008
@@ -17,7 +17,7 @@
|  David Sklar [EMAIL PROTECTED] |
+--+
  */
-/* $Id: php_apache.c,v 1.89.2.4.2.6.2.2 2007/12/31 07:17:18 sebastian Exp $ */
+/* $Id: php_apache.c,v 1.89.2.4.2.6.2.3 2008/06/28 09:52:03 indeyets Exp $ */
 
 #include php_apache_http.h
 
@@ -141,28 +141,26 @@
Get and set Apache request notes */
 PHP_FUNCTION(apache_note)
 {
-   zval **arg_name, **arg_val;
-   char *note_val;
+   char *note_name, *note_val;
+   long note_name_len, note_val_len;
+   char *old_val;
int arg_count = ZEND_NUM_ARGS();
 
-   if (arg_count1 || arg_count2 ||
-   zend_get_parameters_ex(arg_count, arg_name, arg_val) 
==FAILURE ) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(arg_count TSRMLS_CC, s|s, note_name, 
note_name_len, note_val, note_val_len) == FAILURE) {
+   return;
}
-   
-   convert_to_string_ex(arg_name);
-   note_val = (char *) table_get(((request_rec 
*)SG(server_context))-notes, (*arg_name)-value.str.val);
-   
+
+   old_val = (char *) table_get(((request_rec 
*)SG(server_context))-notes, note_name);
+
if (arg_count == 2) {
-   convert_to_string_ex(arg_val);
-   table_set(((request_rec *)SG(server_context))-notes, 
(*arg_name)-value.str.val, (*arg_val)-value.str.val);
+   table_set(((request_rec *)SG(server_context))-notes, 
note_name, note_val);
}
 
-   if (note_val) {
-   RETURN_STRING(note_val, 1);
-   } else {
-   RETURN_FALSE;
+   if (old_val) {
+   RETURN_STRING(old_val, 1);
}
+
+   RETURN_FALSE;
 }
 /* }}} */
 
@@ -310,23 +308,25 @@
  */
 PHP_FUNCTION(virtual)
 {
-   zval **filename;
+   char *filename;
+   long filename_len;
request_rec *rr = NULL;
 
-   if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, filename) == 
FAILURE) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, s, filename, 
filename_len) == FAILURE) {
+   return;
}
-   convert_to_string_ex(filename);

-   if (!(rr = sub_req_lookup_uri ((*filename)-value.str.val, 
((request_rec *) SG(server_context) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - URI lookup failed, (*filename)-value.str.val);
-   if (rr) destroy_sub_req (rr);
+   if (!(rr = sub_req_lookup_uri (filename, ((request_rec *) 
SG(server_context) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - URI lookup failed, filename);
+   if (rr)
+   destroy_sub_req (rr);
RETURN_FALSE;
}
 
if (rr-status != 200) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - error finding URI, (*filename)-value.str.val);
-   if (rr) destroy_sub_req (rr);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - error finding URI, filename);
+   if (rr)
+   destroy_sub_req (rr);
RETURN_FALSE;
}
 
@@ -334,13 +334,16 @@
php_header(TSRMLS_C);
 
if (run_sub_req(rr)) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - request execution failed, (*filename)-value.str.val);
-   if (rr) destroy_sub_req (rr);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - request execution failed, filename);
+   if (rr)
+   destroy_sub_req (rr);
RETURN_FALSE;
-   } else {
-   if (rr) destroy_sub_req (rr);
-   RETURN_TRUE;
}
+
+   if (rr)
+   destroy_sub_req (rr);
+
+   RETURN_TRUE;
 }
 /* }}} */
 
@@ -351,14 +354,14 @@
Fetch all HTTP request headers */
 PHP_FUNCTION(apache_request_headers)
 {
-array_header *env_arr;
-table_entry *tenv;
-int i;
-   
-array_init(return_value);
-env_arr = table_elts(((request_rec *) SG(server_context))-headers_in);
-tenv = (table_entry *)env_arr-elts;
-for (i = 0; i  env_arr-nelts; ++i) {
+   array_header *env_arr;
+  

[PHP-CVS] cvs: php-src(PHP_5_3) /sapi/apache mod_php5.c

2008-06-28 Thread Alexey Zakhlestin
indeyetsSat Jun 28 10:01:18 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/sapi/apachemod_php5.c 
  Log:
  fixed types (no more compiler warnings)
  
http://cvs.php.net/viewvc.cgi/php-src/sapi/apache/mod_php5.c?r1=1.19.2.7.2.13.2.6r2=1.19.2.7.2.13.2.7diff_format=u
Index: php-src/sapi/apache/mod_php5.c
diff -u php-src/sapi/apache/mod_php5.c:1.19.2.7.2.13.2.6 
php-src/sapi/apache/mod_php5.c:1.19.2.7.2.13.2.7
--- php-src/sapi/apache/mod_php5.c:1.19.2.7.2.13.2.6Sun Jun  1 16:08:52 2008
+++ php-src/sapi/apache/mod_php5.c  Sat Jun 28 10:01:17 2008
@@ -17,7 +17,7 @@
| PHP 4.0 patches by Zeev Suraski [EMAIL PROTECTED]  |
+--+
  */
-/* $Id: mod_php5.c,v 1.19.2.7.2.13.2.6 2008/06/01 16:08:52 scottmac Exp $ */
+/* $Id: mod_php5.c,v 1.19.2.7.2.13.2.7 2008/06/28 10:01:17 indeyets Exp $ */
 
 #include php_apache_http.h
 #include http_conf_globals.h
@@ -243,7 +243,7 @@
table_entry *elts = (table_entry *) arr-elts;
zval **path_translated;
HashTable *symbol_table;
-   int new_val_len;
+   unsigned int new_val_len;
 
for (i = 0; i  arr-nelts; i++) {
char *val;
@@ -683,7 +683,7 @@
TSRMLS_FETCH();
  
ap_table_setn(r-notes, mod_php_memory_usage,
-   ap_psprintf(r-pool, %u, zend_memory_peak_usage(1 
TSRMLS_CC)));
+   ap_psprintf(r-pool, %lu, zend_memory_peak_usage(1 
TSRMLS_CC)));
 
return result;
 }



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



[PHP-CVS] cvs: php-src /sapi/apache mod_php.c php_apache.c

2008-06-28 Thread Alexey Zakhlestin
indeyetsSat Jun 28 10:16:25 2008 UTC

  Modified files:  
/php-src/sapi/apachemod_php.c php_apache.c 
  Log:
  updated to the new parameter-parsing api (port from 5.3)
  http://cvs.php.net/viewvc.cgi/php-src/sapi/apache/mod_php.c?r1=1.8r2=1.9diff_format=u
Index: php-src/sapi/apache/mod_php.c
diff -u php-src/sapi/apache/mod_php.c:1.8 php-src/sapi/apache/mod_php.c:1.9
--- php-src/sapi/apache/mod_php.c:1.8   Sun Jun  1 16:10:46 2008
+++ php-src/sapi/apache/mod_php.c   Sat Jun 28 10:16:24 2008
@@ -17,7 +17,7 @@
| PHP 4.0 patches by Zeev Suraski [EMAIL PROTECTED]  |
+--+
  */
-/* $Id: mod_php.c,v 1.8 2008/06/01 16:10:46 scottmac Exp $ */
+/* $Id: mod_php.c,v 1.9 2008/06/28 10:16:24 indeyets Exp $ */
 
 #include php_apache_http.h
 #include http_conf_globals.h
@@ -243,7 +243,7 @@
table_entry *elts = (table_entry *) arr-elts;
zval **path_translated;
HashTable *symbol_table;
-   int new_val_len;
+   unsigned int new_val_len;
 
for (i = 0; i  arr-nelts; i++) {
char *val;
@@ -676,7 +676,7 @@
TSRMLS_FETCH();
  
ap_table_setn(r-notes, mod_php_memory_usage,
-   ap_psprintf(r-pool, %u, zend_memory_peak_usage(1 
TSRMLS_CC)));
+   ap_psprintf(r-pool, %lu, zend_memory_peak_usage(1 
TSRMLS_CC)));
 
return result;
 }
http://cvs.php.net/viewvc.cgi/php-src/sapi/apache/php_apache.c?r1=1.103r2=1.104diff_format=u
Index: php-src/sapi/apache/php_apache.c
diff -u php-src/sapi/apache/php_apache.c:1.103 
php-src/sapi/apache/php_apache.c:1.104
--- php-src/sapi/apache/php_apache.c:1.103  Mon Dec 31 07:12:19 2007
+++ php-src/sapi/apache/php_apache.cSat Jun 28 10:16:25 2008
@@ -17,7 +17,7 @@
|  David Sklar [EMAIL PROTECTED] |
+--+
  */
-/* $Id: php_apache.c,v 1.103 2007/12/31 07:12:19 sebastian Exp $ */
+/* $Id: php_apache.c,v 1.104 2008/06/28 10:16:25 indeyets Exp $ */
 
 #include php_apache_http.h
 
@@ -141,28 +141,26 @@
Get and set Apache request notes */
 PHP_FUNCTION(apache_note)
 {
-   zval **arg_name, **arg_val;
-   char *note_val;
+   char *note_name, *note_val;
+   long note_name_len, note_val_len;
+   char *old_val;
int arg_count = ZEND_NUM_ARGS();
 
-   if (arg_count1 || arg_count2 ||
-   zend_get_parameters_ex(arg_count, arg_name, arg_val) 
==FAILURE ) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(arg_count TSRMLS_CC, s|s, note_name, 
note_name_len, note_val, note_val_len) == FAILURE) {
+   return;
}
-   
-   convert_to_string_ex(arg_name);
-   note_val = (char *) table_get(((request_rec 
*)SG(server_context))-notes, (*arg_name)-value.str.val);
-   
+
+   old_val = (char *) table_get(((request_rec 
*)SG(server_context))-notes, note_name);
+
if (arg_count == 2) {
-   convert_to_string_ex(arg_val);
-   table_set(((request_rec *)SG(server_context))-notes, 
(*arg_name)-value.str.val, (*arg_val)-value.str.val);
+   table_set(((request_rec *)SG(server_context))-notes, 
note_name, note_val);
}
 
-   if (note_val) {
-   RETURN_STRING(note_val, 1);
-   } else {
-   RETURN_FALSE;
+   if (old_val) {
+   RETURN_STRING(old_val, 1);
}
+
+   RETURN_FALSE;
 }
 /* }}} */
 
@@ -310,23 +308,25 @@
  */
 PHP_FUNCTION(virtual)
 {
-   zval **filename;
+   char *filename;
+   long filename_len;
request_rec *rr = NULL;
 
-   if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, filename) == 
FAILURE) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, s, filename, 
filename_len) == FAILURE) {
+   return;
}
-   convert_to_string_ex(filename);

-   if (!(rr = sub_req_lookup_uri ((*filename)-value.str.val, 
((request_rec *) SG(server_context) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - URI lookup failed, (*filename)-value.str.val);
-   if (rr) destroy_sub_req (rr);
+   if (!(rr = sub_req_lookup_uri (filename, ((request_rec *) 
SG(server_context) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - URI lookup failed, filename);
+   if (rr)
+   destroy_sub_req (rr);
RETURN_FALSE;
}
 
if (rr-status != 200) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - error finding URI, (*filename)-value.str.val);
-   if (rr) destroy_sub_req (rr);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to include 
'%s' - error finding URI, filename);
+  

[PHP-CVS] cvs: php-src /ext/hash CREDITS config.m4 hash.c /ext/hash/tests mhash_001.phpt mhash_002.phpt mhash_003.phpt skip_mhash.inc /ext/mhash config.m4 mhash.c mhash.dsp php_mhash.h /ext/mhash/t

2008-06-28 Thread Scott MacVicar
scottmacSat Jun 28 15:20:49 2008 UTC

  Removed files:   
/php-src/ext/mhash  mhash.dsp 
/php-src/ext/mhash/tests001.phpt 002.phpt 003.phpt skip.inc 

  Modified files:  
/php-src/ext/hash   CREDITS config.m4 hash.c 
/php-src/ext/hash/tests mhash_001.phpt mhash_002.phpt 
mhash_003.phpt skip_mhash.inc 
/php-src/ext/mhash  config.m4 mhash.c php_mhash.h 
  Log:
  MFB: Make the old mhash API a wrapper around hash, this removes a dependency.
  
  http://cvs.php.net/viewvc.cgi/php-src/ext/hash/CREDITS?r1=1.2r2=1.3diff_format=u
Index: php-src/ext/hash/CREDITS
diff -u php-src/ext/hash/CREDITS:1.2 php-src/ext/hash/CREDITS:1.3
--- php-src/ext/hash/CREDITS:1.2Fri Nov 25 18:24:32 2005
+++ php-src/ext/hash/CREDITSSat Jun 28 15:20:49 2008
@@ -1,2 +1,2 @@
 PHP hash
-Sara Golemon, Rasmus Lerdorf, Stefan Esser, Michael Wallner
+Sara Golemon, Rasmus Lerdorf, Stefan Esser, Michael Wallner, Scott MacVicar
http://cvs.php.net/viewvc.cgi/php-src/ext/hash/config.m4?r1=1.12r2=1.13diff_format=u
Index: php-src/ext/hash/config.m4
diff -u php-src/ext/hash/config.m4:1.12 php-src/ext/hash/config.m4:1.13
--- php-src/ext/hash/config.m4:1.12 Tue Jul  3 17:24:36 2007
+++ php-src/ext/hash/config.m4  Sat Jun 28 15:20:49 2008
@@ -1,9 +1,17 @@
-dnl $Id: config.m4,v 1.12 2007/07/03 17:24:36 sniper Exp $
+dnl $Id: config.m4,v 1.13 2008/06/28 15:20:49 scottmac Exp $
 dnl config.m4 for extension hash
 
 PHP_ARG_ENABLE(hash, whether to enable hash support,
 [  --disable-hash  Disable hash support], yes)
 
+if test $PHP_MHASH != no; then
+  if test $PHP_HASH == no; then
+PHP_HASH=yes
+  fi
+
+  AC_DEFINE(PHP_MHASH_BC, 1, [ ])
+fi
+
 if test $PHP_HASH != no; then
   AC_DEFINE(HAVE_HASH_EXT,1,[Have HASH Extension])
 
http://cvs.php.net/viewvc.cgi/php-src/ext/hash/hash.c?r1=1.43r2=1.44diff_format=u
Index: php-src/ext/hash/hash.c
diff -u php-src/ext/hash/hash.c:1.43 php-src/ext/hash/hash.c:1.44
--- php-src/ext/hash/hash.c:1.43Tue Jun  3 17:27:10 2008
+++ php-src/ext/hash/hash.c Sat Jun 28 15:20:49 2008
@@ -13,10 +13,11 @@
   | [EMAIL PROTECTED] so we can mail you a copy immediately.   |
   +--+
   | Author: Sara Golemon [EMAIL PROTECTED]   |
+  | Scott MacVicar [EMAIL PROTECTED]|
   +--+
 */
 
-/* $Id: hash.c,v 1.43 2008/06/03 17:27:10 scottmac Exp $ */
+/* $Id: hash.c,v 1.44 2008/06/28 15:20:49 scottmac Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -35,6 +36,48 @@
 # define DEFAULT_CONTEXT NULL
 #endif
 
+#ifdef PHP_MHASH_BC
+struct mhash_bc_entry {
+   char *mhash_name;
+   char *hash_name;
+   int value;
+};
+
+#define MHASH_NUM_ALGOS 29
+
+static struct mhash_bc_entry mhash_to_hash[MHASH_NUM_ALGOS] = {
+   {CRC32, crc32, 0},
+   {MD5, md5, 1},
+   {SHA1, sha1, 2},
+   {HAVAL256, haval256,3, 3},
+   {NULL, NULL, 4},
+   {RIPEMD160, ripemd160, 5},
+   {NULL, NULL, 6},
+   {TIGER, tiger192,3, 7},
+   {GOST, gost, 8},
+   {CRC32B, crc32b, 9},
+   {HAVAL224, haval224,3, 10},
+   {HAVAL192, haval192,3, 11},
+   {HAVAL160, haval160,3, 12},
+   {HAVAL128, haval128,3, 13},
+   {TIGER128, tiger128,3, 14},
+   {TIGER160, tiger160,3, 15},
+   {MD4, md4, 16},
+   {SHA256, sha256, 17},
+   {ADLER32, adler32, 18},
+   {SHA224, sha224, 19},
+   {SHA512, sha512, 20},
+   {SHA384, sha384, 21},
+   {WHIRLPOOL, whirlpool, 22},
+   {RIPEMD128, ripemd128, 23},
+   {RIPEMD256, ripemd256, 24},
+   {RIPEMD320, ripemd320, 25},
+   {NULL, NULL, 26}, /* support needs to be added for snefru 128 */
+   {SNEFRU256, snefru256, 27},
+   {MD2, md2, 28}
+};
+#endif
+
 /* Hash Registry Access */
 
 PHP_HASH_API const php_hash_ops *php_hash_fetch_ops(const char *algo, int 
algo_len) /* {{{ */
@@ -74,12 +117,12 @@
 
 /* Userspace */
 
-static void php_hash_do_hash(INTERNAL_FUNCTION_PARAMETERS, int isfilename) /* 
{{{ */
+static void php_hash_do_hash(INTERNAL_FUNCTION_PARAMETERS, int isfilename, 
zend_bool raw_output_default) /* {{{ */
 {
char *algo, *data, *digest;
int algo_len, data_len;
zend_uchar data_type = IS_STRING;
-   zend_bool raw_output = 0;
+   zend_bool raw_output = raw_output_default;
const php_hash_ops *ops;
void *context;
php_stream *stream = NULL;
@@ -175,7 +218,7 @@
 Returns lowercase hexits by default */
 PHP_FUNCTION(hash)
 {
-   php_hash_do_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0);
+   php_hash_do_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 0);
 }
 /* }}} */
 
@@ -184,16 +227,16 @@
 Returns lowercase hexits by default */
 PHP_FUNCTION(hash_file)
 {
-   php_hash_do_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 1);
+   

[PHP-CVS] cvs: php-src /ext/hash config.w32 /ext/mhash config.w32

2008-06-28 Thread Scott MacVicar
scottmacSat Jun 28 15:30:45 2008 UTC

  Modified files:  
/php-src/ext/hash   config.w32 
/php-src/ext/mhash  config.w32 
  Log:
  Sort Windows changes for mhash BC layer
  
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/hash/config.w32?r1=1.9r2=1.10diff_format=u
Index: php-src/ext/hash/config.w32
diff -u php-src/ext/hash/config.w32:1.9 php-src/ext/hash/config.w32:1.10
--- php-src/ext/hash/config.w32:1.9 Fri Mar  3 14:35:29 2006
+++ php-src/ext/hash/config.w32 Sat Jun 28 15:30:45 2008
@@ -1,8 +1,16 @@
-// $Id: config.w32,v 1.9 2006/03/03 14:35:29 edink Exp $
+// $Id: config.w32,v 1.10 2008/06/28 15:30:45 scottmac Exp $
 // vim:ft=javascript
 
 ARG_ENABLE(hash, enable hash support, yes);
 
+if (PHP_MHASH != no) {
+   if (PHP_HASH == no) {
+   PHP_HASH = yes;
+   }
+   AC_DEFINE('PHP_MHASH_BC', 1);
+}
+
+
 if (PHP_HASH != no) {
AC_DEFINE('HAVE_HASH_EXT', 1);
EXTENSION(hash, hash.c hash_md.c hash_sha.c hash_ripemd.c 
hash_haval.c 
http://cvs.php.net/viewvc.cgi/php-src/ext/mhash/config.w32?r1=1.1r2=1.2diff_format=u
Index: php-src/ext/mhash/config.w32
diff -u php-src/ext/mhash/config.w32:1.1 php-src/ext/mhash/config.w32:1.2
--- php-src/ext/mhash/config.w32:1.1Fri Jan  9 13:42:14 2004
+++ php-src/ext/mhash/config.w32Sat Jun 28 15:30:45 2008
@@ -1,16 +1,10 @@
-// $Id: config.w32,v 1.1 2004/01/09 13:42:14 wez Exp $
+// $Id: config.w32,v 1.2 2008/06/28 15:30:45 scottmac Exp $
 // vim:ft=javascript
 
 ARG_WITH(mhash, mhash support, no);
 
 if (PHP_MHASH != no) {
-
-   if (CHECK_HEADER_ADD_INCLUDE('mhash.h', 'CFLAGS_MHASH') 
-   CHECK_LIB('libmhash.lib', 'mhash')) {
-   EXTENSION('mhash', 'mhash.c');
-   AC_DEFINE('HAVE_LIBMHASH', 1);
-   } else {
-   WARNING(mhash not enabled; libraries and headers not found);
-   }
+   EXTENSION('mhash', 'mhash.c');
+   ADD_EXTENSION_DEP('mhash', 'hash', true);
 }
 



-- 
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/hash config.w32 /ext/mhash config.w32

2008-06-28 Thread Scott MacVicar
scottmacSat Jun 28 15:31:50 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/hash   config.w32 
/php-src/ext/mhash  config.w32 
  Log:
  MFH: Sort Windows changes for mhash BC layer
  
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/hash/config.w32?r1=1.8.2.3r2=1.8.2.3.4.1diff_format=u
Index: php-src/ext/hash/config.w32
diff -u php-src/ext/hash/config.w32:1.8.2.3 
php-src/ext/hash/config.w32:1.8.2.3.4.1
--- php-src/ext/hash/config.w32:1.8.2.3 Fri Mar  3 14:34:34 2006
+++ php-src/ext/hash/config.w32 Sat Jun 28 15:31:50 2008
@@ -1,8 +1,15 @@
-// $Id: config.w32,v 1.8.2.3 2006/03/03 14:34:34 edink Exp $
+// $Id: config.w32,v 1.8.2.3.4.1 2008/06/28 15:31:50 scottmac Exp $
 // vim:ft=javascript
 
 ARG_ENABLE(hash, enable hash support, yes);
 
+if (PHP_MHASH != no) {
+   if (PHP_HASH == no) {
+   PHP_HASH = yes;
+   }
+   AC_DEFINE('PHP_MHASH_BC', 1);
+}
+
 if (PHP_HASH != no) {
AC_DEFINE('HAVE_HASH_EXT', 1);
EXTENSION(hash, hash.c hash_md.c hash_sha.c hash_ripemd.c 
hash_haval.c 
http://cvs.php.net/viewvc.cgi/php-src/ext/mhash/config.w32?r1=1.1r2=1.1.8.1diff_format=u
Index: php-src/ext/mhash/config.w32
diff -u php-src/ext/mhash/config.w32:1.1 php-src/ext/mhash/config.w32:1.1.8.1
--- php-src/ext/mhash/config.w32:1.1Fri Jan  9 13:42:14 2004
+++ php-src/ext/mhash/config.w32Sat Jun 28 15:31:50 2008
@@ -1,16 +1,10 @@
-// $Id: config.w32,v 1.1 2004/01/09 13:42:14 wez Exp $
+// $Id: config.w32,v 1.1.8.1 2008/06/28 15:31:50 scottmac Exp $
 // vim:ft=javascript
 
 ARG_WITH(mhash, mhash support, no);
 
 if (PHP_MHASH != no) {
-
-   if (CHECK_HEADER_ADD_INCLUDE('mhash.h', 'CFLAGS_MHASH') 
-   CHECK_LIB('libmhash.lib', 'mhash')) {
-   EXTENSION('mhash', 'mhash.c');
-   AC_DEFINE('HAVE_LIBMHASH', 1);
-   } else {
-   WARNING(mhash not enabled; libraries and headers not found);
-   }
+   EXTENSION('mhash', 'mhash.c');
+   ADD_EXTENSION_DEP('mhash', 'hash', true);
 }
 



-- 
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/mbstring mbstring.c php_mbregex.h

2008-06-28 Thread Alexey Zakhlestin
indeyetsSat Jun 28 18:04:19 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/mbstring   mbstring.c php_mbregex.h 
  Log:
  added arginfo (fixes #45388)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/mbstring.c?r1=1.224.2.22.2.25.2.8r2=1.224.2.22.2.25.2.9diff_format=u
Index: php-src/ext/mbstring/mbstring.c
diff -u php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.8 
php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.9
--- php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.8 Fri Jun 13 14:48:33 2008
+++ php-src/ext/mbstring/mbstring.c Sat Jun 28 18:04:19 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: mbstring.c,v 1.224.2.22.2.25.2.8 2008/06/13 14:48:33 hirokawa Exp $ */
+/* $Id: mbstring.c,v 1.224.2.22.2.25.2.9 2008/06/28 18:04:19 indeyets Exp $ */
 
 /*
  * PHP 4 Multibyte String module mbstring
@@ -167,6 +167,26 @@
ZEND_ARG_PASS_INFO(0)
ZEND_END_ARG_INFO()
 
+static
+   ZEND_BEGIN_ARG_INFO_EX(mb_parse_str_arginfo, 0, 0, 1)
+   ZEND_ARG_INFO(0, encoded_string)
+   ZEND_ARG_ARRAY_INFO(1, result, 1)
+   ZEND_END_ARG_INFO()
+
+static
+   ZEND_BEGIN_ARG_INFO_EX(mb_convert_variables_arginfo, 1, 0, 3)
+   ZEND_ARG_INFO(0, to_encoding)
+   ZEND_ARG_INFO(0, from_encoding)
+   ZEND_ARG_INFO(1, vars)
+   ZEND_END_ARG_INFO()
+
+static
+   ZEND_BEGIN_ARG_INFO_EX(mb_ereg_arginfo, 0, 0, 2)
+   ZEND_ARG_INFO(0, pattern)
+   ZEND_ARG_INFO(0, string)
+   ZEND_ARG_INFO(1, regs)
+   ZEND_END_ARG_INFO()
+
 /* {{{ mb_overload_def mb_ovld[] */
 static const struct mb_overload_def mb_ovld[] = {
{MB_OVERLOAD_MAIL, mail, mb_send_mail, mb_orig_mail},
@@ -204,7 +224,7 @@
PHP_FE(mb_http_output,  NULL)
PHP_FE(mb_detect_order, NULL)
PHP_FE(mb_substitute_character, NULL)
-   PHP_FE(mb_parse_str,second_arg_force_ref)
+   PHP_FE(mb_parse_str,mb_parse_str_arginfo)
PHP_FE(mb_output_handler,   NULL)
PHP_FE(mb_preferred_mime_name,  NULL)
PHP_FE(mb_strlen,   NULL)
@@ -227,7 +247,7 @@
PHP_FE(mb_convert_kana, NULL)
PHP_FE(mb_encode_mimeheader,NULL)
PHP_FE(mb_decode_mimeheader,NULL)
-   PHP_FE(mb_convert_variables,third_and_rest_force_ref)
+   PHP_FE(mb_convert_variables,mb_convert_variables_arginfo)
PHP_FE(mb_encode_numericentity, NULL)
PHP_FE(mb_decode_numericentity, NULL)
PHP_FE(mb_send_mail,NULL)
http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/php_mbregex.h?r1=1.12.2.1.2.1.2.1r2=1.12.2.1.2.1.2.2diff_format=u
Index: php-src/ext/mbstring/php_mbregex.h
diff -u php-src/ext/mbstring/php_mbregex.h:1.12.2.1.2.1.2.1 
php-src/ext/mbstring/php_mbregex.h:1.12.2.1.2.1.2.2
--- php-src/ext/mbstring/php_mbregex.h:1.12.2.1.2.1.2.1 Mon Dec 31 07:17:09 2007
+++ php-src/ext/mbstring/php_mbregex.h  Sat Jun 28 18:04:19 2008
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: php_mbregex.h,v 1.12.2.1.2.1.2.1 2007/12/31 07:17:09 sebastian Exp $ */
+/* $Id: php_mbregex.h,v 1.12.2.1.2.1.2.2 2008/06/28 18:04:19 indeyets Exp $ */
  
 #ifndef _PHP_MBREGEX_H
 #define _PHP_MBREGEX_H
@@ -45,8 +45,8 @@
 #define PHP_MBREGEX_FUNCTION_ENTRIES \
PHP_FE(mb_regex_encoding,   NULL) \
PHP_FE(mb_regex_set_options,NULL) \
-   PHP_FE(mb_ereg, third_arg_force_ref) \
-   PHP_FE(mb_eregi,third_arg_force_ref) \
+   PHP_FE(mb_ereg, mb_ereg_arginfo) \
+   PHP_FE(mb_eregi,mb_ereg_arginfo) \
PHP_FE(mb_ereg_replace, NULL) \
PHP_FE(mb_eregi_replace,NULL) \
PHP_FE(mb_split,NULL) \



-- 
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/mbstring mbstring.c php_mbregex.c /ext/mbstring/tests mb_ereg2.phpt mb_regex_encoding_error1.phpt mb_regex_encoding_variation1.phpt mb_substr_error1.phpt mb_subst

2008-06-28 Thread Alexey Zakhlestin
indeyetsSat Jun 28 21:23:08 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/mbstring   mbstring.c php_mbregex.c 
/php-src/ext/mbstring/tests mb_ereg2.phpt 
mb_regex_encoding_error1.phpt 
mb_regex_encoding_variation1.phpt 
mb_substr_error1.phpt 
mb_substr_variation1.phpt 
mb_substr_variation2.phpt 
  Log:
  updated to the new parameter-parsing api
  http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/mbstring.c?r1=1.224.2.22.2.25.2.9r2=1.224.2.22.2.25.2.10diff_format=u
Index: php-src/ext/mbstring/mbstring.c
diff -u php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.9 
php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.10
--- php-src/ext/mbstring/mbstring.c:1.224.2.22.2.25.2.9 Sat Jun 28 18:04:19 2008
+++ php-src/ext/mbstring/mbstring.c Sat Jun 28 21:23:07 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: mbstring.c,v 1.224.2.22.2.25.2.9 2008/06/28 18:04:19 indeyets Exp $ */
+/* $Id: mbstring.c,v 1.224.2.22.2.25.2.10 2008/06/28 21:23:07 indeyets Exp $ */
 
 /*
  * PHP 4 Multibyte String module mbstring
@@ -1293,12 +1293,17 @@
Sets the current detect_order or Return the current detect_order as a array 
*/
 PHP_FUNCTION(mb_detect_order)
 {
-   zval **arg1;
+   size_t argc = ZEND_NUM_ARGS();
+   zval *arg1;
int n, size;
enum mbfl_no_encoding *list, *entry;
char *name;
 
-   if (ZEND_NUM_ARGS() == 0) {
+   if (zend_parse_parameters(argc TSRMLS_CC, |z, arg1) == FAILURE) {
+   return;
+   }
+
+   if (argc == 0) {
array_init(return_value);
entry = MBSTRG(current_detect_order_list);
n = MBSTRG(current_detect_order_list_size);
@@ -1310,12 +1315,12 @@
entry++;
n--;
}
-   } else if (ZEND_NUM_ARGS() == 1  zend_get_parameters_ex(1, arg1) != 
FAILURE) {
+   } else {
list = NULL;
size = 0;
-   switch (Z_TYPE_PP(arg1)) {
+   switch (Z_TYPE_P(arg1)) {
case IS_ARRAY:
-   if (!php_mb_parse_encoding_array(*arg1, list, size, 0 
TSRMLS_CC)) {
+   if (!php_mb_parse_encoding_array(arg1, list, size, 0 
TSRMLS_CC)) {
if (list) {
efree(list);
}
@@ -1323,8 +1328,8 @@
}
break;
default:
-   convert_to_string_ex(arg1);
-   if (!php_mb_parse_encoding_list(Z_STRVAL_PP(arg1), 
Z_STRLEN_PP(arg1), list, size, 0 TSRMLS_CC)) {
+   convert_to_string_ex(arg1);
+   if (!php_mb_parse_encoding_list(Z_STRVAL_P(arg1), 
Z_STRLEN_P(arg1), list, size, 0 TSRMLS_CC)) {
if (list) {
efree(list);
}
@@ -1332,18 +1337,17 @@
}
break;
}
+
if (list == NULL) {
-   RETVAL_FALSE;
-   } else {
-   if (MBSTRG(current_detect_order_list)) {
-   efree(MBSTRG(current_detect_order_list));
-   }
-   MBSTRG(current_detect_order_list) = list;
-   MBSTRG(current_detect_order_list_size) = size;
-   RETVAL_TRUE;
+   RETURN_FALSE;
}
-   } else {
-   WRONG_PARAM_COUNT;
+
+   if (MBSTRG(current_detect_order_list)) {
+   efree(MBSTRG(current_detect_order_list));
+   }
+   MBSTRG(current_detect_order_list) = list;
+   MBSTRG(current_detect_order_list_size) = size;
+   RETURN_TRUE;
}
 }
 /* }}} */
@@ -1352,52 +1356,56 @@
Sets the current substitute_character or returns the current 
substitute_character */
 PHP_FUNCTION(mb_substitute_character)
 {
-   zval **arg1;
+   zval *arg1;
+
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, |z, arg1) == 
FAILURE) {
+   return;
+   }
 
if (ZEND_NUM_ARGS() == 0) {
if (MBSTRG(current_filter_illegal_mode) == 
MBFL_OUTPUTFILTER_ILLEGAL_MODE_NONE) {
-   RETVAL_STRING(none, 1);
+   RETURN_STRING(none, 1);
} else if (MBSTRG(current_filter_illegal_mode) == 
MBFL_OUTPUTFILTER_ILLEGAL_MODE_LONG) {
-   RETVAL_STRING(long, 1);
+   RETURN_STRING(long, 1);
} else if (MBSTRG(current_filter_illegal_mode) 

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

2008-06-28 Thread Felipe Pena
felipe  Sat Jun 28 21:36:40 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/xmlrpc xmlrpc-epi-php.c 
  Log:
  - New parameter parsing API
  
  http://cvs.php.net/viewvc.cgi/php-src/ext/xmlrpc/xmlrpc-epi-php.c?r1=1.39.2.5.2.6.2.5r2=1.39.2.5.2.6.2.6diff_format=u
Index: php-src/ext/xmlrpc/xmlrpc-epi-php.c
diff -u php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.5 
php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.6
--- php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.5Fri Jun 20 
11:38:52 2008
+++ php-src/ext/xmlrpc/xmlrpc-epi-php.c Sat Jun 28 21:36:39 2008
@@ -51,7 +51,7 @@
+--+
  */
 
-/* $Id: xmlrpc-epi-php.c,v 1.39.2.5.2.6.2.5 2008/06/20 11:38:52 felipe Exp $ */
+/* $Id: xmlrpc-epi-php.c,v 1.39.2.5.2.6.2.6 2008/06/28 21:36:39 felipe Exp $ */
 
 /**
 * BUGS:   *
@@ -189,7 +189,7 @@
 XMLRPC_VALUE_TYPE get_zval_xmlrpc_type(zval* value, zval** newvalue);
 static void php_xmlrpc_introspection_callback(XMLRPC_SERVER server, void* 
data);
 int sset_zval_xmlrpc_type(zval* value, XMLRPC_VALUE_TYPE type);
-zval* decode_request_worker(zval* xml_in, zval* encoding_in, zval* 
method_name_out);
+zval* decode_request_worker(char *xml_in, int xml_in_len, char *encoding_in, 
zval* method_name_out);
 const char* xmlrpc_type_as_str(XMLRPC_VALUE_TYPE type, XMLRPC_VECTOR_TYPE 
vtype);
 XMLRPC_VALUE_TYPE xmlrpc_str_as_type(const char* str);
 XMLRPC_VECTOR_TYPE xmlrpc_str_as_vector_type(const char* str);
@@ -612,20 +612,20 @@
return elem;
 }
 
-/* {{{ proto string xmlrpc_encode_request(string method, mixed params)
+/* {{{ proto string xmlrpc_encode_request(string method, mixed params [, array 
output_options])
Generates XML for a method request */
 PHP_FUNCTION(xmlrpc_encode_request)
 {
XMLRPC_REQUEST xRequest = NULL;
-   zval **method, **vals, **out_opts;
-   char* outBuf;
+   char *outBuf;
+   zval **method, **vals, *out_opts;
php_output_options out;
 
-   if (ZEND_NUM_ARGS()  2 || ZEND_NUM_ARGS()  3 || 
(zend_get_parameters_ex(ZEND_NUM_ARGS(), method, vals, out_opts) == 
FAILURE)) {
-   WRONG_PARAM_COUNT; /* prints/logs a warning and returns */
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, ZZ|a, method, 
vals, out_opts) == FAILURE) {
+   return;
}
 
-   set_output_options(out, (ZEND_NUM_ARGS() == 3) ? *out_opts : 0);
+   set_output_options(out, (ZEND_NUM_ARGS() == 3) ? out_opts : 0);
 
if(return_value_used) {
xRequest = XMLRPC_RequestNew();
@@ -666,8 +666,8 @@
zval **arg1;
char *outBuf;
 
-   if (ZEND_NUM_ARGS() != 1 || (zend_get_parameters_ex(1, arg1) == 
FAILURE)) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, Z, arg1) == 
FAILURE) {
+   return;
}
 
if( return_value_used ) {
@@ -690,15 +690,15 @@
 /* }}} */
 
 
-zval* decode_request_worker (zval* xml_in, zval* encoding_in, zval* 
method_name_out)
+zval* decode_request_worker(char *xml_in, int xml_in_len, char *encoding_in, 
zval* method_name_out)
 {
zval* retval = NULL;
XMLRPC_REQUEST response;
STRUCT_XMLRPC_REQUEST_INPUT_OPTIONS opts = {{0}};
-   opts.xml_elem_opts.encoding = encoding_in ? 
utf8_get_encoding_id_from_string(Z_STRVAL_P(encoding_in)) : ENCODING_DEFAULT;
+   opts.xml_elem_opts.encoding = encoding_in ? 
utf8_get_encoding_id_from_string(encoding_in) : ENCODING_DEFAULT;
 
/* generate XMLRPC_REQUEST from raw xml */
-   response = XMLRPC_REQUEST_FromXML(Z_STRVAL_P(xml_in), 
Z_STRLEN_P(xml_in), opts);
+   response = XMLRPC_REQUEST_FromXML(xml_in, xml_in_len, opts);
if (response) {
/* convert xmlrpc data to native php types */
retval = XMLRPC_to_PHP(XMLRPC_RequestGetData(response));
@@ -722,21 +722,18 @@
Decodes XML into native PHP types */
 PHP_FUNCTION(xmlrpc_decode_request)
 {
-   zval **xml, **method, **encoding = NULL;
-   int argc = ZEND_NUM_ARGS();
+   char *xml, *encoding = NULL;
+   zval **method;
+   int xml_len, encoding_len = 0;
 
-   if (argc  2 || argc  3 || (zend_get_parameters_ex(argc, xml, 
method, encoding) == FAILURE)) {
-   WRONG_PARAM_COUNT;
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, sZ|s, xml, 
xml_len, method, encoding, encoding_len) == FAILURE) {
+   return;
}
 
-   convert_to_string_ex(xml);
convert_to_string_ex(method);
-   if(argc == 3) {
-   convert_to_string_ex(encoding);
-   }
 
if(return_value_used) {
-   zval* retval = decode_request_worker(*xml, encoding ? *encoding 
: NULL, *method);
+   zval* retval = decode_request_worker(xml, xml_len, 

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

2008-06-28 Thread Felipe Pena
felipe  Sat Jun 28 22:06:00 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/xmlrpc xmlrpc-epi-php.c 
  Log:
  - Added arginfo
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/xmlrpc/xmlrpc-epi-php.c?r1=1.39.2.5.2.6.2.6r2=1.39.2.5.2.6.2.7diff_format=u
Index: php-src/ext/xmlrpc/xmlrpc-epi-php.c
diff -u php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.6 
php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.7
--- php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.39.2.5.2.6.2.6Sat Jun 28 
21:36:39 2008
+++ php-src/ext/xmlrpc/xmlrpc-epi-php.c Sat Jun 28 22:05:59 2008
@@ -51,7 +51,7 @@
+--+
  */
 
-/* $Id: xmlrpc-epi-php.c,v 1.39.2.5.2.6.2.6 2008/06/28 21:36:39 felipe Exp $ */
+/* $Id: xmlrpc-epi-php.c,v 1.39.2.5.2.6.2.7 2008/06/28 22:05:59 felipe Exp $ */
 
 /**
 * BUGS:   *
@@ -75,21 +75,100 @@
 
 static int le_xmlrpc_server;
 
+/* {{{ arginfo */
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_encode, 0, 0, 1)
+   ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_decode, 0, 0, 1)
+   ZEND_ARG_INFO(0, value)
+   ZEND_ARG_INFO(0, encoding)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_decode_request, 0, 0, 2)
+   ZEND_ARG_INFO(0, xml)
+   ZEND_ARG_INFO(1, method)
+   ZEND_ARG_INFO(0, encoding)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_encode_request, 0, 0, 2)
+   ZEND_ARG_INFO(0, method)
+   ZEND_ARG_INFO(1, params)
+   ZEND_ARG_INFO(0, output_options)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_set_type, 0, 0, 2)
+   ZEND_ARG_INFO(1, value)
+   ZEND_ARG_INFO(0, type)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_is_fault, 0, 0, 1)
+   ZEND_ARG_INFO(0, arg)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_xmlrpc_server_create, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_destroy, 0, 0, 1)
+   ZEND_ARG_INFO(0, server)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_register_method, 0, 0, 3)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, method_name)
+   ZEND_ARG_INFO(0, function)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_call_method, 0, 0, 3)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, xml)
+   ZEND_ARG_INFO(0, user_data)
+   ZEND_ARG_INFO(0, output_options)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_parse_method_descriptions, 0, 0, 1)
+   ZEND_ARG_INFO(0, xml)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_add_introspection_data, 0, 0, 2)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, desc)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_register_introspection_callback, 
0, 0, 2)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, function)
+ZEND_END_ARG_INFO()
+/* }}} */
+
 const zend_function_entry xmlrpc_functions[] = {
-   PHP_FE(xmlrpc_encode,   
NULL) 
-   PHP_FE(xmlrpc_decode,   
NULL)
-   PHP_FE(xmlrpc_decode_request,   
second_arg_force_ref)
-   PHP_FE(xmlrpc_encode_request,   
NULL)
-   PHP_FE(xmlrpc_get_type, 
NULL)
-   PHP_FE(xmlrpc_set_type, 
first_arg_force_ref)
-   PHP_FE(xmlrpc_is_fault, 
NULL)
-   PHP_FE(xmlrpc_server_create,
NULL)
-   PHP_FE(xmlrpc_server_destroy,   
NULL)
-   PHP_FE(xmlrpc_server_register_method,   
NULL)
-   PHP_FE(xmlrpc_server_call_method,   
NULL)
-   PHP_FE(xmlrpc_parse_method_descriptions,
NULL)
-   PHP_FE(xmlrpc_server_add_introspection_data,NULL)
-   PHP_FE(xmlrpc_server_register_introspection_callback,   NULL)
+   PHP_FE(xmlrpc_encode,   
arginfo_xmlrpc_encode) 
+   PHP_FE(xmlrpc_decode,   
arginfo_xmlrpc_decode)
+   PHP_FE(xmlrpc_decode_request,   
arginfo_xmlrpc_decode_request)
+   PHP_FE(xmlrpc_encode_request, 

[PHP-CVS] cvs: php-src /ext/xmlrpc xmlrpc-epi-php.c

2008-06-28 Thread Felipe Pena
felipe  Sat Jun 28 22:19:24 2008 UTC

  Modified files:  
/php-src/ext/xmlrpc xmlrpc-epi-php.c 
  Log:
  - MFB: Added arginfo
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/xmlrpc/xmlrpc-epi-php.c?r1=1.55r2=1.56diff_format=u
Index: php-src/ext/xmlrpc/xmlrpc-epi-php.c
diff -u php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.55 
php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.56
--- php-src/ext/xmlrpc/xmlrpc-epi-php.c:1.55Thu Feb 28 14:16:25 2008
+++ php-src/ext/xmlrpc/xmlrpc-epi-php.c Sat Jun 28 22:19:24 2008
@@ -51,7 +51,7 @@
+--+
  */
 
-/* $Id: xmlrpc-epi-php.c,v 1.55 2008/02/28 14:16:25 felipe Exp $ */
+/* $Id: xmlrpc-epi-php.c,v 1.56 2008/06/28 22:19:24 felipe Exp $ */
 
 /**
 * BUGS:   *
@@ -75,21 +75,100 @@
 
 static int le_xmlrpc_server;
 
+/* {{{ arginfo */
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_encode, 0, 0, 1)
+   ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_decode, 0, 0, 1)
+   ZEND_ARG_INFO(0, value)
+   ZEND_ARG_INFO(0, encoding)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_decode_request, 0, 0, 2)
+   ZEND_ARG_INFO(0, xml)
+   ZEND_ARG_INFO(1, method)
+   ZEND_ARG_INFO(0, encoding)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_encode_request, 0, 0, 2)
+   ZEND_ARG_INFO(0, method)
+   ZEND_ARG_INFO(1, params)
+   ZEND_ARG_INFO(0, output_options)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_set_type, 0, 0, 2)
+   ZEND_ARG_INFO(1, value)
+   ZEND_ARG_INFO(0, type)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_is_fault, 0, 0, 1)
+   ZEND_ARG_INFO(0, arg)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_xmlrpc_server_create, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_destroy, 0, 0, 1)
+   ZEND_ARG_INFO(0, server)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_register_method, 0, 0, 3)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, method_name)
+   ZEND_ARG_INFO(0, function)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_call_method, 0, 0, 3)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, xml)
+   ZEND_ARG_INFO(0, user_data)
+   ZEND_ARG_INFO(0, output_options)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_parse_method_descriptions, 0, 0, 1)
+   ZEND_ARG_INFO(0, xml)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_add_introspection_data, 0, 0, 2)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, desc)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_xmlrpc_server_register_introspection_callback, 
0, 0, 2)
+   ZEND_ARG_INFO(0, server)
+   ZEND_ARG_INFO(0, function)
+ZEND_END_ARG_INFO()
+/* }}} */
+
 const zend_function_entry xmlrpc_functions[] = {
-   PHP_FE(xmlrpc_encode,   
NULL) 
-   PHP_FE(xmlrpc_decode,   
NULL)
-   PHP_FE(xmlrpc_decode_request,   
second_arg_force_ref)
-   PHP_FE(xmlrpc_encode_request,   
NULL)
-   PHP_FE(xmlrpc_get_type, 
NULL)
-   PHP_FE(xmlrpc_set_type, 
first_arg_force_ref)
-   PHP_FE(xmlrpc_is_fault, 
NULL)
-   PHP_FE(xmlrpc_server_create,
NULL)
-   PHP_FE(xmlrpc_server_destroy,   
NULL)
-   PHP_FE(xmlrpc_server_register_method,   
NULL)
-   PHP_FE(xmlrpc_server_call_method,   
NULL)
-   PHP_FE(xmlrpc_parse_method_descriptions,
NULL)
-   PHP_FE(xmlrpc_server_add_introspection_data,NULL)
-   PHP_FE(xmlrpc_server_register_introspection_callback,   NULL)
+   PHP_FE(xmlrpc_encode,   
arginfo_xmlrpc_encode) 
+   PHP_FE(xmlrpc_decode,   
arginfo_xmlrpc_decode)
+   PHP_FE(xmlrpc_decode_request,   
arginfo_xmlrpc_decode_request)
+   PHP_FE(xmlrpc_encode_request,   
arginfo_xmlrpc_encode_request)
+