diff options
Diffstat (limited to 'src/net.cpp')
-rw-r--r-- | src/net.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/net.cpp b/src/net.cpp index 81176785a2..bd89df63bf 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -201,8 +201,7 @@ bool IsPeerAddrLocalGood(CNode *pnode) IsReachable(addrLocal.GetNetwork()); } -// pushes our own address to a peer -void AdvertiseLocal(CNode *pnode) +Optional<CAddress> GetLocalAddrForPeer(CNode *pnode) { if (fListen && pnode->fSuccessfullyConnected) { @@ -222,10 +221,12 @@ void AdvertiseLocal(CNode *pnode) } if (addrLocal.IsRoutable() || gArgs.GetBoolArg("-addrmantest", false)) { - LogPrint(BCLog::NET, "AdvertiseLocal: advertising address %s\n", addrLocal.ToString()); - pnode->PushAddress(addrLocal, rng); + LogPrint(BCLog::NET, "Advertising address %s to peer=%d\n", addrLocal.ToString(), pnode->GetId()); + return addrLocal; } } + // Address is unroutable. Don't advertise. + return nullopt; } // learn a new local address |