зеркало из https://github.com/github/ruby.git
* ext/socket/socket.c (socket_s_ip_address_list): fix wrongly filled
sin6_scope_id on KAME introduced by r40593 for OpenIndiana. KAME uses fe80:<scope_id>::<interface id> for link-local address internally. Setting sin6_scope_id causes it leaked. see also comments of sockaddr_obj(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
4264240759
Коммит
bbcf97fad6
|
@ -1,3 +1,12 @@
|
||||||
|
Wed May 8 06:42:56 2013 NARUSE, Yui <naruse@ruby-lang.org>
|
||||||
|
|
||||||
|
* ext/socket/socket.c (socket_s_ip_address_list): fix wrongly filled
|
||||||
|
sin6_scope_id on KAME introduced by r40593 for OpenIndiana.
|
||||||
|
KAME uses fe80:<scope_id>::<interface id> for link-local address
|
||||||
|
internally.
|
||||||
|
Setting sin6_scope_id causes it leaked.
|
||||||
|
see also comments of sockaddr_obj().
|
||||||
|
|
||||||
Tue May 7 22:12:34 2013 Tanaka Akira <akr@fsij.org>
|
Tue May 7 22:12:34 2013 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
* ext/readline/readline.c (insert_ignore_escape): Add a cast to
|
* ext/readline/readline.c (insert_ignore_escape): Add a cast to
|
||||||
|
|
|
@ -1658,7 +1658,7 @@ socket_s_ip_address_list(VALUE self)
|
||||||
for (p = ifp; p; p = p->ifa_next) {
|
for (p = ifp; p; p = p->ifa_next) {
|
||||||
if (p->ifa_addr != NULL && IS_IP_FAMILY(p->ifa_addr->sa_family)) {
|
if (p->ifa_addr != NULL && IS_IP_FAMILY(p->ifa_addr->sa_family)) {
|
||||||
struct sockaddr *addr = p->ifa_addr;
|
struct sockaddr *addr = p->ifa_addr;
|
||||||
#if defined(AF_INET6)
|
#if defined(AF_INET6) && defined(__sun)
|
||||||
/*
|
/*
|
||||||
* OpenIndiana SunOS 5.11 getifaddrs() returns IPv6 link local
|
* OpenIndiana SunOS 5.11 getifaddrs() returns IPv6 link local
|
||||||
* address with sin6_scope_id == 0.
|
* address with sin6_scope_id == 0.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче