X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_message.c;h=d6a7f755c76b73e0b6a6719f5ac1d42b80d222b1;hp=ad08d7fc38fe72e2a60a2ef7267f6bf51850f23e;hb=aacbe6aa75ca07853bf88d5b3647f67f107d1af7;hpb=88770c6b3fb365da405b4aede6def9ce88dbca7c diff --git a/php_http_message.c b/php_http_message.c index ad08d7f..d6a7f75 100644 --- a/php_http_message.c +++ b/php_http_message.c @@ -6,17 +6,11 @@ | modification, are permitted provided that the conditions mentioned | | in the accompanying LICENSE file are met. | +--------------------------------------------------------------------+ - | Copyright (c) 2004-2010, Michael Wallner | + | Copyright (c) 2004-2011, Michael Wallner | +--------------------------------------------------------------------+ */ -/* $Id: http_message_api.c 298689 2010-04-28 06:50:06Z mike $ */ - -#include "php_http.h" - -#include
-#include -#include +#include "php_http_api.h" PHP_HTTP_API zend_bool php_http_message_info_callback(php_http_message_t **message, HashTable **headers, php_http_info_t *info TSRMLS_DC) { @@ -149,7 +143,7 @@ PHP_HTTP_API zval *php_http_message_header(php_http_message_t *msg, char *key_st zval *ret = NULL, **header; char *key = php_http_pretty_key(estrndup(key_str, key_len), key_len, 1, 1); - if (SUCCESS == zend_hash_find(&msg->hdrs, key, key_len + 1, (void *) &header)) { + if (SUCCESS == zend_symtable_find(&msg->hdrs, key, key_len + 1, (void *) &header)) { if (join && Z_TYPE_PP(header) == IS_ARRAY) { zval *header_str, **val; HashPosition pos; @@ -382,8 +376,9 @@ PHP_HTTP_API php_http_message_t *php_http_message_reverse(php_http_message_t *ms php_http_message_count(c, msg); if (c > 1) { - php_http_message_t *tmp = msg, **arr = ecalloc(c, sizeof(**arr)); - + php_http_message_t *tmp = msg, **arr; + + arr = ecalloc(c, sizeof(**arr)); for (i = 0; i < c; ++i) { arr[i] = tmp; tmp = tmp->parent; @@ -709,20 +704,12 @@ PHP_HTTP_BEGIN_ARGS(setHttpVersion, 1) PHP_HTTP_ARG_VAL(http_version, 0) PHP_HTTP_END_ARGS; -PHP_HTTP_BEGIN_ARGS(guessContentType, 1) - PHP_HTTP_ARG_VAL(magic_file, 0) - PHP_HTTP_ARG_VAL(magic_mode, 0) -PHP_HTTP_END_ARGS; - PHP_HTTP_EMPTY_ARGS(getParentMessage); -PHP_HTTP_EMPTY_ARGS(send); PHP_HTTP_EMPTY_ARGS(__toString); PHP_HTTP_BEGIN_ARGS(toString, 0) PHP_HTTP_ARG_VAL(include_parent, 0) PHP_HTTP_END_ARGS; -PHP_HTTP_EMPTY_ARGS(toMessageTypeObject); - PHP_HTTP_EMPTY_ARGS(count); PHP_HTTP_EMPTY_ARGS(serialize); @@ -811,9 +798,11 @@ static STATUS php_http_message_object_add_prophandler(const char *prop_str, size php_http_message_object_prophandler_t h = { read, write }; return zend_hash_add(&php_http_message_object_prophandlers, prop_str, prop_len + 1, (void *) &h, sizeof(h), NULL); } +/* static int php_http_message_object_has_prophandler(const char *prop_str, size_t prop_len) { return zend_hash_exists(&php_http_message_object_prophandlers, prop_str, prop_len + 1); } +*/ static STATUS php_http_message_object_get_prophandler(const char *prop_str, size_t prop_len, php_http_message_object_prophandler_t **handler) { return zend_hash_find(&php_http_message_object_prophandlers, prop_str, prop_len + 1, (void *) handler); } @@ -948,7 +937,7 @@ PHP_MINIT_FUNCTION(http_message) php_http_message_object_handlers.get_properties = php_http_message_object_get_props; php_http_message_object_handlers.get_property_ptr_ptr = php_http_message_object_get_prop_ptr; - zend_class_implements(php_http_message_class_entry TSRMLS_CC, 3, spl_ce_Countable, zend_ce_serializable, zend_ce_iterator, php_http_fluently_callable_class_entry); + zend_class_implements(php_http_message_class_entry TSRMLS_CC, 3, spl_ce_Countable, zend_ce_serializable, zend_ce_iterator); zend_hash_init(&php_http_message_object_prophandlers, 9, NULL, NULL, 1); zend_declare_property_long(php_http_message_class_entry, ZEND_STRL("type"), PHP_HTTP_NONE, ZEND_ACC_PROTECTED TSRMLS_CC); @@ -1397,10 +1386,10 @@ PHP_METHOD(HttpMessage, setHeader) } if (!zvalue) { - zend_hash_del(&obj->message->hdrs, name, name_len + 1); + zend_symtable_del(&obj->message->hdrs, name, name_len + 1); } else { Z_ADDREF_P(zvalue); - zend_hash_update(&obj->message->hdrs, name, name_len + 1, &zvalue, sizeof(void *), NULL); + zend_symtable_update(&obj->message->hdrs, name, name_len + 1, &zvalue, sizeof(void *), NULL); } efree(name); } @@ -1446,7 +1435,7 @@ PHP_METHOD(HttpMessage, addHeader) convert_to_array(header); zend_hash_next_index_insert(Z_ARRVAL_P(header), &zvalue, sizeof(void *), NULL); } else { - zend_hash_update(&obj->message->hdrs, name, name_len + 1, &zvalue, sizeof(void *), NULL); + zend_symtable_update(&obj->message->hdrs, name, name_len + 1, &zvalue, sizeof(void *), NULL); } efree(name); }