X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_request_datashare_api.h;h=15818b0b01bfcc5c50ee79970be59c005f229b96;hp=08b30edc9161ff225f722a651c069a3779ac14c5;hb=bf7172546a6b22d1c15811f1601800f810107dde;hpb=7ea5445a6250f29f09d6b97db124cacf457f23c5 diff --git a/php_http_request_datashare_api.h b/php_http_request_datashare_api.h index 08b30ed..15818b0 100644 --- a/php_http_request_datashare_api.h +++ b/php_http_request_datashare_api.h @@ -6,7 +6,7 @@ | modification, are permitted provided that the conditions mentioned | | in the accompanying LICENSE file are met. | +--------------------------------------------------------------------+ - | Copyright (c) 2004-2006, Michael Wallner | + | Copyright (c) 2004-2010, Michael Wallner | +--------------------------------------------------------------------+ */ @@ -15,24 +15,31 @@ #ifndef PHP_HTTP_REQUEST_DATASHARE_API_H #define PHP_HTTP_REQUEST_DATASHARE_API_H #ifdef HTTP_HAVE_CURL +#ifdef ZEND_ENGINE_2 #ifdef ZTS typedef struct _http_request_datashare_lock_t { CURL *ch; MUTEX_T mx; } http_request_datashare_lock; + +typedef union _http_request_datashare_handle_t { + zend_llist *list; + http_request_datashare_lock *locks; +} http_request_datashare_handle; +#else +typedef struct _http_request_datashare_handle_t { + zend_llist *list; +} http_request_datashare_handle; #endif typedef struct _http_request_datashare_t { CURLSH *ch; zend_bool persistent; - zend_llist *handles; -#ifdef ZTS - http_request_datashare_lock *locks; -#endif + http_request_datashare_handle handle; } http_request_datashare; -#define HTTP_RSHARE_HANDLES(s) ((s)->persistent ? &HTTP_G->request.datashare.handles : (s)->handles) +#define HTTP_RSHARE_HANDLES(s) ((s)->persistent ? &HTTP_G->request.datashare.handles : (s)->handle.list) #define http_request_datashare_global_get _http_request_datashare_global_get extern http_request_datashare *_http_request_datashare_global_get(void); @@ -66,6 +73,7 @@ PHP_HTTP_API void _http_request_datashare_free(http_request_datashare **share TS PHP_HTTP_API STATUS _http_request_datashare_set(http_request_datashare *share, const char *option, size_t option_len, zend_bool enable TSRMLS_DC); +#endif #endif #endif