diff options
author | Remi Collet <remi@php.net> | 2014-11-20 10:18:12 +0100 |
---|---|---|
committer | Remi Collet <remi@php.net> | 2014-11-20 10:18:12 +0100 |
commit | 6bb201e46e900957c0ff87e9f3d14bdac14c076c (patch) | |
tree | ac7dac9dedb6166a2e521e8397ed58a827b9649c | |
parent | dec0db79c3fc0c284cef9a04801b3d4d068522b2 (diff) | |
parent | 9fd54bd9d8f20f4d56c3d8e0209c6c34fb3bfc98 (diff) | |
download | php-git-6bb201e46e900957c0ff87e9f3d14bdac14c076c.tar.gz |
Merge branch 'PHP-5.6'
* PHP-5.6:
Raise a warning when listen = hostname used and is resolved as multiple addresses
NEWS
Fixed #68458 Change pm.start_servers default warning to notice
fix test description
tests for #895
move zlog_set_level() again
Change pm.start_servers default warning to notice
-rw-r--r-- | sapi/fpm/fpm/fpm_sockets.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/sapi/fpm/fpm/fpm_sockets.c b/sapi/fpm/fpm/fpm_sockets.c index 9d9def35c7..0286f0eee8 100644 --- a/sapi/fpm/fpm/fpm_sockets.c +++ b/sapi/fpm/fpm/fpm_sockets.c @@ -255,6 +255,7 @@ static int fpm_socket_af_inet_listening_socket(struct fpm_worker_pool_s *wp) /* char *dup_address = strdup(wp->config->listen_address); char *port_str = strrchr(dup_address, ':'); char *addr = NULL; + char tmpbuf[INET6_ADDRSTRLEN]; int addr_len; int port = 0; int sock = -1; @@ -302,14 +303,18 @@ static int fpm_socket_af_inet_listening_socket(struct fpm_worker_pool_s *wp) /* return -1; } - free(dup_address); - for (p = servinfo; p != NULL; p = p->ai_next) { - if ((sock = fpm_sockets_get_listening_socket(wp, p->ai_addr, p->ai_addrlen)) != -1) { - break; + inet_ntop(p->ai_family, fpm_get_in_addr(p->ai_addr), tmpbuf, INET6_ADDRSTRLEN); + if (sock < 0) { + if ((sock = fpm_sockets_get_listening_socket(wp, p->ai_addr, p->ai_addrlen)) != -1) { + zlog(ZLOG_DEBUG, "Found address for %s, socket opened on %s", dup_address, tmpbuf); + } + } else { + zlog(ZLOG_WARNING, "Found multiple addresses for %s, %s ignored", dup_address, tmpbuf); } } + free(dup_address); freeaddrinfo(servinfo); return sock; |