--- a/src/ipv6nd.c +++ a/src/ipv6nd.c @@ -491,9 +491,12 @@ ipv6nd_advertise(struct ipv6_addr *ia) /* Make the packet. */ ifp = iaf->iface; + loginfox("MAKING NA FOR %s", ifp->name); iaf->na_len = sizeof(*na); + loginfox("NA LEN %zu (%zu)", iaf->na_len, ifp->hwlen); if (ifp->hwlen != 0) iaf->na_len += (size_t)ROUNDUP8(ifp->hwlen + 2); + loginfox("NA LEN FINAL %zu", iaf->na_len); na = calloc(1, iaf->na_len); if (na == NULL) { logerr(__func__);