- need php_stream_open_wrapper_*ex* to pass a stream context
[m6w6/ext-http] / php_http_message_api.h
index cf942567d371411cabcb44aef8781ae4611ccdd1..52149f01adb9545a1665ea7646073d3427ff2cfc 100644 (file)
@@ -62,6 +62,12 @@ static inline zval *_http_message_header_ex(http_message *msg, char *key_str, si
        return NULL;
 }
 
+#define http_message_count(c, m) \
+{ \
+       http_message *__tmp_msg = (m); \
+       for (c = 0; __tmp_msg; __tmp_msg = __tmp_msg->parent, ++(c)); \
+}
+
 #define http_message_parse(m, l) http_message_parse_ex(NULL, (m), (l))
 #define http_message_parse_ex(h, m, l) _http_message_parse_ex((h), (m), (l) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC TSRMLS_CC)
 #define http_message_parse_rel(h, m, l) _http_message_parse_ex((h), (m), (l) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC TSRMLS_CC)
@@ -73,6 +79,12 @@ PHP_HTTP_API void _http_message_tostring(http_message *msg, char **string, size_
 #define http_message_serialize(m, s, l) _http_message_serialize((m), (s), (l))
 PHP_HTTP_API void _http_message_serialize(http_message *message, char **string, size_t *length);
 
+#define http_message_reverse(m) _http_message_reverse(m)
+PHP_HTTP_API http_message *_http_message_reverse(http_message *msg);
+
+#define http_message_interconnect(m1, m2) _http_message_interconnect((m1), (m2))
+PHP_HTTP_API http_message *_http_message_interconnect(http_message *m1, http_message *m2);
+
 #define http_message_tostruct_recursive(m, s) _http_message_tostruct_recursive((m), (s) TSRMLS_CC)
 PHP_HTTP_API void _http_message_tostruct_recursive(http_message *msg, zval *strct TSRMLS_DC);