X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_info.c;h=7efd70ec7914426f697a3a7718984400e5f24253;hp=09964bb6e194d0c45484e14d2ae5ba552aa5ca52;hb=refs%2Fheads%2Fv2.2.x;hpb=14aec371d6123fbedbe13ca73b6a6d5768c635cb diff --git a/php_http_info.c b/php_http_info.c index 09964bb..7efd70e 100644 --- a/php_http_info.c +++ b/php_http_info.c @@ -6,13 +6,13 @@ | 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 | +--------------------------------------------------------------------+ */ #include "php_http_api.h" -PHP_HTTP_API php_http_info_t *php_http_info_init(php_http_info_t *i TSRMLS_DC) +php_http_info_t *php_http_info_init(php_http_info_t *i TSRMLS_DC) { if (!i) { i = emalloc(sizeof(*i)); @@ -23,16 +23,16 @@ PHP_HTTP_API php_http_info_t *php_http_info_init(php_http_info_t *i TSRMLS_DC) return i; } -PHP_HTTP_API void php_http_info_dtor(php_http_info_t *i) +void php_http_info_dtor(php_http_info_t *i) { switch (i->type) { case PHP_HTTP_REQUEST: - STR_SET(PHP_HTTP_INFO(i).request.method, NULL); - STR_SET(PHP_HTTP_INFO(i).request.url, NULL); + PTR_SET(PHP_HTTP_INFO(i).request.method, NULL); + PTR_SET(PHP_HTTP_INFO(i).request.url, NULL); break; case PHP_HTTP_RESPONSE: - STR_SET(PHP_HTTP_INFO(i).response.status, NULL); + PTR_SET(PHP_HTTP_INFO(i).response.status, NULL); break; default: @@ -40,7 +40,7 @@ PHP_HTTP_API void php_http_info_dtor(php_http_info_t *i) } } -PHP_HTTP_API void php_http_info_free(php_http_info_t **i) +void php_http_info_free(php_http_info_t **i) { if (*i) { php_http_info_dtor(*i); @@ -49,7 +49,7 @@ PHP_HTTP_API void php_http_info_free(php_http_info_t **i) } } -PHP_HTTP_API php_http_info_t *php_http_info_parse(php_http_info_t *info, const char *pre_header TSRMLS_DC) +php_http_info_t *php_http_info_parse(php_http_info_t *info, const char *pre_header TSRMLS_DC) { const char *end, *http; zend_bool free_info = !info; @@ -120,9 +120,9 @@ PHP_HTTP_API php_http_info_t *php_http_info_parse(php_http_info_t *info, const c while (' ' == *url) ++url; while (' ' == *(http-1)) --http; if (http > url) { - PHP_HTTP_INFO(info).request.url = estrndup(url, http - url); + PHP_HTTP_INFO(info).request.url = php_http_url_parse(url, http - url, ~0 TSRMLS_CC); } else { - STR_SET(PHP_HTTP_INFO(info).request.method, NULL); + PTR_SET(PHP_HTTP_INFO(info).request.method, NULL); return NULL; } } else {