summaryrefslogtreecommitdiff
path: root/sys/src
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2019-02-13 08:46:49 +0100
committercinap_lenrek <cinap_lenrek@felloff.net>2019-02-13 08:46:49 +0100
commit57ed5cc3f033446311b32181e72128326d80b9ef (patch)
tree8094f4561be4221c889eb4d666c750ffa6078fdc /sys/src
parentcf5095143f01423a8bef7a5ed347dc58bde20857 (diff)
devip: ipv6 loopback ::1 has link-local scope
Diffstat (limited to 'sys/src')
-rw-r--r--sys/src/9/ip/ipifc.c2
-rw-r--r--sys/src/9/ip/ipv6.h1
2 files changed, 1 insertions, 2 deletions
diff --git a/sys/src/9/ip/ipifc.c b/sys/src/9/ip/ipifc.c
index 65c56df10..a35848d75 100644
--- a/sys/src/9/ip/ipifc.c
+++ b/sys/src/9/ip/ipifc.c
@@ -77,7 +77,7 @@ v6addrtype(uchar *addr)
{
if(isv4(addr) || ipcmp(addr, IPnoaddr) == 0)
return unknownv6;
- else if(islinklocal(addr) ||
+ else if(islinklocal(addr) || ipcmp(addr, v6loopback) == 0 ||
isv6mcast(addr) && (addr[1] & 0xF) <= Link_local_scop)
return linklocalv6;
else
diff --git a/sys/src/9/ip/ipv6.h b/sys/src/9/ip/ipv6.h
index f7a408216..6d9537d58 100644
--- a/sys/src/9/ip/ipv6.h
+++ b/sys/src/9/ip/ipv6.h
@@ -166,7 +166,6 @@ extern uchar v6solicitednode[IPaddrlen];
extern uchar v6solicitednodemask[IPaddrlen];
extern uchar v6Unspecified[IPaddrlen];
extern uchar v6loopback[IPaddrlen];
-extern uchar v6loopbackmask[IPaddrlen];
extern uchar v6linklocal[IPaddrlen];
extern uchar v6linklocalmask[IPaddrlen];
extern uchar v6multicast[IPaddrlen];