From e30701fa1e021dc9d2c16be684d3df61acd04d5b Mon Sep 17 00:00:00 2001 From: Jiacheng Guo Date: Wed, 2 Dec 2020 16:34:37 +0800 Subject: [PATCH] Add all Thread ULA addresses to the lwip interface ULA prefixes will used for CHIP network so we need to add all these addresses to the interface. --- ...GenericThreadStackManagerImpl_OpenThread_LwIP.cpp | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/src/platform/OpenThread/GenericThreadStackManagerImpl_OpenThread_LwIP.cpp b/src/platform/OpenThread/GenericThreadStackManagerImpl_OpenThread_LwIP.cpp index 646fb39038dbe1..68236eb64126a8 100644 --- a/src/platform/OpenThread/GenericThreadStackManagerImpl_OpenThread_LwIP.cpp +++ b/src/platform/OpenThread/GenericThreadStackManagerImpl_OpenThread_LwIP.cpp @@ -178,17 +178,7 @@ void GenericThreadStackManagerImpl_OpenThread_LwIP::UpdateThreadInter // - link-local addresses. // - mesh-local addresses that are NOT RLOC addresses. // - global unicast addresses. - // - // This logic purposefully leaves out CHIP fabric ULAs, as well as other non-fabric ULAs that the - // Thread stack assigns due to Thread SLAAC. - // - // Assignments of CHIP fabric ULAs to the netif address table are handled separately by the WARM module. - // - // Non-fabric ULAs are ignored entirely as they are presumed to not be of interest to CHIP-enabled - // devices, and would otherwise consume slots in the LwIP address table, potentially leading to - // starvation. - if (otAddr->mValid && !otAddr->mRloc && - (!addr.IsIPv6ULA() || IsOpenThreadMeshLocalAddress(Impl()->OTInstance(), addr))) + if (otAddr->mValid && !otAddr->mRloc) { ip_addr_t lwipAddr = addr.ToLwIPAddr(); s8_t addrIdx;