diff options
author | Peter Todd <pete@petertodd.org> | 2013-01-29 23:13:17 -0500 |
---|---|---|
committer | Peter Todd <pete@petertodd.org> | 2013-01-29 23:13:17 -0500 |
commit | af8998824c7c1c762c6b47c32afefb7d1f4f0276 (patch) | |
tree | 4efba1ae1fb0089f71cf6c8e24ae3b3c2fd13b28 | |
parent | 2835080e164527ecc2db31e68d86ab8a8337c62b (diff) |
Add DNS seed support for testnet
-rw-r--r-- | src/net.cpp | 47 |
1 files changed, 26 insertions, 21 deletions
diff --git a/src/net.cpp b/src/net.cpp index a6017b7356..3406a28b0e 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -1145,11 +1145,17 @@ void MapPort() // Each pair gives a source name and a seed name. // The first name is used as information source for addrman. // The second name should resolve to a list of seed addresses. -static const char *strDNSSeed[][2] = { +static const char *strMainNetDNSSeed[][2] = { {"bitcoin.sipa.be", "seed.bitcoin.sipa.be"}, {"bluematt.me", "dnsseed.bluematt.me"}, {"dashjr.org", "dnsseed.bitcoin.dashjr.org"}, {"xf2.org", "bitseed.xf2.org"}, + {NULL, NULL} +}; + +static const char *strTestNetDNSSeed[][2] = { + {"bitcoin.petertodd.org", "testnet-seed.bitcoin.petertodd.org"}, + {NULL, NULL} }; void ThreadDNSAddressSeed(void* parg) @@ -1175,32 +1181,31 @@ void ThreadDNSAddressSeed(void* parg) void ThreadDNSAddressSeed2(void* parg) { + static const char *(*strDNSSeed)[2] = fTestNet ? strTestNetDNSSeed : strMainNetDNSSeed; + printf("ThreadDNSAddressSeed started\n"); int found = 0; - if (!fTestNet) - { - printf("Loading addresses from DNS seeds (could take a while)\n"); - - for (unsigned int seed_idx = 0; seed_idx < ARRAYLEN(strDNSSeed); seed_idx++) { - if (HaveNameProxy()) { - AddOneShot(strDNSSeed[seed_idx][1]); - } else { - vector<CNetAddr> vaddr; - vector<CAddress> vAdd; - if (LookupHost(strDNSSeed[seed_idx][1], vaddr)) + printf("Loading addresses from DNS seeds (could take a while)\n"); + + for (unsigned int seed_idx = 0; strDNSSeed[seed_idx][0] != NULL; seed_idx++) { + if (HaveNameProxy()) { + AddOneShot(strDNSSeed[seed_idx][1]); + } else { + vector<CNetAddr> vaddr; + vector<CAddress> vAdd; + if (LookupHost(strDNSSeed[seed_idx][1], vaddr)) + { + BOOST_FOREACH(CNetAddr& ip, vaddr) { - BOOST_FOREACH(CNetAddr& ip, vaddr) - { - int nOneDay = 24*3600; - CAddress addr = CAddress(CService(ip, GetDefaultPort())); - addr.nTime = GetTime() - 3*nOneDay - GetRand(4*nOneDay); // use a random age between 3 and 7 days old - vAdd.push_back(addr); - found++; - } + int nOneDay = 24*3600; + CAddress addr = CAddress(CService(ip, GetDefaultPort())); + addr.nTime = GetTime() - 3*nOneDay - GetRand(4*nOneDay); // use a random age between 3 and 7 days old + vAdd.push_back(addr); + found++; } - addrman.Add(vAdd, CNetAddr(strDNSSeed[seed_idx][0], true)); } + addrman.Add(vAdd, CNetAddr(strDNSSeed[seed_idx][0], true)); } } |