summaryrefslogtreecommitdiff
path: root/src/DHTMessageFactoryImpl.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-05-27 23:26:46 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-05-27 23:28:53 +0900
commit3e00be26e8f8fe44c7344a3e8026031a99b22400 (patch)
tree74a0f25d4b1966995803f627315a8bc790a782b6 /src/DHTMessageFactoryImpl.cc
parentc57259f8e719e34e7f3dbe2e73735b18aa46bc23 (diff)
Include local IP address to DHT GetPeers reply message
This is required when DHT is used in private network, where seeder is initially not known to all nodes. This functionality requires --bt-external-ip is set since aria2 cannot figure out external IP address to advertise in general.
Diffstat (limited to 'src/DHTMessageFactoryImpl.cc')
-rw-r--r--src/DHTMessageFactoryImpl.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/DHTMessageFactoryImpl.cc b/src/DHTMessageFactoryImpl.cc
index 9e50fdd6..33994133 100644
--- a/src/DHTMessageFactoryImpl.cc
+++ b/src/DHTMessageFactoryImpl.cc
@@ -70,7 +70,8 @@ DHTMessageFactoryImpl::DHTMessageFactoryImpl(int family)
dispatcher_{nullptr},
routingTable_{nullptr},
peerAnnounceStorage_{nullptr},
- tokenTracker_{nullptr}
+ tokenTracker_{nullptr},
+ btRegistry_{nullptr}
{
}
@@ -409,6 +410,8 @@ DHTMessageFactoryImpl::createGetPeersMessage(
transactionID);
m->setPeerAnnounceStorage(peerAnnounceStorage_);
m->setTokenTracker(tokenTracker_);
+ m->setBtRegistry(btRegistry_);
+ m->setFamily(family_);
setCommonProperty(m.get());
return m;
}
@@ -529,4 +532,9 @@ void DHTMessageFactoryImpl::setLocalNode(
localNode_ = localNode;
}
+void DHTMessageFactoryImpl::setBtRegistry(BtRegistry* btRegistry)
+{
+ btRegistry_ = btRegistry;
+}
+
} // namespace aria2