bindaddr a common field on the machine-independent side

pull/1074/head
Rick V 4 years ago
parent db0920d921
commit 8e9842f4b2
No known key found for this signature in database
GPG Key ID: C0EDC8723FDC3465

@ -206,10 +206,9 @@ llarp_fd_promise_wait_for_value(struct llarp_fd_promise *promise);
struct llarp_tun_io struct llarp_tun_io
{ {
// TODO: more info? // TODO: more info?
char ifaddr[128]; char ifaddr[128];
#ifdef _WIN32 // windows only
uint32_t bindaddr; uint32_t dnsaddr;
#endif
int netmask; int netmask;
char ifname[IFNAMSIZ + 1]; char ifname[IFNAMSIZ + 1];

@ -58,7 +58,7 @@ win32_tun_io::setup()
llarp::LogWarn("failed to put interface up: ", ebuf); llarp::LogWarn("failed to put interface up: ", ebuf);
return false; return false;
} }
tunif->bindaddr = t->bindaddr; tunif->bindaddr = t->dnsaddr;
if(tuntap_set_ip(tunif, t->ifaddr, t->ifaddr, t->netmask) == -1) if(tuntap_set_ip(tunif, t->ifaddr, t->ifaddr, t->netmask) == -1)
{ {

@ -99,5 +99,6 @@ struct win32_tun_io
tuntap_destroy(tunif); tuntap_destroy(tunif);
} }
}; };
#endif
#endif #endif

@ -36,12 +36,8 @@ namespace llarp
: m_Router(r) : m_Router(r)
, m_Resolver(std::make_shared< dns::Proxy >( , m_Resolver(std::make_shared< dns::Proxy >(
r->netloop(), r->logic(), r->netloop(), r->logic(), this)) r->netloop(), r->logic(), r->netloop(), r->logic(), this))
, m_Name(name) , m_Name(name)
#ifdef _WIN32 , m_Tun{{0}, 0, 0, {0}, nullptr, nullptr, nullptr,
, m_Tun{{0}, 0, 0, {0}, nullptr, nullptr, nullptr,
#else
, m_Tun{{0}, 0, {0}, nullptr, nullptr, nullptr,
#endif
nullptr, nullptr, nullptr, nullptr, nullptr} nullptr, nullptr, nullptr, nullptr, nullptr}
, m_LocalResolverAddr("127.0.0.1", 53) , m_LocalResolverAddr("127.0.0.1", 53)
, m_InetToNetwork(name + "_exit_rx", r->netloop(), r->netloop()) , m_InetToNetwork(name + "_exit_rx", r->netloop(), r->netloop())

@ -217,10 +217,9 @@ namespace llarp
resolverAddr = v.substr(0, pos); resolverAddr = v.substr(0, pos);
dnsport = std::atoi(v.substr(pos + 1).c_str()); dnsport = std::atoi(v.substr(pos + 1).c_str());
} }
m_LocalResolverAddr = llarp::Addr(resolverAddr, dnsport); m_LocalResolverAddr = llarp::Addr(resolverAddr, dnsport);
#ifdef _WIN32 // this field is ignored on all other platforms
tunif->bindaddr = m_LocalResolverAddr.ton(); tunif->dnsaddr = m_LocalResolverAddr.ton();
#endif
llarp::LogInfo(Name(), " binding DNS server to ", m_LocalResolverAddr); llarp::LogInfo(Name(), " binding DNS server to ", m_LocalResolverAddr);
} }
if(k == "upstream-dns") if(k == "upstream-dns")

Loading…
Cancel
Save