diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2011-01-07 00:14:42 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2011-01-07 00:14:42 +0900 |
| commit | 920583502e654e8ae3e47ecb8b5df515b2d072f2 (patch) | |
| tree | 1e3bca7db322e9ba11df74314351ac744353caef /src/DHTBucket.cc | |
| parent | d429943d05726569758a884fa67238958972970f (diff) | |
Consider IP address and port when finding DHT node.
Diffstat (limited to 'src/DHTBucket.cc')
| -rw-r--r-- | src/DHTBucket.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/DHTBucket.cc b/src/DHTBucket.cc index ee5d0cae..04d2bb30 100644 --- a/src/DHTBucket.cc +++ b/src/DHTBucket.cc @@ -232,7 +232,8 @@ SharedHandle<DHTNode> DHTBucket::getNode(const unsigned char* nodeID, const std: node->setPort(port); std::deque<SharedHandle<DHTNode> >::const_iterator itr = std::find_if(nodes_.begin(), nodes_.end(), derefEqual(node)); - if(itr == nodes_.end()) { + if(itr == nodes_.end() || + (*itr)->getIPAddress() != ipaddr || (*itr)->getPort() != port) { return SharedHandle<DHTNode>(); } else { return *itr; |
