2424namespace llmq
2525{
2626
27- CDKGSessionHandler::CDKGSessionHandler (CBLSWorker& _blsWorker, CChainState& chainstate, CConnman& _connman,
28- CDeterministicMNManager& dmnman, CDKGDebugManager& _dkgDebugManager,
29- CDKGSessionManager& _dkgManager, CMasternodeMetaMan& mn_metaman,
30- CQuorumBlockProcessor& _quorumBlockProcessor,
27+ CDKGSessionHandler::CDKGSessionHandler (CBLSWorker& _blsWorker, CChainState& chainstate, CDeterministicMNManager& dmnman,
28+ CDKGDebugManager& _dkgDebugManager, CDKGSessionManager& _dkgManager,
29+ CMasternodeMetaMan& mn_metaman, CQuorumBlockProcessor& _quorumBlockProcessor,
3130 const CActiveMasternodeManager* const mn_activeman, const CSporkManager& sporkman,
3231 const Consensus::LLMQParams& _params, int _quorumIndex) :
3332 blsWorker (_blsWorker),
3433 m_chainstate (chainstate),
35- connman (_connman),
3634 m_dmnman (dmnman),
3735 dkgDebugManager (_dkgDebugManager),
3836 dkgManager (_dkgManager),
@@ -42,8 +40,8 @@ CDKGSessionHandler::CDKGSessionHandler(CBLSWorker& _blsWorker, CChainState& chai
4240 m_sporkman (sporkman),
4341 params (_params),
4442 quorumIndex (_quorumIndex),
45- curSession (std::make_unique<CDKGSession>(nullptr , _params, _blsWorker, _connman, dmnman, _dkgManager,
46- _dkgDebugManager, m_mn_metaman, m_mn_activeman, sporkman)),
43+ curSession (std::make_unique<CDKGSession>(nullptr , _params, _blsWorker, dmnman, _dkgManager, _dkgDebugManager ,
44+ m_mn_metaman, m_mn_activeman, sporkman)),
4745 pendingContributions (
4846 (size_t )_params.size * 2 ,
4947 MSG_QUORUM_CONTRIB), // we allow size*2 messages as we need to make sure we see bad behavior (double messages)
@@ -165,15 +163,15 @@ void CDKGSessionHandler::ProcessMessage(const CNode& pfrom, PeerManager& peerman
165163 }
166164}
167165
168- void CDKGSessionHandler::StartThread (PeerManager& peerman)
166+ void CDKGSessionHandler::StartThread (CConnman& connman, PeerManager& peerman)
169167{
170168 if (phaseHandlerThread.joinable ()) {
171169 throw std::runtime_error (" Tried to start an already started CDKGSessionHandler thread." );
172170 }
173171
174172 m_thread_name = strprintf (" llmq-%d-%d" , ToUnderlying (params.type ), quorumIndex);
175173 phaseHandlerThread = std::thread (&util::TraceThread, m_thread_name.c_str (),
176- [this , &peerman] { PhaseHandlerThread (peerman); });
174+ [this , &connman, & peerman] { PhaseHandlerThread (connman, peerman); });
177175}
178176
179177void CDKGSessionHandler::StopThread ()
@@ -190,7 +188,7 @@ bool CDKGSessionHandler::InitNewQuorum(const CBlockIndex* pQuorumBaseBlockIndex)
190188 return false ;
191189 }
192190
193- curSession = std::make_unique<CDKGSession>(pQuorumBaseBlockIndex, params, blsWorker, connman, m_dmnman, dkgManager,
191+ curSession = std::make_unique<CDKGSession>(pQuorumBaseBlockIndex, params, blsWorker, m_dmnman, dkgManager,
194192 dkgDebugManager, m_mn_metaman, m_mn_activeman, m_sporkman);
195193
196194 if (!curSession->Init (m_mn_activeman->GetProTxHash (), quorumIndex)) {
@@ -528,7 +526,7 @@ bool ProcessPendingMessageBatch(CConnman& connman, CDKGSession& session, CDKGPen
528526 return true ;
529527}
530528
531- void CDKGSessionHandler::HandleDKGRound (PeerManager& peerman)
529+ void CDKGSessionHandler::HandleDKGRound (CConnman& connman, PeerManager& peerman)
532530{
533531 WaitForNextPhase (std::nullopt , QuorumPhase::Initialized);
534532
@@ -562,31 +560,33 @@ void CDKGSessionHandler::HandleDKGRound(PeerManager& peerman)
562560
563561 // Contribute
564562 auto fContributeStart = [this , &peerman]() { curSession->Contribute (pendingContributions, peerman); };
565- auto fContributeWait = [this , &peerman] {
563+ auto fContributeWait = [this , &connman, & peerman] {
566564 return ProcessPendingMessageBatch<CDKGContribution, MSG_QUORUM_CONTRIB>(connman, *curSession,
567565 pendingContributions, peerman, 8 );
568566 };
569567 HandlePhase (QuorumPhase::Contribute, QuorumPhase::Complain, curQuorumHash, 0.05 , fContributeStart , fContributeWait );
570568
571569 // Complain
572- auto fComplainStart = [this , &peerman]() { curSession->VerifyAndComplain (pendingComplaints, peerman); };
573- auto fComplainWait = [this , &peerman] {
570+ auto fComplainStart = [this , &connman, &peerman]() {
571+ curSession->VerifyAndComplain (connman, pendingComplaints, peerman);
572+ };
573+ auto fComplainWait = [this , &connman, &peerman] {
574574 return ProcessPendingMessageBatch<CDKGComplaint, MSG_QUORUM_COMPLAINT>(connman, *curSession, pendingComplaints,
575575 peerman, 8 );
576576 };
577577 HandlePhase (QuorumPhase::Complain, QuorumPhase::Justify, curQuorumHash, 0.05 , fComplainStart , fComplainWait );
578578
579579 // Justify
580580 auto fJustifyStart = [this , &peerman]() { curSession->VerifyAndJustify (pendingJustifications, peerman); };
581- auto fJustifyWait = [this , &peerman] {
581+ auto fJustifyWait = [this , &connman, & peerman] {
582582 return ProcessPendingMessageBatch<CDKGJustification, MSG_QUORUM_JUSTIFICATION>(connman, *curSession,
583583 pendingJustifications, peerman, 8 );
584584 };
585585 HandlePhase (QuorumPhase::Justify, QuorumPhase::Commit, curQuorumHash, 0.05 , fJustifyStart , fJustifyWait );
586586
587587 // Commit
588588 auto fCommitStart = [this , &peerman]() { curSession->VerifyAndCommit (pendingPrematureCommitments, peerman); };
589- auto fCommitWait = [this , &peerman] {
589+ auto fCommitWait = [this , &connman, & peerman] {
590590 return ProcessPendingMessageBatch<CDKGPrematureCommitment, MSG_QUORUM_PREMATURE_COMMITMENT>(
591591 connman, *curSession, pendingPrematureCommitments, peerman, 8 );
592592 };
@@ -600,12 +600,12 @@ void CDKGSessionHandler::HandleDKGRound(PeerManager& peerman)
600600 }
601601}
602602
603- void CDKGSessionHandler::PhaseHandlerThread (PeerManager& peerman)
603+ void CDKGSessionHandler::PhaseHandlerThread (CConnman& connman, PeerManager& peerman)
604604{
605605 while (!stopRequested) {
606606 try {
607607 LogPrint (BCLog::LLMQ_DKG, " CDKGSessionHandler::%s -- %s qi[%d] - starting HandleDKGRound\n " , __func__, params.name , quorumIndex);
608- HandleDKGRound (peerman);
608+ HandleDKGRound (connman, peerman);
609609 } catch (AbortPhaseException& e) {
610610 dkgDebugManager.UpdateLocalSessionStatus (params.type , quorumIndex, [&](CDKGDebugSessionStatus& status) {
611611 status.statusBits .aborted = true ;
0 commit comments