X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_api.h;h=2313413f30af7761cd216f34bbd45718c8f8df20;hp=fbfea28a02b85593d2832210c61933ee7e2ddaaf;hb=7493ad081ec06081cb8ca0f804d98a263f93ffbc;hpb=305ac2f007710b684d96b05f33964b4f6a4e3e4d diff --git a/php_http_api.h b/php_http_api.h index fbfea28..2313413 100644 --- a/php_http_api.h +++ b/php_http_api.h @@ -6,7 +6,7 @@ | modification, are permitted provided that the conditions mentioned | | in the accompanying LICENSE file are met. | +--------------------------------------------------------------------+ - | Copyright (c) 2004-2011, Michael Wallner | + | Copyright (c) 2004-2014, Michael Wallner | +--------------------------------------------------------------------+ */ @@ -23,23 +23,24 @@ #include #include +#include +#include #include #include #include #include +#include + #ifdef PHP_WIN32 # define PHP_HTTP_API __declspec(dllexport) #elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_HTTP_API __attribute__ ((visibility("default"))) +# define PHP_HTTP_API extern __attribute__ ((visibility("default"))) #else -# define PHP_HTTP_API +# define PHP_HTTP_API extern #endif -/* make functions that return SUCCESS|FAILURE more obvious */ -typedef int STATUS; - #if (defined(HAVE_ICONV) || defined(PHP_HTTP_HAVE_EXT_ICONV)) && (PHP_HTTP_SHARED_DEPS || !defined(COMPILE_DL_ICONV)) # define PHP_HTTP_HAVE_ICONV #endif @@ -48,22 +49,24 @@ typedef int STATUS; # define PHP_HTTP_HAVE_HASH #endif -#if (defined(HAVE_JSON) || defined(PHP_HTTP_HAVE_EXT_JSON)) && (PHP_HTTP_SHARED_DEPS || !defined(COMPILE_DL_JSON)) -# define PHP_HTTP_HAVE_JSON -#endif +#include #ifdef PHP_WIN32 # define CURL_STATICLIB -# define PHP_HTTP_HAVE_NETDB # include -#elif defined(HAVE_NETDB_H) -# define PHP_HTTP_HAVE_NETDB -# include +#else +# ifdef HAVE_NETDB_H +# include +# endif # ifdef HAVE_UNISTD_H # include # endif #endif +#if defined(HAVE_WCHAR_H) && defined(HAVE_WCTYPE_H) && defined(HAVE_ISWALNUM) && (defined(HAVE_MBRTOWC) || defined(HAVE_MBTOWC)) +# define PHP_HTTP_HAVE_WCHAR 1 +#endif + #include #define PHP_HTTP_IS_CTYPE(type, c) is##type((int) (unsigned char) (c)) #define PHP_HTTP_TO_CTYPE(type, c) to##type((int) (unsigned char) (c)) @@ -71,14 +74,14 @@ typedef int STATUS; #include "php_http.h" #include "php_http_buffer.h" -#include "php_http_strlist.h" #include "php_http_misc.h" -#include "php_http_resource_factory.h" +#include "php_http_options.h" #include "php_http.h" #include "php_http_cookie.h" -#include "php_http_curl.h" #include "php_http_encoding.h" +#include "php_http_info.h" +#include "php_http_message.h" #include "php_http_env.h" #include "php_http_env_request.h" #include "php_http_env_response.h" @@ -86,35 +89,29 @@ typedef int STATUS; #include "php_http_exception.h" #include "php_http_filter.h" #include "php_http_header_parser.h" -#include "php_http_headers.h" -#include "php_http_info.h" -#include "php_http_message.h" +#include "php_http_header.h" #include "php_http_message_body.h" #include "php_http_message_parser.h" #include "php_http_negotiate.h" #include "php_http_object.h" #include "php_http_params.h" -#include "php_http_persistent_handle.h" -#include "php_http_property_proxy.h" #include "php_http_querystring.h" -#include "php_http_client_interface.h" #include "php_http_client.h" +#include "php_http_curl.h" #include "php_http_client_request.h" #include "php_http_client_response.h" -#include "php_http_curl_client.h" -#include "php_http_client_pool.h" -#include "php_http_curl_client_pool.h" -#include "php_http_client_datashare.h" -#include "php_http_curl_client_datashare.h" -#include "php_http_client_factory.h" +#include "php_http_client_curl.h" #include "php_http_url.h" #include "php_http_version.h" ZEND_BEGIN_MODULE_GLOBALS(php_http) struct php_http_env_globals env; - struct php_http_persistent_handle_globals persistent_handle; -#if PHP_HTTP_HAVE_CURL && PHP_HTTP_HAVE_EVENT - struct php_http_curl_globals curl; +#ifdef PHP_HTTP_HAVE_CLIENT + struct { +#ifdef PHP_HTTP_HAVE_CURL + struct php_http_client_curl_globals curl; +#endif + } client; #endif ZEND_END_MODULE_GLOBALS(php_http) @@ -122,9 +119,9 @@ ZEND_EXTERN_MODULE_GLOBALS(php_http); #ifdef ZTS # include "TSRM/TSRM.h" -# define PHP_HTTP_G ((zend_php_http_globals *) (*((void ***) tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(php_http_globals_id)]) +# define PHP_HTTP_G ((zend_php_http_globals *) (*((void ***) tsrm_get_ls_cache()))[TSRM_UNSHUFFLE_RSRC_ID(php_http_globals_id)]) # undef TSRMLS_FETCH_FROM_CTX -# define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = ((ctx)?(ctx):ts_resource_ex(0, NULL)) +# define TSRMLS_FETCH_FROM_CTX(ctx) ERROR #else # define PHP_HTTP_G (&php_http_globals) #endif