X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_std_defs.h;h=c297b6489b0dbb9c7dc454601cacf90008c9fc31;hp=c212d30d1b85f8efc1136e2e93994d5181d9092d;hb=6be753a288ed7a42e0cd19551d85eb8eb14c4566;hpb=44d0c1d32c01476ccb5edefcf4d5cdaa46b8e5e6 diff --git a/php_http_std_defs.h b/php_http_std_defs.h index c212d30..c297b64 100644 --- a/php_http_std_defs.h +++ b/php_http_std_defs.h @@ -52,6 +52,13 @@ typedef int STATUS; } #endif +#define INIT_ZARR(zv, ht) \ + { \ + INIT_PZVAL(&(zv)); \ + Z_TYPE(zv) = IS_ARRAY; \ + Z_ARRVAL(zv) = (ht); \ + } + /* return bool (v == SUCCESS) */ #define RETVAL_SUCCESS(v) RETVAL_BOOL(SUCCESS == (v)) #define RETURN_SUCCESS(v) RETURN_BOOL(SUCCESS == (v)) @@ -101,7 +108,7 @@ typedef int STATUS; #define HTTP_URI_ARGSEP HTTP_URL_ARGSEP /* send buffer size */ -#define HTTP_SENDBUF_SIZE 2097152 +#define HTTP_SENDBUF_SIZE 40960 /* CURL buffer size */ #define HTTP_CURLBUF_SIZE 16384 @@ -315,6 +322,12 @@ typedef int STATUS; #ifdef HTTP_HAVE_CURL # ifdef ZEND_ENGINE_2 # define HTTP_DECLARE_ARG_PASS_INFO() \ + static \ + ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_2, 0) \ + ZEND_ARG_PASS_INFO(0) \ + ZEND_ARG_PASS_INFO(1) \ + ZEND_END_ARG_INFO(); \ + \ static \ ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_3, 0) \ ZEND_ARG_PASS_INFO(0) \ @@ -341,6 +354,7 @@ typedef int STATUS; # else # define HTTP_DECLARE_ARG_PASS_INFO() \ + static unsigned char http_arg_pass_ref_2[] = {2, BYREF_NONE, BYREF_FORCE}; \ static unsigned char http_arg_pass_ref_3[] = {3, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; \ static unsigned char http_arg_pass_ref_4[] = {4, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; \ static unsigned char http_arg_pass_ref_5[] = {5, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; @@ -366,7 +380,36 @@ typedef int STATUS; # endif #endif +#ifndef ZVAL_ZVAL +#define ZVAL_ZVAL(z, zv, copy, dtor) { \ + int is_ref, refcount; \ + is_ref = (z)->is_ref; \ + refcount = (z)->refcount; \ + *(z) = *(zv); \ + if (copy) { \ + zval_copy_ctor(z); \ + } \ + if (dtor) { \ + if (!copy) { \ + ZVAL_NULL(zv); \ + } \ + zval_ptr_dtor(&zv); \ + } \ + (z)->is_ref = is_ref; \ + (z)->refcount = refcount; \ + } +#endif +#ifndef RETVAL_ZVAL +#define RETVAL_ZVAL(zv, copy, dtor) ZVAL_ZVAL(return_value, zv, copy, dtor) +#endif +#ifndef RETURN_ZVAL +#define RETURN_ZVAL(zv, copy, dtor) { RETVAL_ZVAL(zv, copy, dtor); return; } +#endif +#define PHP_MINIT_CALL(func) PHP_MINIT(func)(INIT_FUNC_ARGS_PASSTHRU) +#define PHP_RINIT_CALL(func) PHP_RINIT(func)(INIT_FUNC_ARGS_PASSTHRU) +#define PHP_MSHUTDOWN_CALL(func) PHP_MSHUTDOWN(func)(SHUTDOWN_FUNC_ARGS_PASSTHRU) +#define PHP_RSHUTDOWN_CALL(func) PHP_RSHUTDOWN(func)(SHUTDOWN_FUNC_ARGS_PASSTHRU) #endif /* PHP_HTTP_STD_DEFS_H */