diff options
| author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-06-19 10:23:25 -0700 |
|---|---|---|
| committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-06-19 10:23:25 -0700 |
| commit | 7bae95836c8824a76e0299df776a708eb3e58576 (patch) | |
| tree | 67fd37bb38b209fffcc7e480004dbd298a507d10 /node/Node.cpp | |
| parent | 07f84a99b4458b3ddf5c14b9ce9b7c1dc5e2763e (diff) | |
| download | infinitytier-7bae95836c8824a76e0299df776a708eb3e58576.tar.gz infinitytier-7bae95836c8824a76e0299df776a708eb3e58576.zip | |
Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address.
Diffstat (limited to 'node/Node.cpp')
| -rw-r--r-- | node/Node.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/node/Node.cpp b/node/Node.cpp index 1f6d474c..45e2463c 100644 --- a/node/Node.cpp +++ b/node/Node.cpp @@ -133,9 +133,7 @@ Node::Node( if (!rt.size()) rt.fromString(ZT_DEFAULTS.defaultRootTopology); } - Dictionary rootservers(rt.get("rootservers","")); - rootservers.update(rt.get("supernodes","")); - RR->topology->setRootservers(rootservers); + RR->topology->setRootServers(Dictionary(rt.get("rootservers",""))); postEvent(ZT1_EVENT_UP); } @@ -191,7 +189,7 @@ public: RR(renv), _now(now), _relays(relays), - _rootservers(RR->topology->rootserverAddresses()) + _rootAddresses(RR->topology->rootAddresses()) { } @@ -207,7 +205,7 @@ public: } } - if ((isRelay)||(std::find(_rootservers.begin(),_rootservers.end(),p->address()) != _rootservers.end())) { + if ((isRelay)||(std::find(_rootAddresses.begin(),_rootAddresses.end(),p->address()) != _rootAddresses.end())) { p->doPingAndKeepalive(RR,_now); if (p->lastReceive() > lastReceiveFromUpstream) lastReceiveFromUpstream = p->lastReceive(); @@ -221,7 +219,7 @@ private: const RuntimeEnvironment *RR; uint64_t _now; const std::vector< std::pair<Address,InetAddress> > &_relays; - std::vector<Address> _rootservers; + std::vector<Address> _rootAddresses; }; ZT1_ResultCode Node::processBackgroundTasks(uint64_t now,volatile uint64_t *nextBackgroundTaskDeadline) @@ -262,7 +260,7 @@ ZT1_ResultCode Node::processBackgroundTasks(uint64_t now,volatile uint64_t *next } } - // Ping living or rootserver/relay peers + // Ping living or root server/relay peers _PingPeersThatNeedPing pfunc(RR,now,networkRelays); RR->topology->eachPeer<_PingPeersThatNeedPing &>(pfunc); @@ -386,7 +384,7 @@ ZT1_PeerList *Node::peers() const p->versionRev = -1; } p->latency = pi->second->latency(); - p->role = RR->topology->isRootserver(pi->second->address()) ? ZT1_PEER_ROLE_ROOTSERVER : ZT1_PEER_ROLE_LEAF; + p->role = RR->topology->isRoot(pi->second->identity()) ? ZT1_PEER_ROLE_ROOT : ZT1_PEER_ROLE_LEAF; std::vector<Path> paths(pi->second->paths()); Path *bestPath = pi->second->getBestPath(_now); |
