On Wed, May 18, 2022 at 02:48:09PM +0200, Beniamino Galvani wrote: > --- a/src/netlink.c > +++ b/src/netlink.c > @@ -258,7 +258,9 @@ int iface_enumerate(int family, void *parm, int > (*callback)()) > > while (RTA_OK(rta, len1)) > { > - if (rta->rta_type == IFA_ADDRESS) > + if (rta->rta_type == IFA_LOCAL) > + addrp = ((struct in6_addr *)(rta+1)); > + else if (rta->rta_type == IFA_ADDRESS && !addrp) > addrp = ((struct in6_addr *)(rta+1)); > else if (rta->rta_type == IFA_CACHEINFO) > {
There new lines and one old line > + if (rta->rta_type == IFA_LOCAL) > + addrp = ((struct in6_addr *)(rta+1)); > + else if (rta->rta_type == IFA_ADDRESS && !addrp) > addrp = ((struct in6_addr *)(rta+1)); rewritten as I see them + if (conditionLOCAL) + addrp = value + else if (conditionADDRESS && !addrp) addrp = value It is the "&& !addrp" that makes me feel uncomfortable. Would + if (conditionLOCAL) + addrp = value + else if (conditionADDRESS) addrp = value do? Groeten Geert Stappers P.S. @Beniamino welcome to dnsmasq do know that I'm more sysadmin then C-programmer -- Silence is hard to parse _______________________________________________ Dnsmasq-discuss mailing list Dnsmasq-discuss@lists.thekelleys.org.uk https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss