From 137953605e309e4611940818373c21b3913d4592 Mon Sep 17 00:00:00 2001 From: idelamer Date: Fri, 17 Jun 2011 11:04:47 +0000 Subject: [PATCH] Allow IPv6 addresses with arbitrary prefix. --- src/core/ipv6/ip6.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/core/ipv6/ip6.c b/src/core/ipv6/ip6.c index 79cbc870..ab17bbb9 100644 --- a/src/core/ipv6/ip6.c +++ b/src/core/ipv6/ip6.c @@ -216,6 +216,14 @@ ip6_select_source_address(struct netif *netif, ip6_addr_t * dest) } } + /* Last resort: see if arbitrary prefix matches. */ + for (i = 0; i < LWIP_IPV6_NUM_ADDRESSES; i++) { + if (ip6_addr_isvalid(netif_ip6_addr_state(netif, i)) && + ip6_addr_netcmp(dest, netif_ip6_addr(netif, i))) { + return netif_ip6_addr(netif, i); + } + } + return NULL; }