implement localhost.loki on tun

pull/414/head
Jeff Becker 5 years ago
parent 9d649b7b14
commit 28474155b9
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

@ -73,8 +73,11 @@ namespace llarp
|| msg.questions[0].qtype == dns::qTypeCNAME)
{
// hook for forward dns or cname when using snode tld
return msg.questions[0].qname.find(".snode.")
== (msg.questions[0].qname.size() - 7);
if(msg.questions[0].qname.find(".snode.")
== (msg.questions[0].qname.size() - 7))
return true;
return msg.questions[0].qname == "localhost.loki"
|| msg.questions[0].qname == "localhost.loki.";
}
else
return false;
@ -118,11 +121,24 @@ namespace llarp
else
msg.AddNXReply();
}
else if(msg.questions[0].qname == "localhost.loki"
|| msg.questions[0].qname == "localhost.loki.")
{
RouterID us = m_Router->pubkey();
msg.AddAReply(us.ToString(), 1);
}
else
msg.AddNXReply();
}
else if(msg.questions[0].qtype == dns::qTypeA)
{
if(msg.questions[0].qname == "localhost.loki."
|| msg.questions[0].qname == "localhost.loki")
{
msg.AddINReply(GetIfAddr());
reply(msg);
return true;
}
// forward dns for snode
RouterID r;
if(r.FromString(msg.questions[0].qname))

@ -126,7 +126,7 @@ namespace llarp
KickIdentOffExit(const PubKey& pk);
AbstractRouter* m_Router;
dns::Proxy m_Resolver;
service::dns::Proxy m_Resolver;
bool m_ShouldInitTun;
std::string m_Name;
bool m_PermitExit;

Loading…
Cancel
Save