Browse Source

agree() must be called on our identity, the one with the secret

Adam Ierymenko 8 years ago
parent
commit
9284e4edfe
2 changed files with 3 additions and 3 deletions
  1. 1 1
      node/Cluster.cpp
  2. 2 2
      node/Switch.cpp

+ 1 - 1
node/Cluster.cpp

@@ -347,7 +347,7 @@ void Cluster::handleIncomingStateMessage(const void *msg,unsigned int len)
 								_RemotePeer &rp = _remotePeers[std::pair<Address,unsigned int>(id.address(),(unsigned int)fromMemberId)];
 								if (!rp.lastHavePeerReceived) {
 									RR->topology->saveIdentity(id);
-									id.agree(RR->identity,rp.key,ZT_PEER_SECRET_KEY_LENGTH);
+									RR->identity.agree(id,rp.key,ZT_PEER_SECRET_KEY_LENGTH);
 								}
 								rp.lastHavePeerReceived = RR->node->now();
 							}

+ 2 - 2
node/Switch.cpp

@@ -82,12 +82,12 @@ void Switch::onRemotePacket(const InetAddress &localAddr,const InetAddress &from
 			 * no longer send these, but we'll listen for them for a while to
 			 * locate peers with versions <1.0.4. */
 
-			Address beaconAddr(reinterpret_cast<const char *>(data) + 8,5);
+			const Address beaconAddr(reinterpret_cast<const char *>(data) + 8,5);
 			if (beaconAddr == RR->identity.address())
 				return;
 			if (!RR->node->shouldUsePathForZeroTierTraffic(beaconAddr,localAddr,fromAddr))
 				return;
-			SharedPtr<Peer> peer(RR->topology->getPeer(beaconAddr));
+			const SharedPtr<Peer> peer(RR->topology->getPeer(beaconAddr));
 			if (peer) { // we'll only respond to beacons from known peers
 				if ((now - _lastBeaconResponse) >= 2500) { // limit rate of responses
 					_lastBeaconResponse = now;