From: Remi Collet Date: Fri, 14 Nov 2014 18:10:43 +0000 (+0100) Subject: Merge branch 'PHP-5.6' X-Git-Tag: POST_NATIVE_TLS_MERGE^2~46^2~29 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=13401c8098fbb02390dbdf8d9393f937eaefd6ed;p=php Merge branch 'PHP-5.6' * PHP-5.6: Fix bug #68421 access.format='%R' doesn't log ipv6 address --- 13401c8098fbb02390dbdf8d9393f937eaefd6ed diff --cc sapi/fpm/fpm/fastcgi.c index 4f7f5eab9c,86fca17c5f..a6103d2f0f --- a/sapi/fpm/fpm/fastcgi.c +++ b/sapi/fpm/fpm/fastcgi.c @@@ -1063,18 -1080,25 +1064,20 @@@ char* fcgi_putenv(fcgi_request *req, ch void fcgi_set_mgmt_var(const char * name, size_t name_len, const char * value, size_t value_len) { - zval * zvalue; - zvalue = pemalloc(sizeof(*zvalue), 1); - Z_TYPE_P(zvalue) = IS_STRING; - Z_STRVAL_P(zvalue) = pestrndup(value, value_len, 1); - Z_STRLEN_P(zvalue) = value_len; - zend_hash_add(&fcgi_mgmt_vars, name, name_len + 1, &zvalue, sizeof(zvalue), NULL); + zval zvalue; + ZVAL_NEW_STR(&zvalue, zend_string_init(value, value_len, 1)); + zend_hash_str_add(&fcgi_mgmt_vars, name, name_len, &zvalue); } -void fcgi_free_mgmt_var_cb(void * ptr) +void fcgi_free_mgmt_var_cb(zval *zv) { - zval ** var = (zval **)ptr; - pefree(Z_STRVAL_PP(var), 1); - pefree(*var, 1); + zend_string_free(Z_STR_P(zv)); } - char *fcgi_get_last_client_ip() /* {{{ */ + const char *fcgi_get_last_client_ip() /* {{{ */ { + static char str[INET6_ADDRSTRLEN]; + if (client_sa.sa.sa_family == AF_UNIX) { return NULL; } diff --cc sapi/fpm/fpm/fastcgi.h index 6d1bb38dba,f5cfe9f66a..9c96f763a9 --- a/sapi/fpm/fpm/fastcgi.h +++ b/sapi/fpm/fpm/fastcgi.h @@@ -131,9 -131,9 +131,9 @@@ ssize_t fcgi_write(fcgi_request *req, f int fcgi_flush(fcgi_request *req, int close); void fcgi_set_mgmt_var(const char * name, size_t name_len, const char * value, size_t value_len); -void fcgi_free_mgmt_var_cb(void * ptr); +void fcgi_free_mgmt_var_cb(zval *ptr); - char *fcgi_get_last_client_ip(); + const char *fcgi_get_last_client_ip(); /* * Local variables: