branch off v1 as R_1_7
[m6w6/ext-http] / http_util_object.c
index fbc316033cab63c7be0b18783bb2e7c5f8f5928e..9d984e6e808eaeedaed829246596e307cb5216ac 100644 (file)
@@ -6,35 +6,39 @@
     | modification, are permitted provided that the conditions mentioned |
     | in the accompanying LICENSE file are met.                          |
     +--------------------------------------------------------------------+
-    | Copyright (c) 2004-2005, Michael Wallner <mike@php.net>            |
+    | Copyright (c) 2004-2010, Michael Wallner <mike@php.net>            |
     +--------------------------------------------------------------------+
 */
 
 /* $Id$ */
 
-
-#ifdef HAVE_CONFIG_H
-#      include "config.h"
-#endif
-
 #include "php_http.h"
 
 #ifdef ZEND_ENGINE_2
 
+#include "ext/standard/php_http.h"
+
 #include "php_http_util_object.h"
 
-#define HTTP_BEGIN_ARGS(method, req_args)              HTTP_BEGIN_ARGS_EX(HttpUtil, method, 0, req_args)
-#define HTTP_EMPTY_ARGS(method, ret_ref)               HTTP_EMPTY_ARGS_EX(HttpUtil, method, ret_ref)
+#define HTTP_BEGIN_ARGS(method, req_args)      HTTP_BEGIN_ARGS_EX(HttpUtil, method, 0, req_args)
+#define HTTP_EMPTY_ARGS(method)                                HTTP_EMPTY_ARGS_EX(HttpUtil, method, 0)
 
-#define HTTP_UTIL_ALIAS(method, func)                  HTTP_STATIC_ME_ALIAS(method, func, HTTP_ARGS(HttpUtil, method))
+#define HTTP_UTIL_ALIAS(method, func)          HTTP_STATIC_ME_ALIAS(method, func, HTTP_ARGS(HttpUtil, method))
 
 HTTP_BEGIN_ARGS(date, 0)
        HTTP_ARG_VAL(timestamp, 0)
 HTTP_END_ARGS;
 
+HTTP_BEGIN_ARGS(buildStr, 1)
+       HTTP_ARG_VAL(query, 0)
+       HTTP_ARG_VAL(prefix, 0)
+       HTTP_ARG_VAL(arg_sep, 0)
+HTTP_END_ARGS;
+
 HTTP_BEGIN_ARGS(buildUrl, 1)
        HTTP_ARG_VAL(url, 0)
        HTTP_ARG_VAL(parts, 0)
+       HTTP_ARG_VAL(flags, 0)
        HTTP_ARG_VAL(composed, 1)
 HTTP_END_ARGS;
 
@@ -81,10 +85,20 @@ HTTP_BEGIN_ARGS(parseCookie, 1)
        HTTP_ARG_VAL(cookie_string, 0)
 HTTP_END_ARGS;
 
+HTTP_BEGIN_ARGS(buildCookie, 1)
+       HTTP_ARG_VAL(cookie_array, 0)
+HTTP_END_ARGS;
+
+HTTP_BEGIN_ARGS(parseParams, 1)
+       HTTP_ARG_VAL(param_string, 0)
+       HTTP_ARG_VAL(flags, 0)
+HTTP_END_ARGS;
+
 HTTP_BEGIN_ARGS(chunkedDecode, 1)
        HTTP_ARG_VAL(encoded_string, 0)
 HTTP_END_ARGS;
 
+#ifdef HTTP_HAVE_ZLIB
 HTTP_BEGIN_ARGS(deflate, 1)
        HTTP_ARG_VAL(plain, 0)
        HTTP_ARG_VAL(flags, 0)
@@ -93,6 +107,7 @@ HTTP_END_ARGS;
 HTTP_BEGIN_ARGS(inflate, 1)
        HTTP_ARG_VAL(encoded, 0)
 HTTP_END_ARGS;
+#endif
 
 HTTP_BEGIN_ARGS(support, 0)
        HTTP_ARG_VAL(feature, 0)
@@ -102,6 +117,7 @@ zend_class_entry *http_util_object_ce;
 zend_function_entry http_util_object_fe[] = {
        HTTP_UTIL_ALIAS(date, http_date)
        HTTP_UTIL_ALIAS(buildUrl, http_build_url)
+       HTTP_UTIL_ALIAS(buildStr, http_build_str)
        HTTP_UTIL_ALIAS(negotiateLanguage, http_negotiate_language)
        HTTP_UTIL_ALIAS(negotiateCharset, http_negotiate_charset)
        HTTP_UTIL_ALIAS(negotiateContentType, http_negotiate_content_type)
@@ -111,6 +127,8 @@ zend_function_entry http_util_object_fe[] = {
        HTTP_UTIL_ALIAS(parseMessage, http_parse_message)
        HTTP_UTIL_ALIAS(parseHeaders, http_parse_headers)
        HTTP_UTIL_ALIAS(parseCookie, http_parse_cookie)
+       HTTP_UTIL_ALIAS(buildCookie, http_build_cookie)
+       HTTP_UTIL_ALIAS(parseParams, http_parse_params)
        HTTP_UTIL_ALIAS(chunkedDecode, http_chunked_decode)
 #ifdef HTTP_HAVE_ZLIB
        HTTP_UTIL_ALIAS(deflate, http_deflate)