diff --git a/glue-lwip/lwip-git.c b/glue-lwip/lwip-git.c index 603923226..9ff1c7521 100644 --- a/glue-lwip/lwip-git.c +++ b/glue-lwip/lwip-git.c @@ -287,8 +287,15 @@ static void netif_sta_status_callback (struct netif* netif) netif_set_default(netif); // If we have a valid address of any type restart SNTP - if (ip_addr_isany(&netif->ip_addr)) - { + bool valid_address = ip_2_ip4(&netif->ip_addr)->addr; + +#if LWIP_IPV6 + int addrindex; + for (addrindex = 0; addrindex < LWIP_IPV6_NUM_ADDRESSES; addrindex++) { + valid_address |= ip6_addr_isvalid(netif_ip6_addr_state(netif, addrindex)); + } +#endif + if (valid_address) { // restart sntp sntp_stop(); sntp_init();