File tree Expand file tree Collapse file tree 2 files changed +12
-0
lines changed Expand file tree Collapse file tree 2 files changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -227,7 +227,13 @@ void LWIP::Interface::netif_status_irq(struct netif *netif)
227227
228228 if (interface->has_addr_state & HAS_ANY_ADDR) {
229229 interface->connected = NSAPI_STATUS_GLOBAL_UP;
230+ #if LWIP_IPV6
231+ if (ip_addr_islinklocal (get_ipv6_addr (netif))) {
232+ interface->connected = NSAPI_STATUS_LOCAL_UP;
233+ }
234+ #endif
230235 }
236+
231237 } else if (!netif_is_up (&interface->netif ) && netif_is_link_up (&interface->netif )) {
232238 interface->connected = NSAPI_STATUS_DISCONNECTED;
233239 }
Original file line number Diff line number Diff line change @@ -92,6 +92,12 @@ const ip_addr_t *LWIP::get_ipv6_addr(const struct netif *netif)
9292 return netif_ip_addr6 (netif, i);
9393 }
9494 }
95+
96+ for (int i = 0 ; i < LWIP_IPV6_NUM_ADDRESSES; i++) {
97+ if (ip6_addr_isvalid (netif_ip6_addr_state (netif, i))) {
98+ return netif_ip_addr6 (netif, i);
99+ }
100+ }
95101#endif
96102 return NULL ;
97103}
You can’t perform that action at this time.
0 commit comments