X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http.c;h=76629d32265fe5733d33a73037c6d1923d98992a;hp=8d73ecbdfc5d10f288e18eb0bd26e447c5b932ed;hb=refs%2Fheads%2Fv1.7.x;hpb=ea76053f1595a10c79735e36a51f54478ff15acf diff --git a/http.c b/http.c index 8d73ecb..76629d3 100644 --- a/http.c +++ b/http.c @@ -6,7 +6,7 @@ | modification, are permitted provided that the conditions mentioned | | in the accompanying LICENSE file are met. | +--------------------------------------------------------------------+ - | Copyright (c) 2004-2007, Michael Wallner | + | Copyright (c) 2004-2010, Michael Wallner | +--------------------------------------------------------------------+ */ @@ -14,6 +14,7 @@ #define HTTP_WANT_SAPI #define HTTP_WANT_CURL +#define HTTP_WANT_EVENT #define HTTP_WANT_ZLIB #define HTTP_WANT_MAGIC #include "php_http.h" @@ -65,6 +66,7 @@ zend_function_entry http_functions[] = { PHP_FE(http_negotiate_language, http_arg_pass_ref_2) PHP_FE(http_negotiate_charset, http_arg_pass_ref_2) PHP_FE(http_negotiate_content_type, http_arg_pass_ref_2) + PHP_FE(http_negotiate, http_arg_pass_ref_3) PHP_FE(http_redirect, NULL) PHP_FE(http_throttle, NULL) PHP_FE(http_send_status, NULL) @@ -140,6 +142,9 @@ static zend_module_dep http_module_deps[] = { # ifdef HTTP_HAVE_ICONV ZEND_MOD_REQUIRED("iconv") # endif +# ifdef HTTP_HAVE_EVENT + ZEND_MOD_CONFLICTS("event") +#endif {NULL, NULL, NULL, 0} }; #endif @@ -160,7 +165,7 @@ zend_module_entry http_module_entry = { PHP_RINIT(http), PHP_RSHUTDOWN(http), PHP_MINFO(http), - PHP_EXT_HTTP_VERSION, + PHP_HTTP_VERSION, STANDARD_MODULE_PROPERTIES }; /* }}} */ @@ -339,6 +344,7 @@ PHP_MSHUTDOWN_FUNCTION(http) || SUCCESS != PHP_MSHUTDOWN_CALL(http_request_datashare) # endif #endif + || SUCCESS != PHP_MSHUTDOWN_CALL(http_message_object) || SUCCESS != PHP_MSHUTDOWN_CALL(http_persistent_handle) /* last */ ) { return FAILURE; @@ -407,8 +413,8 @@ PHP_MINFO_FUNCTION(http) { php_info_print_table_start(); { - php_info_print_table_row(2, "HTTP Support", "enabled"); - php_info_print_table_row(2, "Extension Version", PHP_EXT_HTTP_VERSION); + php_info_print_table_header(2, "HTTP Support", "enabled"); + php_info_print_table_row(2, "Extension Version", PHP_HTTP_VERSION); php_info_print_table_row(2, "Registered Classes", #ifndef ZEND_ENGINE_2 "none" @@ -450,6 +456,11 @@ PHP_MINFO_FUNCTION(http) #else php_info_print_table_row(2, "libcurl", "disabled", "disabled"); #endif +#ifdef HTTP_HAVE_EVENT + php_info_print_table_row(3, "libevent", HTTP_EVENT_VERSION, event_get_version()); +#else + php_info_print_table_row(3, "libevent", "disabled", "disabled"); +#endif #ifdef HTTP_HAVE_ZLIB php_info_print_table_row(3, "libz", ZLIB_VERSION, zlibVersion()); #else @@ -478,9 +489,11 @@ PHP_MINFO_FUNCTION(http) FOREACH_KEYVAL(pos2, *val, ident, sub) { if ( SUCCESS == zend_hash_find(Z_ARRVAL_PP(sub), ZEND_STRS("used"), (void *) &zused) && SUCCESS == zend_hash_find(Z_ARRVAL_PP(sub), ZEND_STRS("free"), (void *) &zfree)) { - convert_to_string(*zused); - convert_to_string(*zfree); - php_info_print_table_row(4, provider.str, ident.str, Z_STRVAL_PP(zused), Z_STRVAL_PP(zfree)); + zval *used = http_zsep(IS_STRING, *zused); + zval *free = http_zsep(IS_STRING, *zfree); + php_info_print_table_row(4, provider.str, ident.str, Z_STRVAL_P(used), Z_STRVAL_P(free)); + zval_ptr_dtor(&used); + zval_ptr_dtor(&free); } else { php_info_print_table_row(4, provider.str, ident.str, "0", "0"); }