Hi all Looking over skipped tests I noticed, one minor version to late, that inet_ntop() and inet_pton() are not available on fbsd. The reason is unfortunate macro expansion where inet_ntop & inet_pton get expanded to __inet_ntop & __inet_pton ergo => inet_ntop/pton() are named __inet_ntop/pton().
Attached is a patch adding ZEND_RAW_NAMED_FE/FENTRY macros fixing this issue. It also fixes the never ending libiconv()/iconv() saga (which can still be reproduced on fbsd with --with-iconv --with-xmlrpc). Objections? Comments? -Hannes
Index: main/php.h =================================================================== RCS file: /repository/php-src/main/php.h,v retrieving revision 1.221.2.4.2.5 diff -u -r1.221.2.4.2.5 php.h --- main/php.h 17 Nov 2006 11:40:52 -0000 1.221.2.4.2.5 +++ main/php.h 18 Dec 2006 18:23:46 -0000 @@ -340,6 +340,7 @@ #define PHP_FUNCTION ZEND_FUNCTION #define PHP_METHOD ZEND_METHOD +#define PHP_RAW_NAMED_FE ZEND_RAW_NAMED_FE #define PHP_NAMED_FE ZEND_NAMED_FE #define PHP_FE ZEND_FE #define PHP_DEP_FE ZEND_DEP_FE Index: Zend/zend_API.h =================================================================== RCS file: /repository/ZendEngine2/zend_API.h,v retrieving revision 1.207.2.8.2.5 diff -u -r1.207.2.8.2.5 zend_API.h --- Zend/zend_API.h 18 Jul 2006 09:06:32 -0000 1.207.2.8.2.5 +++ Zend/zend_API.h 18 Dec 2006 18:23:46 -0000 @@ -48,6 +48,9 @@ #define ZEND_FENTRY(zend_name, name, arg_info, flags) { #zend_name, name, arg_info, (zend_uint) (sizeof(arg_info)/sizeof(struct _zend_arg_info)-1), flags }, +#define ZEND_RAW_FENTRY(zend_name, name, arg_info, flags) { zend_name, name, arg_info, (zend_uint) (sizeof(arg_info)/sizeof(struct _zend_arg_info)-1), flags }, +#define ZEND_RAW_NAMED_FE(zend_name, name, arg_info) ZEND_RAW_FENTRY(#zend_name, name, arg_info, 0) + #define ZEND_NAMED_FE(zend_name, name, arg_info) ZEND_FENTRY(zend_name, name, arg_info, 0) #define ZEND_FE(name, arg_info) ZEND_FENTRY(name, ZEND_FN(name), arg_info, 0) #define ZEND_DEP_FE(name, arg_info) ZEND_FENTRY(name, ZEND_FN(name), arg_info, ZEND_ACC_DEPRECATED) Index: ext/standard/basic_functions.c =================================================================== RCS file: /repository/php-src/ext/standard/basic_functions.c,v retrieving revision 1.725.2.31.2.35 diff -u -r1.725.2.31.2.35 basic_functions.c --- ext/standard/basic_functions.c 13 Dec 2006 15:31:47 -0000 1.725.2.31.2.35 +++ ext/standard/basic_functions.c 18 Dec 2006 18:23:47 -0000 @@ -3326,10 +3326,10 @@ PHP_FE(number_format, arginfo_number_format) PHP_FE(fmod, arginfo_fmod) #ifdef HAVE_INET_NTOP - PHP_NAMED_FE(inet_ntop, php_inet_ntop, arginfo_inet_ntop) + PHP_RAW_NAMED_FE(inet_ntop, php_inet_ntop, arginfo_inet_ntop) #endif #ifdef HAVE_INET_PTON - PHP_NAMED_FE(inet_pton, php_inet_pton, arginfo_inet_pton) + PHP_RAW_NAMED_FE(inet_pton, php_inet_pton, arginfo_inet_pton) #endif PHP_FE(ip2long, arginfo_ip2long) PHP_FE(long2ip, arginfo_long2ip) Index: ext/iconv/iconv.c =================================================================== RCS file: /repository/php-src/ext/iconv/iconv.c,v retrieving revision 1.124.2.8.2.8 diff -u -r1.124.2.8.2.8 iconv.c --- ext/iconv/iconv.c 15 Nov 2006 18:34:57 -0000 1.124.2.8.2.8 +++ ext/iconv/iconv.c 18 Dec 2006 19:07:10 -0000 @@ -142,7 +142,7 @@ /* {{{ iconv_functions[] */ zend_function_entry iconv_functions[] = { - PHP_NAMED_FE(iconv,php_if_iconv, arginfo_iconv) + PHP_RAW_NAMED_FE(iconv,php_if_iconv, arginfo_iconv) PHP_FE(ob_iconv_handler, arginfo_ob_iconv_handler) PHP_FE(iconv_get_encoding, arginfo_iconv_get_encoding) PHP_FE(iconv_set_encoding, arginfo_iconv_set_encoding)
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php