| modification, are permitted provided that the conditions mentioned |
| in the accompanying LICENSE file are met. |
+--------------------------------------------------------------------+
- | Copyright (c) 2004-2006, Michael Wallner <mike@php.net> |
+ | Copyright (c) 2004-2007, Michael Wallner <mike@php.net> |
+--------------------------------------------------------------------+
*/
#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;
-#ifdef ZTS
- union {
- zend_llist *list;
- http_request_datashare_lock *locks;
- } handle;
-#else
- struct {
- zend_llist *list;
- } handle;
-#endif
+ http_request_datashare_handle handle;
} http_request_datashare;
#define HTTP_RSHARE_HANDLES(s) ((s)->persistent ? &HTTP_G->request.datashare.handles : (s)->handle.list)
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