diff options
author | Jeff Garzik <jeff@garzik.org> | 2011-03-08 22:40:50 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2011-03-08 22:40:50 -0500 |
commit | f684aec4f38d6a9e48e870ca5dae6bd65da516cf (patch) | |
tree | e22936135a00387dbffe4a13a32ca0244401c26f /net.cpp | |
parent | f36b494aebcfe4cc6a45003520ee7d15eeaba8df (diff) |
DNS seeding
Diffstat (limited to 'net.cpp')
-rw-r--r-- | net.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
@@ -857,7 +857,34 @@ void ThreadSocketHandler2(void* parg) +static const char *strDNSSeed[] = { + "bitseed.xf2.org", +}; +void DNSAddressSeed() +{ + int found = 0; + + printf("Loading addresses from DNS seeds (could take a while)\n"); + + for (int seed_idx = 0; seed_idx < ARRAYLEN(strDNSSeed); seed_idx++) { + struct hostent* phostent = gethostbyname(strDNSSeed[seed_idx]); + if (!phostent) + continue; + + for (int host = 0; phostent->h_addr_list[host] != NULL; host++) { + CAddress addr(*(unsigned int*)phostent->h_addr_list[host], + GetDefaultPort(), NODE_NETWORK); + addr.nTime = 0; + if (addr.IsValid() && addr.GetByte(3) != 127) { + AddAddress(addr); + found++; + } + } + } + + printf("%d addresses found from DNS seeds\n"); +} |