mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-02-04 06:12:07 +01:00
Merge branch '0.4.x' into 0.5.0.x
This commit is contained in:
20
src/net.cpp
20
src/net.cpp
@@ -1154,6 +1154,26 @@ void ThreadMapPort2(void* parg)
|
||||
r = UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr));
|
||||
if (r == 1)
|
||||
{
|
||||
if (!addrLocalHost.IsRoutable())
|
||||
{
|
||||
char externalIPAddress[40];
|
||||
r = UPNP_GetExternalIPAddress(urls.controlURL, data.first.servicetype, externalIPAddress);
|
||||
if(r != UPNPCOMMAND_SUCCESS)
|
||||
printf("UPnP: GetExternalIPAddress() returned %d\n", r);
|
||||
else
|
||||
{
|
||||
if(externalIPAddress[0])
|
||||
{
|
||||
printf("UPnP: ExternalIPAddress = %s\n", externalIPAddress);
|
||||
CAddress addrExternalFromUPnP(externalIPAddress, 0, false, nLocalServices);
|
||||
if (addrExternalFromUPnP.IsRoutable())
|
||||
addrLocalHost = addrExternalFromUPnP;
|
||||
}
|
||||
else
|
||||
printf("UPnP: GetExternalIPAddress failed.\n");
|
||||
}
|
||||
}
|
||||
|
||||
string strDesc = "Bitcoin " + FormatFullVersion();
|
||||
#ifndef UPNPDISCOVER_SUCCESS
|
||||
/* miniupnpc 1.5 */
|
||||
|
||||
Reference in New Issue
Block a user