diff --git a/libp2p/Host.cpp b/libp2p/Host.cpp index cc0d75fdb..ab39c5c25 100644 --- a/libp2p/Host.cpp +++ b/libp2p/Host.cpp @@ -310,10 +310,7 @@ void Host::determinePublic() else if (m_netPrefs.traverseNAT) { bi::address natIFAddr; - if (lset && ifAddresses.count(laddr)) - ep = Network::traverseNAT(std::set({laddr}), m_netPrefs.listenPort, natIFAddr); - else - ep = Network::traverseNAT(ifAddresses, m_netPrefs.listenPort, natIFAddr); + ep = Network::traverseNAT(lset && ifAddresses.count(laddr) ? std::set({laddr}) : ifAddresses, m_netPrefs.listenPort, natIFAddr); if (lset && natIFAddr != laddr) // if listen address is set, Host will use it, even if upnp returns different