aboutsummaryrefslogtreecommitdiff
path: root/src/chainparams.cpp
diff options
context:
space:
mode:
authorJonas Schnelli <dev@jonasschnelli.ch>2016-05-21 23:55:22 +0200
committerJonas Schnelli <dev@jonasschnelli.ch>2016-05-25 14:57:24 +0200
commit2d83013dc54320b3f0c978475517da6156f7b50d (patch)
tree5d5648c31b3093367cfe694eeea072f1895d3662 /src/chainparams.cpp
parent37f9a1f627c0995d89b62923e75cd092600894f9 (diff)
Add support for dnsseeds with option to filter by servicebits
Diffstat (limited to 'src/chainparams.cpp')
-rw-r--r--src/chainparams.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/chainparams.cpp b/src/chainparams.cpp
index 5c7d190125..0005115671 100644
--- a/src/chainparams.cpp
+++ b/src/chainparams.cpp
@@ -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"));