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 @@ -228,7 +228,13 @@ void LWIP::Interface::netif_status_irq(struct netif *netif)
228
228
229
229
if (interface->has_addr_state & HAS_ANY_ADDR) {
230
230
interface->connected = NSAPI_STATUS_GLOBAL_UP;
231
+ #if LWIP_IPV6
232
+ if (ip_addr_islinklocal (get_ipv6_addr (netif))) {
233
+ interface->connected = NSAPI_STATUS_LOCAL_UP;
234
+ }
235
+ #endif
231
236
}
237
+
232
238
} else if (!netif_is_up (&interface->netif ) && netif_is_link_up (&interface->netif )) {
233
239
interface->connected = NSAPI_STATUS_DISCONNECTED;
234
240
}
Original file line number Diff line number Diff line change @@ -109,6 +109,12 @@ const ip_addr_t *LWIP::get_ipv6_addr(const struct netif *netif)
109
109
return netif_ip_addr6 (netif, i);
110
110
}
111
111
}
112
+
113
+ for (int i = 0 ; i < LWIP_IPV6_NUM_ADDRESSES; i++) {
114
+ if (ip6_addr_isvalid (netif_ip6_addr_state (netif, i))) {
115
+ return netif_ip_addr6 (netif, i);
116
+ }
117
+ }
112
118
#endif
113
119
return NULL ;
114
120
}
You can’t perform that action at this time.
0 commit comments