X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_headers_api.c;h=52f2bb8e15cd51a19cd55059d26509c4373f8fc9;hp=8a4ecc5591f8d9a9ee8c2b4e918a755c56facd4d;hb=91c98198094e89bd2a0d0648b60dd2c361d3054b;hpb=df3c115036f68f27e0c89efeab016c51de008037 diff --git a/http_headers_api.c b/http_headers_api.c index 8a4ecc5..52f2bb8 100644 --- a/http_headers_api.c +++ b/http_headers_api.c @@ -37,6 +37,18 @@ ZEND_EXTERN_MODULE_GLOBALS(http); # define HTTP_DBG_NEG 0 #endif +/* {{{ */ +PHP_MINIT_FUNCTION(http_headers) +{ + HTTP_LONG_CONSTANT("HTTP_REDIRECT", HTTP_REDIRECT); + HTTP_LONG_CONSTANT("HTTP_REDIRECT_PERM", HTTP_REDIRECT_PERM); + HTTP_LONG_CONSTANT("HTTP_REDIRECT_POST", HTTP_REDIRECT_POST); + HTTP_LONG_CONSTANT("HTTP_REDIRECT_TEMP", HTTP_REDIRECT_TEMP); + + return SUCCESS; +} +/* }}} */ + /* {{{ static int http_sort_q(const void *, const void *) */ static int http_sort_q(const void *a, const void *b TSRMLS_DC) { @@ -81,7 +93,7 @@ char *_http_negotiate_language_func(const char *test, double *quality, HashTable if ( (!strncasecmp(Z_STRVAL_PP(value), test, len)) && ( (Z_STRVAL_PP(value)[len] == '\0') || (Z_STRVAL_PP(value)[len] == '-'))) { - *quality /= 2; + *quality *= .9; return Z_STRVAL_PP(value); } } @@ -91,8 +103,8 @@ char *_http_negotiate_language_func(const char *test, double *quality, HashTable } /* }}} */ -/* {{{ char *http_negotiate_charset_func */ -char *_http_negotiate_charset_func(const char *test, double *quality, HashTable *supported TSRMLS_DC) +/* {{{ char *http_negotiate_default_func */ +char *_http_negotiate_default_func(const char *test, double *quality, HashTable *supported TSRMLS_DC) { zval **value; @@ -154,7 +166,7 @@ PHP_HTTP_API HashTable *_http_negotiate_q(const char *header, HashTable *support while (*++ptr && !isdigit(*ptr)); - quality = strtod(ptr, NULL); + quality = atof(ptr); identifier = estrndup(Z_STRVAL_PP(entry), separator - Z_STRVAL_PP(entry)); } else { quality = 1000.0 - i++;