From 0b6fba9a6bb0e3a70debfe3520fe0edf8108fbca Mon Sep 17 00:00:00 2001 From: Ilia Alshanetsky Date: Mon, 4 May 2009 13:12:53 +0000 Subject: [PATCH] MFB: Fixed bug #48131 (Don't try to bind ipv4 addresses to ipv6 ips via bindto) --- main/network.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/main/network.c b/main/network.c index 13060f603e..873b464edd 100644 --- a/main/network.c +++ b/main/network.c @@ -792,9 +792,14 @@ php_socket_t php_network_connect_socket_to_host(const char *host, unsigned short switch (sa->sa_family) { #if HAVE_GETADDRINFO && HAVE_IPV6 case AF_INET6: - ((struct sockaddr_in6 *)sa)->sin6_family = sa->sa_family; - ((struct sockaddr_in6 *)sa)->sin6_port = htons(port); - socklen = sizeof(struct sockaddr_in6); + if (strstr(bindto, ':')) { + ((struct sockaddr_in6 *)sa)->sin6_family = sa->sa_family; + ((struct sockaddr_in6 *)sa)->sin6_port = htons(port); + socklen = sizeof(struct sockaddr_in6); + } else { + socklen = 0; + sa = NULL; + } break; #endif case AF_INET: -- 2.40.0