only get public addresses

pull/7/head
Jeff Becker 6 years ago
parent 536f63ed2a
commit 4dd7b2843f

@ -61,6 +61,9 @@ llarp_getifaddr(const char* ifname, int af, struct sockaddr* addr)
// llarp::LogInfo(__FILE__, "scanning ", i->ifa_name, " af: ", // llarp::LogInfo(__FILE__, "scanning ", i->ifa_name, " af: ",
// std::to_string(i->ifa_addr->sa_family)); // std::to_string(i->ifa_addr->sa_family));
if(llarp::StrEq(i->ifa_name, ifname) && i->ifa_addr->sa_family == af) if(llarp::StrEq(i->ifa_name, ifname) && i->ifa_addr->sa_family == af)
{
llarp::Addr a(*i->ifa_addr);
if(!a.isPrivate())
{ {
// llarp::LogInfo(__FILE__, "found ", ifname, " af: ", af); // llarp::LogInfo(__FILE__, "found ", ifname, " af: ", af);
memcpy(addr, i->ifa_addr, sl); memcpy(addr, i->ifa_addr, sl);
@ -75,6 +78,7 @@ llarp_getifaddr(const char* ifname, int af, struct sockaddr* addr)
break; break;
} }
} }
}
i = i->ifa_next; i = i->ifa_next;
} }
if(ifa) if(ifa)

Loading…
Cancel
Save