diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/socket/ipsocket.c | 4 |
2 files changed, 9 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Wed Jul 22 17:41:08 2009 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/socket/ipsocket.c (init_inetsock_internal): drop IPv6 addresses + if INET6 is not defined. + Wed Jul 22 17:29:59 2009 NAKAMURA Usaku <usa@ruby-lang.org> * ext/socket/extconf.rb: enable ipv6 support for win32. diff --git a/ext/socket/ipsocket.c b/ext/socket/ipsocket.c index 78c85766ee..35025803a9 100644 --- a/ext/socket/ipsocket.c +++ b/ext/socket/ipsocket.c @@ -58,6 +58,10 @@ init_inetsock_internal(struct inetsock_arg *arg) arg->fd = fd = -1; for (res = arg->remote.res; res; res = res->ai_next) { +#if !defined(INET6) && defined(AF_INET6) + if (res->ai_family == AF_INET6) + continue; +#endif status = rsock_socket(res->ai_family,res->ai_socktype,res->ai_protocol); syscall = "socket(2)"; fd = status; |