Add support for dnsseeds with option to filter by servicebits

This commit is contained in:
Jonas Schnelli
2016-05-21 23:55:22 +02:00
parent 37f9a1f627
commit 2d83013dc5
3 changed files with 18 additions and 4 deletions

View File

@@ -1466,12 +1466,13 @@ void ThreadDNSAddressSeed()
} else {
std::vector<CNetAddr> vIPs;
std::vector<CAddress> vAdd;
if (LookupHost(seed.host.c_str(), vIPs, 0, true))
uint64_t requiredServiceBits = NODE_NETWORK;
if (LookupHost(seed.getHost(requiredServiceBits).c_str(), vIPs, 0, true))
{
BOOST_FOREACH(const CNetAddr& ip, vIPs)
{
int nOneDay = 24*3600;
CAddress addr = CAddress(CService(ip, Params().GetDefaultPort()));
CAddress addr = CAddress(CService(ip, Params().GetDefaultPort()), requiredServiceBits);
addr.nTime = GetTime() - 3*nOneDay - GetRand(4*nOneDay); // use a random age between 3 and 7 days old
vAdd.push_back(addr);
found++;