tayga: Added 64:ff9b:1::/48 as well-known prefix for NAT64 (RFC 8215)
authorEike Ritter <git@rittere.co.uk>
Tue, 4 Aug 2020 21:12:12 +0000 (22:12 +0100)
committerEike Ritter <git@rittere.co.uk>
Tue, 4 Aug 2020 21:46:08 +0000 (22:46 +0100)
Signed-off-by: Eike Ritter <git@rittere.co.uk>
ipv6/tayga/patches/003-RFC8215.patch [new file with mode: 0644]

diff --git a/ipv6/tayga/patches/003-RFC8215.patch b/ipv6/tayga/patches/003-RFC8215.patch
new file mode 100644 (file)
index 0000000..3fbe612
--- /dev/null
@@ -0,0 +1,14 @@
+diff -Naur tayga-0.9.2.orig/addrmap.c tayga-0.9.2/addrmap.c
+--- tayga-0.9.2.orig/addrmap.c 2011-05-25 15:11:30.000000000 +0100
++++ tayga-0.9.2/addrmap.c      2020-07-04 16:24:23.397081572 +0100
+@@ -44,7 +44,9 @@
+ int validate_ip6_addr(const struct in6_addr *a)
+ {
+       /* Well-known prefix for NAT64 */
+-      if (a->s6_addr32[0] == WKPF && !a->s6_addr32[1] && !a->s6_addr32[2])
++        if (a->s6_addr32[0] == WKPF &&
++         (!a->s6_addr32[1] || (a->s6_addr16[2] == htonl(0x0001)))
++          && !a->s6_addr32[2])
+               return 0;
+       /* Reserved per RFC 2373 */