diff --git a/package/gluon-radvd/src/gluon-radvd.c b/package/gluon-radvd/src/gluon-radvd.c index 801d98542d5eed60f3b173de5e991793a60b64a4..bd57eabcf9468dd0e8311e13a94f385d89b01942 100644 --- a/package/gluon-radvd/src/gluon-radvd.c +++ b/package/gluon-radvd/src/gluon-radvd.c @@ -266,7 +266,7 @@ static void update_interface(void) { memset(&G.iface.ifaddr, 0, sizeof(G.iface.ifaddr)); for (addr = addrs; addr; addr = addr->ifa_next) { - if (addr->ifa_addr->sa_family != AF_INET6) + if (!addr->ifa_addr || addr->ifa_addr->sa_family != AF_INET6) continue; const struct sockaddr_in6 *in6 = (const struct sockaddr_in6 *)addr->ifa_addr;