X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_encoding.h;h=ea767dd1f267526e92afaa574711bbb92e3c40d5;hp=24d014664a0abb9b9128cb1340206c3ccee92e03;hb=5e56841ce913380b8c2a8f2f602ad9bc1f20014e;hpb=bd80b17b026a00a254ee8693cd7bacf1ebdec4cf diff --git a/php_http_encoding.h b/php_http_encoding.h index 24d0146..ea767dd 100644 --- a/php_http_encoding.h +++ b/php_http_encoding.h @@ -6,13 +6,15 @@ | 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 | +--------------------------------------------------------------------+ */ #ifndef PHP_HTTP_ENCODING_H #define PHP_HTTP_ENCODING_H +#include + extern PHP_MINIT_FUNCTION(http_encoding); extern PHP_RINIT_FUNCTION(http_encoding); extern PHP_RSHUTDOWN_FUNCTION(http_encoding); @@ -123,10 +125,10 @@ typedef struct php_http_encoding_stream php_http_encoding_stream_t; typedef php_http_encoding_stream_t *(*php_http_encoding_stream_init_func_t)(php_http_encoding_stream_t *s); typedef php_http_encoding_stream_t *(*php_http_encoding_stream_copy_func_t)(php_http_encoding_stream_t *from, php_http_encoding_stream_t *to); -typedef STATUS (*php_http_encoding_stream_update_func_t)(php_http_encoding_stream_t *s, const char *in_str, size_t in_len, char **out_str, size_t *out_len); -typedef STATUS (*php_http_encoding_stream_flush_func_t)(php_http_encoding_stream_t *s, char **out_str, size_t *out_len); +typedef ZEND_RESULT_CODE (*php_http_encoding_stream_update_func_t)(php_http_encoding_stream_t *s, const char *in_str, size_t in_len, char **out_str, size_t *out_len); +typedef ZEND_RESULT_CODE (*php_http_encoding_stream_flush_func_t)(php_http_encoding_stream_t *s, char **out_str, size_t *out_len); typedef zend_bool (*php_http_encoding_stream_done_func_t)(php_http_encoding_stream_t *s); -typedef STATUS (*php_http_encoding_stream_finish_func_t)(php_http_encoding_stream_t *s, char **out_str, size_t *out_len); +typedef ZEND_RESULT_CODE (*php_http_encoding_stream_finish_func_t)(php_http_encoding_stream_t *s, char **out_str, size_t *out_len); typedef void (*php_http_encoding_stream_dtor_func_t)(php_http_encoding_stream_t *s); typedef struct php_http_encoding_stream_ops { @@ -143,75 +145,42 @@ struct php_http_encoding_stream { unsigned flags; void *ctx; php_http_encoding_stream_ops_t *ops; -#ifdef ZTS - void ***ts; -#endif }; PHP_HTTP_API php_http_encoding_stream_ops_t *php_http_encoding_stream_get_deflate_ops(void); PHP_HTTP_API php_http_encoding_stream_ops_t *php_http_encoding_stream_get_inflate_ops(void); PHP_HTTP_API php_http_encoding_stream_ops_t *php_http_encoding_stream_get_dechunk_ops(void); -PHP_HTTP_API php_http_encoding_stream_t *php_http_encoding_stream_init(php_http_encoding_stream_t *s, php_http_encoding_stream_ops_t *ops, unsigned flags TSRMLS_DC); +PHP_HTTP_API php_http_encoding_stream_t *php_http_encoding_stream_init(php_http_encoding_stream_t *s, php_http_encoding_stream_ops_t *ops, unsigned flags); PHP_HTTP_API php_http_encoding_stream_t *php_http_encoding_stream_copy(php_http_encoding_stream_t *from, php_http_encoding_stream_t *to); -PHP_HTTP_API STATUS php_http_encoding_stream_reset(php_http_encoding_stream_t **s); -PHP_HTTP_API STATUS php_http_encoding_stream_update(php_http_encoding_stream_t *s, const char *in_str, size_t in_len, char **out_str, size_t *out_len); -PHP_HTTP_API STATUS php_http_encoding_stream_flush(php_http_encoding_stream_t *s, char **out_str, size_t *len); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_stream_reset(php_http_encoding_stream_t **s); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_stream_update(php_http_encoding_stream_t *s, const char *in_str, size_t in_len, char **out_str, size_t *out_len); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_stream_flush(php_http_encoding_stream_t *s, char **out_str, size_t *len); PHP_HTTP_API zend_bool php_http_encoding_stream_done(php_http_encoding_stream_t *s); -PHP_HTTP_API STATUS php_http_encoding_stream_finish(php_http_encoding_stream_t *s, char **out_str, size_t *len); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_stream_finish(php_http_encoding_stream_t *s, char **out_str, size_t *len); PHP_HTTP_API void php_http_encoding_stream_dtor(php_http_encoding_stream_t *s); PHP_HTTP_API void php_http_encoding_stream_free(php_http_encoding_stream_t **s); -PHP_HTTP_API const char *php_http_encoding_dechunk(const char *encoded, size_t encoded_len, char **decoded, size_t *decoded_len TSRMLS_DC); -PHP_HTTP_API STATUS php_http_encoding_deflate(int flags, const char *data, size_t data_len, char **encoded, size_t *encoded_len TSRMLS_DC); -PHP_HTTP_API STATUS php_http_encoding_inflate(const char *data, size_t data_len, char **decoded, size_t *decoded_len TSRMLS_DC); +PHP_HTTP_API const char *php_http_encoding_dechunk(const char *encoded, size_t encoded_len, char **decoded, size_t *decoded_len); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_deflate(int flags, const char *data, size_t data_len, char **encoded, size_t *encoded_len); +PHP_HTTP_API ZEND_RESULT_CODE php_http_encoding_inflate(const char *data, size_t data_len, char **decoded, size_t *decoded_len); typedef struct php_http_encoding_stream_object { - zend_object zo; php_http_encoding_stream_t *stream; + zend_object zo; } php_http_encoding_stream_object_t; -zend_class_entry *php_http_encoding_stream_get_class_entry(void); +PHP_HTTP_API zend_class_entry *php_http_encoding_stream_class_entry; -zend_object_value php_http_encoding_stream_object_new(zend_class_entry *ce TSRMLS_DC); -zend_object_value php_http_encoding_stream_object_new_ex(zend_class_entry *ce, php_http_encoding_stream_t *s, php_http_encoding_stream_object_t **ptr TSRMLS_DC); -zend_object_value php_http_encoding_stream_object_clone(zval *object TSRMLS_DC); -void php_http_encoding_stream_object_free(void *object TSRMLS_DC); +zend_object *php_http_encoding_stream_object_new(zend_class_entry *ce); +php_http_encoding_stream_object_t *php_http_encoding_stream_object_new_ex(zend_class_entry *ce, php_http_encoding_stream_t *s); +zend_object *php_http_encoding_stream_object_clone(zval *object); +void php_http_encoding_stream_object_free(zend_object *object); -zend_class_entry *php_http_deflate_stream_get_class_entry(void); -zend_class_entry *php_http_inflate_stream_get_class_entry(void); -zend_class_entry *php_http_dechunk_stream_get_class_entry(void); +PHP_HTTP_API zend_class_entry *php_http_deflate_stream_class_entry; +PHP_HTTP_API zend_class_entry *php_http_inflate_stream_class_entry; +PHP_HTTP_API zend_class_entry *php_http_dechunk_stream_class_entry; -PHP_METHOD(HttpEncodingStream, __construct); -PHP_METHOD(HttpEncodingStream, update); -PHP_METHOD(HttpEncodingStream, flush); -PHP_METHOD(HttpEncodingStream, done); -PHP_METHOD(HttpEncodingStream, finish); - -PHP_METHOD(HttpDeflateStream, encode); -PHP_METHOD(HttpInflateStream, decode); -PHP_METHOD(HttpDechunkStream, decode); - -/* -typedef struct php_http_inflatestream_object { - zend_object zo; - php_http_encoding_stream_t *stream; -} php_http_inflatestream_object_t; - -extern zend_class_entry *php_http_inflatestream_class_entry; -extern zend_function_entry php_http_inflatestream_method_entry[]; - -extern zend_object_value php_http_inflatestream_object_new(zend_class_entry *ce TSRMLS_DC); -extern zend_object_value php_http_inflatestream_object_new_ex(zend_class_entry *ce, php_http_encoding_stream_t *s, php_http_inflatestream_object_t **ptr TSRMLS_DC); -extern zend_object_value php_http_inflatestream_object_clone(zval *object TSRMLS_DC); -extern void php_http_inflatestream_object_free(void *object TSRMLS_DC); - -PHP_METHOD(HttpInflateStream, __construct); -PHP_METHOD(HttpInflateStream, factory); -PHP_METHOD(HttpInflateStream, update); -PHP_METHOD(HttpInflateStream, flush); -PHP_METHOD(HttpInflateStream, finish); -*/ #endif /*