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

@@ -16,6 +16,14 @@
#include "chainparamsseeds.h"
std::string CDNSSeedData::getHost(uint64_t requiredServiceBits) const {
//use default host for non-filter-capable seeds or if we use the default service bits (NODE_NETWORK)
if (!supportsServiceBitsFiltering || requiredServiceBits == NODE_NETWORK)
return host;
return strprintf("x%x.%s", requiredServiceBits, host);
}
static CBlock CreateGenesisBlock(const char* pszTimestamp, const CScript& genesisOutputScript, uint32_t nTime, uint32_t nNonce, uint32_t nBits, int32_t nVersion, const CAmount& genesisReward)
{
CMutableTransaction txNew;
@@ -197,6 +205,8 @@ public:
vFixedSeeds.clear();
vSeeds.clear();
// nodes with support for servicebits filtering should be at the top
vSeeds.push_back(CDNSSeedData("testnetbitcoin.jonasschnelli.ch", "testnet-seed.bitcoin.jonasschnelli.ch", true));
vSeeds.push_back(CDNSSeedData("bitcoin.petertodd.org", "testnet-seed.bitcoin.petertodd.org"));
vSeeds.push_back(CDNSSeedData("bluematt.me", "testnet-seed.bluematt.me"));
vSeeds.push_back(CDNSSeedData("bitcoin.schildbach.de", "testnet-seed.bitcoin.schildbach.de"));