aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPieter Wuille <pieter.wuille@gmail.com>2016-05-28 16:44:08 +0200
committerPieter Wuille <pieter.wuille@gmail.com>2016-06-13 23:53:08 +0200
commit1a5a4e648873c4cd88b936648ebf2858393e5510 (patch)
tree48e7d68293a0028a0239a441bd8fd276c675a216
parentf9f5cfc50637f2cd1540923caf337e2651ec1625 (diff)
Randomize name lookup result in ConnectSocketByName
-rw-r--r--src/netbase.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/netbase.cpp b/src/netbase.cpp
index 572ae70871..e2a516986c 100644
--- a/src/netbase.cpp
+++ b/src/netbase.cpp
@@ -621,10 +621,10 @@ bool ConnectSocketByName(CService &addr, SOCKET& hSocketRet, const char *pszDest
proxyType nameProxy;
GetNameProxy(nameProxy);
- CService addrResolved;
- if (Lookup(strDest.c_str(), addrResolved, port, fNameLookup && !HaveNameProxy())) {
- if (addrResolved.IsValid()) {
- addr = addrResolved;
+ std::vector<CService> addrResolved;
+ if (Lookup(strDest.c_str(), addrResolved, port, fNameLookup && !HaveNameProxy(), 256)) {
+ if (addrResolved.size() > 0) {
+ addr = addrResolved[GetRand(addrResolved.size())];
return ConnectSocket(addr, hSocketRet, nTimeout);
}
}