X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http.h;h=737721d74aae4b9e596f0fe312336068c97e4b8e;hp=d6ac71abcf4db293e40cde168beabde5c0ed4767;hb=2b7331c5fdb73cb48f7f60a8e4ec88766581ced3;hpb=68a779badeace396e3a86caf9cb86b7e70ff636a diff --git a/php_http.h b/php_http.h index d6ac71a..737721d 100644 --- a/php_http.h +++ b/php_http.h @@ -18,26 +18,45 @@ #ifndef PHP_EXT_HTTP_H #define PHP_EXT_HTTP_H -#define PHP_EXT_HTTP_VERSION "0.3.0" +#define HTTP_PEXT_VERSION "0.8.0-dev" /* make compile on Win32 */ -#include "php_streams.h" +#ifdef HTTP_HAVE_CURL +# ifdef PHP_WIN32 +# include +# endif +# include +#endif #include "ext/standard/md5.h" +#include "phpstr/phpstr.h" extern zend_module_entry http_module_entry; #define phpext_http_ptr &http_module_entry +ZEND_BEGIN_MODULE_GLOBALS(http) + zend_bool etag_started; + PHP_MD5_CTX etag_md5; + php_stream_statbuf ssb; + char *ctype; + char *etag; + time_t lmod; + char *allowed_methods; +#ifdef HTTP_HAVE_CURL +# if LIBCURL_VERSION_NUM < 0x070c00 + char curlerr[CURL_ERROR_SIZE + 1]; +# endif + zend_llist to_free; +#endif /* HTTP_HAVE_CURL */ +ZEND_END_MODULE_GLOBALS(http) + #ifdef ZTS -#include "TSRM.h" -#define HTTP_G(v) TSRMG(http_globals_id, zend_http_globals *, v) +# include "TSRM.h" +# define HTTP_G(v) TSRMG(http_globals_id, zend_http_globals *, v) #else -#define HTTP_G(v) (http_globals.v) -#endif - -#ifndef ZEND_ENGINE_2 -#include "php_http_build_query.h" +# define HTTP_G(v) (http_globals.v) #endif +PHP_FUNCTION(http_test); PHP_FUNCTION(http_date); PHP_FUNCTION(http_absolute_uri); PHP_FUNCTION(http_negotiate_language); @@ -45,54 +64,38 @@ PHP_FUNCTION(http_negotiate_charset); PHP_FUNCTION(http_redirect); PHP_FUNCTION(http_send_status); PHP_FUNCTION(http_send_last_modified); +PHP_FUNCTION(http_send_content_type); +PHP_FUNCTION(http_send_content_disposition); PHP_FUNCTION(http_match_modified); PHP_FUNCTION(http_match_etag); PHP_FUNCTION(http_cache_last_modified); PHP_FUNCTION(http_cache_etag); -PHP_FUNCTION(http_content_type); -PHP_FUNCTION(http_content_disposition); PHP_FUNCTION(http_send_data); PHP_FUNCTION(http_send_file); PHP_FUNCTION(http_send_stream); PHP_FUNCTION(http_chunked_decode); PHP_FUNCTION(http_split_response); -PHP_FUNCTION(http_parse_header); +PHP_FUNCTION(http_parse_headers); +PHP_FUNCTION(http_get_request_headers); #ifdef HTTP_HAVE_CURL PHP_FUNCTION(http_get); PHP_FUNCTION(http_head); PHP_FUNCTION(http_post_data); PHP_FUNCTION(http_post_array); -#endif +#endif /* HTTP_HAVE_CURL */ PHP_FUNCTION(http_auth_basic); PHP_FUNCTION(http_auth_basic_cb); +#ifndef ZEND_ENGINE_2 +PHP_FUNCTION(http_build_query); +#endif /* ZEND_ENGINE_2 */ +PHP_FUNCTION(ob_etaghandler); PHP_MINIT_FUNCTION(http); +PHP_MSHUTDOWN_FUNCTION(http); +PHP_RINIT_FUNCTION(http); PHP_RSHUTDOWN_FUNCTION(http); PHP_MINFO_FUNCTION(http); -ZEND_BEGIN_MODULE_GLOBALS(http) - zend_bool etag_started; - PHP_MD5_CTX etag_md5; - php_stream_statbuf ssb; - char *ctype; - char *etag; - time_t lmod; -#ifdef HTTP_HAVE_CURL - struct { - struct { - char *data; - size_t used; - size_t free; - } body; - struct { - char *data; - size_t used; - size_t free; - } hdrs; - } curlbuf; -#endif -ZEND_END_MODULE_GLOBALS(http) - #endif /* PHP_HTTP_H */ /*