|
|
|
@ -1125,7 +1125,7 @@ void MapPort()
|
|
|
|
|
{
|
|
|
|
|
if (fUseUPnP && vnThreadsRunning[THREAD_UPNP] < 1)
|
|
|
|
|
{
|
|
|
|
|
if (!CreateThread(ThreadMapPort, NULL))
|
|
|
|
|
if (!NewThread(ThreadMapPort, NULL))
|
|
|
|
|
printf("Error: ThreadMapPort(ThreadMapPort) failed\n");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1887,7 +1887,7 @@ void static Discover()
|
|
|
|
|
|
|
|
|
|
// Don't use external IPv4 discovery, when -onlynet="IPv6"
|
|
|
|
|
if (!IsLimited(NET_IPV4))
|
|
|
|
|
CreateThread(ThreadGetMyExternalIP, NULL);
|
|
|
|
|
NewThread(ThreadGetMyExternalIP, NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void StartNode(void* parg)
|
|
|
|
@ -1913,36 +1913,36 @@ void StartNode(void* parg)
|
|
|
|
|
if (!GetBoolArg("-dnsseed", true))
|
|
|
|
|
printf("DNS seeding disabled\n");
|
|
|
|
|
else
|
|
|
|
|
if (!CreateThread(ThreadDNSAddressSeed, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadDNSAddressSeed) failed\n");
|
|
|
|
|
if (!NewThread(ThreadDNSAddressSeed, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadDNSAddressSeed) failed\n");
|
|
|
|
|
|
|
|
|
|
// Map ports with UPnP
|
|
|
|
|
if (fUseUPnP)
|
|
|
|
|
MapPort();
|
|
|
|
|
|
|
|
|
|
// Get addresses from IRC and advertise ours
|
|
|
|
|
if (!CreateThread(ThreadIRCSeed, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadIRCSeed) failed\n");
|
|
|
|
|
if (!NewThread(ThreadIRCSeed, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadIRCSeed) failed\n");
|
|
|
|
|
|
|
|
|
|
// Send and receive from sockets, accept connections
|
|
|
|
|
if (!CreateThread(ThreadSocketHandler, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadSocketHandler) failed\n");
|
|
|
|
|
if (!NewThread(ThreadSocketHandler, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadSocketHandler) failed\n");
|
|
|
|
|
|
|
|
|
|
// Initiate outbound connections from -addnode
|
|
|
|
|
if (!CreateThread(ThreadOpenAddedConnections, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadOpenAddedConnections) failed\n");
|
|
|
|
|
if (!NewThread(ThreadOpenAddedConnections, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadOpenAddedConnections) failed\n");
|
|
|
|
|
|
|
|
|
|
// Initiate outbound connections
|
|
|
|
|
if (!CreateThread(ThreadOpenConnections, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadOpenConnections) failed\n");
|
|
|
|
|
if (!NewThread(ThreadOpenConnections, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadOpenConnections) failed\n");
|
|
|
|
|
|
|
|
|
|
// Process messages
|
|
|
|
|
if (!CreateThread(ThreadMessageHandler, NULL))
|
|
|
|
|
printf("Error: CreateThread(ThreadMessageHandler) failed\n");
|
|
|
|
|
if (!NewThread(ThreadMessageHandler, NULL))
|
|
|
|
|
printf("Error: NewThread(ThreadMessageHandler) failed\n");
|
|
|
|
|
|
|
|
|
|
// Dump network addresses
|
|
|
|
|
if (!CreateThread(ThreadDumpAddress, NULL))
|
|
|
|
|
printf("Error; CreateThread(ThreadDumpAddress) failed\n");
|
|
|
|
|
if (!NewThread(ThreadDumpAddress, NULL))
|
|
|
|
|
printf("Error; NewThread(ThreadDumpAddress) failed\n");
|
|
|
|
|
|
|
|
|
|
// Generate coins in the background
|
|
|
|
|
GenerateBitcoins(GetBoolArg("-gen", false), pwalletMain);
|
|
|
|
|