projects
/
m6w6
/
ext-http
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
- fix bitmask checking
[m6w6/ext-http]
/
http.c
diff --git
a/http.c
b/http.c
index 26bcf0f1e35580c0bff50a590f380ba644472801..0f5f936aeb08781aae74de19d2965d2a9cd939ae 100644
(file)
--- a/
http.c
+++ b/
http.c
@@
-61,6
+61,9
@@
#ifdef HTTP_HAVE_MHASH
# include <mhash.h>
#endif
#ifdef HTTP_HAVE_MHASH
# include <mhash.h>
#endif
+#ifdef HTTP_HAVE_ZLIB
+# include <zlib.h>
+#endif
#include <ctype.h>
#include <ctype.h>
@@
-114,6
+117,15
@@
zend_function_entry http_functions[] = {
PHP_FE(http_build_query, NULL)
#endif
PHP_FE(ob_etaghandler, NULL)
PHP_FE(http_build_query, NULL)
#endif
PHP_FE(ob_etaghandler, NULL)
+#ifdef HTTP_HAVE_ZLIB
+ PHP_FE(http_gzencode, NULL)
+ PHP_FE(http_gzdecode, NULL)
+ PHP_FE(http_deflate, NULL)
+ PHP_FE(http_inflate, NULL)
+ PHP_FE(http_compress, NULL)
+ PHP_FE(http_uncompress, NULL)
+#endif
+ PHP_FE(http_support, NULL)
EMPTY_FUNCTION_ENTRY
};
EMPTY_FUNCTION_ENTRY
};
@@
-265,32
+277,29
@@
PHP_MINIT_FUNCTION(http)
REGISTER_INI_ENTRIES();
REGISTER_INI_ENTRIES();
- if (SUCCESS != http_headers_global_init()) {
- return FAILURE;
- }
- if (SUCCESS != http_cache_global_init()) {
- return FAILURE;
- }
- if (SUCCESS != http_request_method_global_init()) {
- return FAILURE;
- }
+ if ( (SUCCESS != PHP_MINIT_CALL(http_support)) ||
+ (SUCCESS != PHP_MINIT_CALL(http_headers)) ||
+ (SUCCESS != PHP_MINIT_CALL(http_cache)) ||
#ifdef HTTP_HAVE_CURL
#ifdef HTTP_HAVE_CURL
- if (SUCCESS != http_request_global_init()) {
+ (SUCCESS != PHP_MINIT_CALL(http_request)) ||
+#endif /* HTTP_HAVE_CURL */
+ (SUCCESS != PHP_MINIT_CALL(http_request_method))) {
return FAILURE;
}
return FAILURE;
}
-#endif /* HTTP_HAVE_CURL */
#ifdef ZEND_ENGINE_2
#ifdef ZEND_ENGINE_2
- http_util_object_init();
- http_message_object_init();
+ if ( (SUCCESS != PHP_MINIT_CALL(http_util_object)) ||
+ (SUCCESS != PHP_MINIT_CALL(http_message_object)) ||
# ifndef WONKY
# ifndef WONKY
- http_response_object_init();
-# endif
+ (SUCCESS != PHP_MINIT_CALL(http_response_object)) ||
+# endif
/* WONKY */
# ifdef HTTP_HAVE_CURL
# ifdef HTTP_HAVE_CURL
- http_request_object_init();
- http_requestpool_object_init();
+ (SUCCESS != PHP_MINIT_CALL(http_request_object)) ||
+ (SUCCESS != PHP_MINIT_CALL(http_requestpool_object)) ||
# endif /* HTTP_HAVE_CURL */
# endif /* HTTP_HAVE_CURL */
- http_exception_object_init();
+ (SUCCESS != PHP_MINIT_CALL(http_exception_object))) {
+ return FAILURE;
+ }
#endif /* ZEND_ENGINE_2 */
return SUCCESS;
#endif /* ZEND_ENGINE_2 */
return SUCCESS;
@@
-302,7
+311,7
@@
PHP_MSHUTDOWN_FUNCTION(http)
{
UNREGISTER_INI_ENTRIES();
#ifdef HTTP_HAVE_CURL
{
UNREGISTER_INI_ENTRIES();
#ifdef HTTP_HAVE_CURL
-
http_request_global_cleanup(
);
+
return PHP_MSHUTDOWN_CALL(http_request
);
#endif
return SUCCESS;
}
#endif
return SUCCESS;
}
@@
-325,15
+334,14
@@
PHP_RINIT_FUNCTION(http)
/* {{{ PHP_RSHUTDOWN_FUNCTION */
PHP_RSHUTDOWN_FUNCTION(http)
{
/* {{{ PHP_RSHUTDOWN_FUNCTION */
PHP_RSHUTDOWN_FUNCTION(http)
{
-#if defined(ZEND_ENGINE_2) && defined(HTTP_HAVE_CURL)
- int i, c = zend_hash_num_elements(&HTTP_G(request).methods.custom);
+ STATUS status = SUCCESS;
- for (i = 0; i < c; ++i) {
- http_request_method_unregister(HTTP_MAX_REQUEST_METHOD + i);
- }
+#if defined(ZEND_ENGINE_2) && defined(HTTP_HAVE_CURL)
+ status = PHP_RSHUTDOWN_CALL(http_request_method);
#endif
#endif
+
http_globals_free(HTTP_GLOBALS);
http_globals_free(HTTP_GLOBALS);
- return
SUCCESS
;
+ return
status
;
}
/* }}} */
}
/* }}} */
@@
-349,6
+357,17
@@
PHP_MINFO_FUNCTION(http)
#else
php_info_print_table_row(2, "cURL HTTP Requests", "disabled");
#endif
#else
php_info_print_table_row(2, "cURL HTTP Requests", "disabled");
#endif
+#ifdef HTTP_HAVE_ZLIB
+ {
+ char my_zlib_version[64] = {0};
+
+ strlcat(my_zlib_version, "zlib/", 63);
+ strlcat(my_zlib_version, zlibVersion(), 63);
+ php_info_print_table_row(2, "zlib GZIP Encodings", my_zlib_version);
+ }
+#else
+ php_info_print_table_row(2, "zlib GZIP Encodings", "disabled");
+#endif
#ifdef HTTP_HAVE_MHASH
{
char mhash_info[32];
#ifdef HTTP_HAVE_MHASH
{
char mhash_info[32];