Browse Source

Lets try always supplying the AES keys to Packet dearmor() and see if that prevents the coma problem.

Adam Ierymenko 4 years ago
parent
commit
147945d20f
2 changed files with 6 additions and 3 deletions
  1. 1 1
      node/IncomingPacket.cpp
  2. 5 2
      node/Peer.hpp

+ 1 - 1
node/IncomingPacket.cpp

@@ -67,7 +67,7 @@ bool IncomingPacket::tryDecode(const RuntimeEnvironment *RR,void *tPtr,int32_t f
 		const SharedPtr<Peer> peer(RR->topology->getPeer(tPtr,sourceAddress));
 		if (peer) {
 			if (!trusted) {
-				if (!dearmor(peer->key(), peer->aesKeysIfSupported())) {
+				if (!dearmor(peer->key(), peer->aesKeys())) {
 					RR->t->incomingPacketMessageAuthenticationFailure(tPtr,_path,packetId(),sourceAddress,hops(),"invalid MAC");
 					peer->recordIncomingInvalidPacket(_path);
 					return true;

+ 5 - 2
node/Peer.hpp

@@ -534,12 +534,15 @@ public:
 	 */
 	inline int8_t bondingPolicy() { return _bondingPolicy; }
 
-	//const AES *aesKeysIfSupported() const
+	//inline const AES *aesKeysIfSupported() const
 	//{ return (const AES *)0; }
 
-	const AES *aesKeysIfSupported() const
+	inline const AES *aesKeysIfSupported() const
 	{ return (_vProto >= 12) ? _aesKeys : (const AES *)0; }
 
+	inline const AES *aesKeys() const
+	{ return _aesKeys; }
+
 private:
 	struct _PeerPath
 	{