|
|
@ -389,11 +389,8 @@ bool GetMyExternalIP(CNetAddr& ipRet) |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void ThreadGetMyExternalIP(void* parg) |
|
|
|
void ThreadGetMyExternalIP() |
|
|
|
{ |
|
|
|
{ |
|
|
|
// Make this thread recognisable as the external IP detection thread
|
|
|
|
|
|
|
|
RenameThread("bitcoin-ext-ip"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CNetAddr addrLocalHost; |
|
|
|
CNetAddr addrLocalHost; |
|
|
|
if (GetMyExternalIP(addrLocalHost)) |
|
|
|
if (GetMyExternalIP(addrLocalHost)) |
|
|
|
{ |
|
|
|
{ |
|
|
@ -1151,7 +1148,7 @@ void MapPort(bool fUseUPnP) |
|
|
|
upnp_thread->join(); |
|
|
|
upnp_thread->join(); |
|
|
|
delete upnp_thread; |
|
|
|
delete upnp_thread; |
|
|
|
} |
|
|
|
} |
|
|
|
upnp_thread = new boost::thread(boost::bind(&TraceThread<boost::function<void()> >, "upnp", &ThreadMapPort)); |
|
|
|
upnp_thread = new boost::thread(boost::bind(&TraceThread<void (*)()>, "upnp", &ThreadMapPort)); |
|
|
|
} |
|
|
|
} |
|
|
|
else if (upnp_thread) { |
|
|
|
else if (upnp_thread) { |
|
|
|
upnp_thread->interrupt(); |
|
|
|
upnp_thread->interrupt(); |
|
|
@ -1800,7 +1797,7 @@ void static Discover() |
|
|
|
|
|
|
|
|
|
|
|
// Don't use external IPv4 discovery, when -onlynet="IPv6"
|
|
|
|
// Don't use external IPv4 discovery, when -onlynet="IPv6"
|
|
|
|
if (!IsLimited(NET_IPV4)) |
|
|
|
if (!IsLimited(NET_IPV4)) |
|
|
|
NewThread(ThreadGetMyExternalIP, NULL); |
|
|
|
boost::thread(boost::bind(&TraceThread<void (*)()>, "ext-ip", &ThreadGetMyExternalIP)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void StartNode(boost::thread_group& threadGroup) |
|
|
|
void StartNode(boost::thread_group& threadGroup) |
|
|
@ -1823,7 +1820,7 @@ void StartNode(boost::thread_group& threadGroup) |
|
|
|
if (!GetBoolArg("-dnsseed", true)) |
|
|
|
if (!GetBoolArg("-dnsseed", true)) |
|
|
|
printf("DNS seeding disabled\n"); |
|
|
|
printf("DNS seeding disabled\n"); |
|
|
|
else |
|
|
|
else |
|
|
|
threadGroup.create_thread(boost::bind(&TraceThread<boost::function<void()> >, "dnsseed", &ThreadDNSAddressSeed)); |
|
|
|
threadGroup.create_thread(boost::bind(&TraceThread<void (*)()>, "dnsseed", &ThreadDNSAddressSeed)); |
|
|
|
|
|
|
|
|
|
|
|
#ifdef USE_UPNP |
|
|
|
#ifdef USE_UPNP |
|
|
|
// Map ports with UPnP
|
|
|
|
// Map ports with UPnP
|
|
|
|