X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_request_datashare.h;h=a6939ac968c9b66bb0fdfef7234298ae448786cb;hp=cdc4142182a73185b427e07bfce37a3c0d5ebe76;hb=0e89d506db19cab9581a7317e0494001941a8c70;hpb=df06e2dbf48a3b0d96f2c62071c1b5fc907a98d0 diff --git a/php_http_request_datashare.h b/php_http_request_datashare.h index cdc4142..a6939ac 100644 --- a/php_http_request_datashare.h +++ b/php_http_request_datashare.h @@ -1,8 +1,18 @@ +/* + +--------------------------------------------------------------------+ + | PECL :: http | + +--------------------------------------------------------------------+ + | Redistribution and use in source and binary forms, with or without | + | modification, are permitted provided that the conditions mentioned | + | in the accompanying LICENSE file are met. | + +--------------------------------------------------------------------+ + | Copyright (c) 2004-2011, Michael Wallner | + +--------------------------------------------------------------------+ +*/ + #ifndef PHP_HTTP_REQUEST_DATASHARE_H #define PHP_HTTP_REQUEST_DATASHARE_H -#include "php_http_request.h" - typedef enum php_http_request_datashare_setopt_opt { PHP_HTTP_REQUEST_DATASHARE_OPT_COOKIES, PHP_HTTP_REQUEST_DATASHARE_OPT_RESOLVER, @@ -19,6 +29,7 @@ typedef STATUS (*php_http_request_datashare_detach_func_t)(php_http_request_data typedef STATUS (*php_http_request_datashare_setopt_func_t)(php_http_request_datashare_t *h, php_http_request_datashare_setopt_opt_t opt, void *arg); typedef struct php_http_request_datashare_ops { + php_http_resource_factory_ops_t *rsrc; php_http_request_datashare_init_func_t init; php_http_request_datashare_copy_func_t copy; php_http_request_datashare_dtor_func_t dtor; @@ -28,33 +39,22 @@ typedef struct php_http_request_datashare_ops { php_http_request_datashare_setopt_func_t setopt; } php_http_request_datashare_ops_t; -#define PHP_HTTP_REQUEST_DATASHARE_REQUESTS(s) ((s)->persistent ? &PHP_HTTP_G->request_datashare.requests : (s)->requests) struct php_http_request_datashare { void *ctx; + php_http_resource_factory_t *rf; php_http_request_datashare_ops_t *ops; - zend_llist *requests; /* NULL if persistent, use PHP_HTTP_REQUEST_DATASHARE_REQUESTS */ - unsigned persistent:1; + zend_llist requests; #ifdef ZTS void ***ts; #endif }; -struct php_http_request_datashare_globals { - zend_llist requests; - zend_bool cookie; - zend_bool dns; - zend_bool ssl; - zend_bool connect; -}; - -extern php_http_request_datashare_t *php_http_request_datashare_global_get(const char *driver_str, size_t driver_len TSRMLS_DC); - extern PHP_MINIT_FUNCTION(http_request_datashare); extern PHP_MSHUTDOWN_FUNCTION(http_request_datashare); extern PHP_RINIT_FUNCTION(http_request_datashare); extern PHP_RSHUTDOWN_FUNCTION(http_request_datashare); -PHP_HTTP_API php_http_request_datashare_t *php_http_request_datashare_init(php_http_request_datashare_t *h, php_http_request_datashare_ops_t *ops, void *init_arg, zend_bool persistent TSRMLS_DC); +PHP_HTTP_API php_http_request_datashare_t *php_http_request_datashare_init(php_http_request_datashare_t *h, php_http_request_datashare_ops_t *ops, php_http_resource_factory_t *rf, void *init_arg TSRMLS_DC); PHP_HTTP_API php_http_request_datashare_t *php_http_request_datashare_copy(php_http_request_datashare_t *from, php_http_request_datashare_t *to); PHP_HTTP_API void php_http_request_datashare_dtor(php_http_request_datashare_t *h); PHP_HTTP_API void php_http_request_datashare_free(php_http_request_datashare_t **h); @@ -83,3 +83,13 @@ PHP_METHOD(HttpRequestDataShare, detach); PHP_METHOD(HttpRequestDataShare, reset); #endif /* PHP_HTTP_REQUEST_DATASHARE_H */ + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * End: + * vim600: noet sw=4 ts=4 fdm=marker + * vim<600: noet sw=4 ts=4 + */ +