add missing tests
[m6w6/ext-http] / php_http_misc.h
index a07f32fc83b835ccd6971088cc3837a9a8329a57..6c00cc50c98094c301863d0ca8dd9019a6722ac9 100644 (file)
@@ -6,12 +6,10 @@
     | modification, are permitted provided that the conditions mentioned |
     | in the accompanying LICENSE file are met.                          |
     +--------------------------------------------------------------------+
-    | Copyright (c) 2004-2010, Michael Wallner <mike@php.net>            |
+    | Copyright (c) 2004-2011, Michael Wallner <mike@php.net>            |
     +--------------------------------------------------------------------+
 */
 
-/* $Id: php_http_api.h 298891 2010-05-03 08:26:38Z mike $ */
-
 #ifndef PHP_HTTP_MISC_H
 #define PHP_HTTP_MISC_H
 
@@ -79,12 +77,12 @@ PHP_HTTP_API void php_http_sleep(double s);
 #define PHP_HTTP_MATCH_CASE            0x01
 #define PHP_HTTP_MATCH_WORD            0x10
 #define PHP_HTTP_MATCH_FULL            0x20
-#define PHP_HTTP_MATCH_STRICT  (PHP_HTTP_ENV_MATCH_CASE|PHP_HTTP_ENV_MATCH_FULL)
+#define PHP_HTTP_MATCH_STRICT  (PHP_HTTP_MATCH_CASE|PHP_HTTP_MATCH_FULL)
 
 extern int php_http_match(const char *haystack, const char *needle, int flags);
-
 extern char *php_http_pretty_key(char *key, size_t key_len, zend_bool uctitle, zend_bool xhyphen);
 extern size_t php_http_boundary(char *buf, size_t len TSRMLS_DC);
+extern int php_http_select_str(const char *cmp, int argc, ...);
 
 static inline const char *php_http_locate_str(const char *h, size_t h_len, const char *n, size_t n_len)
 {
@@ -141,7 +139,9 @@ static inline const char *php_http_locate_bin_eol(const char *bin, size_t len, i
 
        for (eol = bin; eol - bin < len; ++eol) {
                if (*eol == '\r' || *eol == '\n') {
-                       *eol_len = eol ? ((eol[0] == '\r' && eol[1] == '\n') ? 2 : 1) : 0;
+                       if (eol_len) {
+                               *eol_len = eol ? ((eol[0] == '\r' && eol[1] == '\n') ? 2 : 1) : 0;
+                       }
                        return eol;
                }
        }
@@ -272,6 +272,7 @@ static inline zval *php_http_zsep(zend_bool add_ref, int type, zval *z) {
 #define PHP_HTTP_ARGS(class, method)                                                           args_for_ ##class## _ ##method
 #define PHP_HTTP_ARG_VAL(name, pass_ref)                                                       ZEND_ARG_INFO(pass_ref, name)
 #define PHP_HTTP_ARG_OBJ(class, name, allow_null)                                      ZEND_ARG_OBJ_INFO(0, name, class, allow_null)
+#define PHP_HTTP_ARG_ARR(name, allow_null, pass_ref)                           ZEND_ARG_ARRAY_INFO(pass_ref, name, allow_null)
 
 #define EMPTY_FUNCTION_ENTRY {NULL, NULL, NULL, 0, 0}