diff --git a/src/avalanche/processor.h b/src/avalanche/processor.h --- a/src/avalanche/processor.h +++ b/src/avalanche/processor.h @@ -249,9 +249,9 @@ struct PeerData { std::optional proof; std::optional delegation; + CKey sessionKey; }; PeerData peerData; - CKey sessionKey; /** Event loop machinery. */ EventLoop eventLoop; diff --git a/src/avalanche/processor.cpp b/src/avalanche/processor.cpp --- a/src/avalanche/processor.cpp +++ b/src/avalanche/processor.cpp @@ -163,10 +163,10 @@ queryTimeoutDuration(AVALANCHE_DEFAULT_QUERY_TIMEOUT), round(0), peerManager(std::make_unique()) { if (gArgs.IsArgSet("-avasessionkey")) { - sessionKey = DecodeSecret(gArgs.GetArg("-avasessionkey", "")); + peerData.sessionKey = DecodeSecret(gArgs.GetArg("-avasessionkey", "")); } else { // Pick a random key for the session. - sessionKey.MakeNewKey(true); + peerData.sessionKey.MakeNewKey(true); } if (gArgs.IsArgSet("-avaproof")) { @@ -184,9 +184,9 @@ // Generate the delegation to the session key. DelegationBuilder dgb(peerData.proof.value()); - if (sessionKey.GetPubKey() != peerData.proof->getMaster()) { + if (peerData.sessionKey.GetPubKey() != peerData.proof->getMaster()) { dgb.addLevel(DecodeSecret(gArgs.GetArg("-avamasterkey", "")), - sessionKey.GetPubKey()); + peerData.sessionKey.GetPubKey()); } peerData.delegation = dgb.build(); } @@ -269,10 +269,10 @@ } // namespace void Processor::sendResponse(CNode *pfrom, Response response) const { - connman->PushMessage( - pfrom, CNetMsgMaker(pfrom->GetCommonVersion()) - .Make(NetMsgType::AVARESPONSE, - TCPResponse(std::move(response), sessionKey))); + connman->PushMessage(pfrom, CNetMsgMaker(pfrom->GetCommonVersion()) + .Make(NetMsgType::AVARESPONSE, + TCPResponse(std::move(response), + peerData.sessionKey))); } bool Processor::registerVotes(NodeId nodeid, const Response &response, @@ -393,7 +393,7 @@ } CPubKey Processor::getSessionPubKey() const { - return sessionKey.GetPubKey(); + return peerData.sessionKey.GetPubKey(); } uint256 Processor::buildLocalSighash(CNode *pfrom) const { @@ -428,7 +428,7 @@ { const uint256 hash = buildLocalSighash(pfrom); - if (!sessionKey.SignSchnorr(hash, sig)) { + if (!peerData.sessionKey.SignSchnorr(hash, sig)) { return false; } }