clang-format

pull/34/head
Ryan Tharp 6 years ago
parent 3b24b69513
commit c3c2eda283

@ -1,7 +1,6 @@
#include <llarp/dns_dotlokilookup.hpp>
#include <llarp/handlers/tun.hpp>
#include <llarp/service/context.hpp>
#include <llarp/net.hpp>
std::string const default_chars =
"abcdefghijklmnaoqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
@ -146,13 +145,13 @@ split(std::string str)
while((pos = s.find(".")) != std::string::npos)
{
token = s.substr(0, pos);
//llarp::LogInfo("token [", token, "]");
// llarp::LogInfo("token [", token, "]");
tokens.push_back(token);
s.erase(0, pos + 1);
}
token = s.substr(0, pos);
tokens.push_back(token);
//llarp::LogInfo("token [", token, "]");
// llarp::LogInfo("token [", token, "]");
return tokens;
}
@ -181,32 +180,48 @@ ReverseHandlerIter(struct llarp::service::Context::endpoint_iter *endpointCfg)
std::string checkStr(tunEndpoint->tunif.ifaddr);
std::vector< std::string > tokensSearch = split(context->lName);
std::vector< std::string > tokensCheck = split(checkStr);
// well the tunif is just one ip on a network range...
// support "b._dns-sd._udp.0.0.200.10.in-addr.arpa"
size_t searchTokens = tokensSearch.size();
std::string searchIp = tokensSearch[searchTokens - 3] + "." + tokensSearch[searchTokens - 4] + "."
+ tokensSearch[searchTokens - 5] + "." + tokensSearch[searchTokens - 6];
// support "b._dns-sd._udp.0.0.200.10.in-addr.arpa"
size_t searchTokens = tokensSearch.size();
std::string searchIp = tokensSearch[searchTokens - 3] + "."
+ tokensSearch[searchTokens - 4] + "." + tokensSearch[searchTokens - 5]
+ "." + tokensSearch[searchTokens - 6];
std::string checkIp = tokensCheck[0] + "." + tokensCheck[1] + "."
+ tokensCheck[2] + "." + tokensCheck[3];
llarp::LogDebug(searchIp, " vs ", checkIp);
llarp::IPRange range = llarp::iprange_ipv4(stoi(tokensCheck[0]), stoi(tokensCheck[1]), stoi(tokensCheck[2]), stoi(tokensCheck[3]), tunEndpoint->tunif.netmask); // create range
llarp::IPRange range = llarp::iprange_ipv4(
stoi(tokensCheck[0]), stoi(tokensCheck[1]), stoi(tokensCheck[2]),
stoi(tokensCheck[3]), tunEndpoint->tunif.netmask); // create range
// hack atm to work around limitations in ipaddr_ipv4_bits and llarp::IPRange
llarp::huint32_t searchIPv4_fixed = llarp::ipaddr_ipv4_bits(stoi(tokensSearch[searchTokens - 6]), stoi(tokensSearch[searchTokens - 5]), stoi(tokensSearch[searchTokens - 4]), stoi(tokensSearch[searchTokens - 3])); // create ip (llarp::Addr is untrustworthy atm)
llarp::huint32_t searchIPv4_search = llarp::ipaddr_ipv4_bits(stoi(tokensSearch[searchTokens - 3]), stoi(tokensSearch[searchTokens - 4]), stoi(tokensSearch[searchTokens - 5]), stoi(tokensSearch[searchTokens - 6])); // create ip (llarp::Addr is untrustworthy atm)
llarp::huint32_t searchIPv4_fixed = llarp::ipaddr_ipv4_bits(
stoi(tokensSearch[searchTokens - 6]),
stoi(tokensSearch[searchTokens - 5]),
stoi(tokensSearch[searchTokens - 4]),
stoi(tokensSearch[searchTokens
- 3])); // create ip (llarp::Addr is untrustworthy atm)
llarp::huint32_t searchIPv4_search = llarp::ipaddr_ipv4_bits(
stoi(tokensSearch[searchTokens - 3]),
stoi(tokensSearch[searchTokens - 4]),
stoi(tokensSearch[searchTokens - 5]),
stoi(tokensSearch[searchTokens
- 6])); // create ip (llarp::Addr is untrustworthy atm)
//bool inRange = range.Contains(searchAddr.xtohl());
// bool inRange = range.Contains(searchAddr.xtohl());
bool inRange = range.Contains(searchIPv4_search);
llarp::Addr searchAddr(searchIp);
llarp::Addr checkAddr(checkIp);
llarp::LogDebug(searchAddr, " vs ", range.ToString(), " = ", inRange?"inRange":"not match");
if (inRange)
llarp::LogDebug(searchAddr, " vs ", range.ToString(), " = ",
inRange ? "inRange" : "not match");
if(inRange)
{
llarp::service::Address addr = tunEndpoint->ObtainAddrForIP(searchIPv4_fixed);
if (addr.ToString() == "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy.loki")
llarp::service::Address addr =
tunEndpoint->ObtainAddrForIP(searchIPv4_fixed);
if(addr.ToString()
== "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy.loki")
{
write404_dnss_response(context->from,
(dnsd_question_request *)context->request);
@ -214,7 +229,7 @@ ReverseHandlerIter(struct llarp::service::Context::endpoint_iter *endpointCfg)
else
{
writesend_dnss_revresponse(addr.ToString(), context->from,
(dnsd_question_request *)context->request);
(dnsd_question_request *)context->request);
}
return false;
}
@ -268,9 +283,10 @@ llarp_dotlokilookup_handler(std::string name, const struct sockaddr *from,
{
llarp::LogInfo("Reverse is not ours");
}
} else
if((lName.length() > 5 && lName.substr(lName.length() - 5, 5) == ".loki")
|| (lName.length() > 6 && lName.substr(lName.length() - 6, 6) == ".loki."))
}
else if((lName.length() > 5 && lName.substr(lName.length() - 5, 5) == ".loki")
|| (lName.length() > 6
&& lName.substr(lName.length() - 6, 6) == ".loki."))
{
llarp::LogInfo("Detect Loki Lookup for ", lName);
auto cache_check = loki_tld_lookup_cache.find(lName);

@ -134,7 +134,7 @@ namespace llarp
}
llarp::LogInfo(Name() + " map ", addr.ToString(), " to ",
inet_ntoa({nip.n}));
m_IPToAddr.insert(std::make_pair(ip, addr));
m_AddrToIP.insert(std::make_pair(addr, ip));
MarkIPActiveForever(ip);
@ -351,7 +351,7 @@ namespace llarp
" bytes from ", inet_ntoa({xhtonl(themIP).n}));
return true;
}
service::Address
TunEndpoint::ObtainAddrForIP(huint32_t ip)
{
@ -359,7 +359,7 @@ namespace llarp
if(itr == m_IPToAddr.end())
{
// not found
//llarp::Addr test(ip); // "/", test,
// llarp::Addr test(ip); // "/", test,
service::Address addr;
llarp::LogWarn(" not found in tun map. Sending ", addr.ToString());
return addr;

Loading…
Cancel
Save