@@ -768,13 +768,13 @@ void CSigSharesManager::ProcessSigShare(const CSigShare& sigShare, const CQuorum
768768 }
769769
770770 if (canTryRecovery) {
771- TryRecoverSig (quorum, sigShare.getId (), sigShare.getMsgHash ());
771+ TryRecoverSig (* quorum, sigShare.getId (), sigShare.getMsgHash ());
772772 }
773773}
774774
775- void CSigSharesManager::TryRecoverSig (const CQuorumCPtr & quorum, const uint256& id, const uint256& msgHash)
775+ void CSigSharesManager::TryRecoverSig (const CQuorum & quorum, const uint256& id, const uint256& msgHash)
776776{
777- if (sigman.HasRecoveredSigForId (quorum-> params .type , id)) {
777+ if (sigman.HasRecoveredSigForId (quorum. params .type , id)) {
778778 return ;
779779 }
780780
@@ -783,13 +783,13 @@ void CSigSharesManager::TryRecoverSig(const CQuorumCPtr& quorum, const uint256&
783783 {
784784 LOCK (cs);
785785
786- auto signHash = SignHash (quorum-> params .type , quorum-> qc ->quorumHash , id, msgHash).Get ();
786+ auto signHash = SignHash (quorum. params .type , quorum. qc ->quorumHash , id, msgHash).Get ();
787787 const auto * sigSharesForSignHash = sigShares.GetAllForSignHash (signHash);
788788 if (sigSharesForSignHash == nullptr ) {
789789 return ;
790790 }
791791
792- if (quorum-> params .is_single_member ()) {
792+ if (quorum. params .is_single_member ()) {
793793 if (sigSharesForSignHash->empty ()) {
794794 LogPrint (BCLog::LLMQ_SIGS, /* Continued */
795795 " CSigSharesManager::%s -- impossible to recover single-node signature - no shares yet. id=%s, "
@@ -802,22 +802,22 @@ void CSigSharesManager::TryRecoverSig(const CQuorumCPtr& quorum, const uint256&
802802 LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- recover single-node signature. id=%s, msgHash=%s\n " ,
803803 __func__, id.ToString (), msgHash.ToString ());
804804
805- auto rs = std::make_shared<CRecoveredSig>(quorum-> params .type , quorum-> qc ->quorumHash , id, msgHash,
805+ auto rs = std::make_shared<CRecoveredSig>(quorum. params .type , quorum. qc ->quorumHash , id, msgHash,
806806 recoveredSig);
807807 sigman.ProcessRecoveredSig (rs, m_peerman);
808808 return ; // end of single-quorum processing
809809 }
810810
811- sigSharesForRecovery.reserve ((size_t ) quorum-> params .threshold );
812- idsForRecovery.reserve ((size_t ) quorum-> params .threshold );
813- for (auto it = sigSharesForSignHash->begin (); it != sigSharesForSignHash->end () && sigSharesForRecovery.size () < size_t (quorum-> params .threshold ); ++it) {
811+ sigSharesForRecovery.reserve ((size_t ) quorum. params .threshold );
812+ idsForRecovery.reserve ((size_t ) quorum. params .threshold );
813+ for (auto it = sigSharesForSignHash->begin (); it != sigSharesForSignHash->end () && sigSharesForRecovery.size () < size_t (quorum. params .threshold ); ++it) {
814814 const auto & sigShare = it->second ;
815815 sigSharesForRecovery.emplace_back (sigShare.sigShare .Get ());
816- idsForRecovery.emplace_back (quorum-> members [sigShare.getQuorumMember ()]->proTxHash );
816+ idsForRecovery.emplace_back (quorum. members [sigShare.getQuorumMember ()]->proTxHash );
817817 }
818818
819819 // check if we can recover the final signature
820- if (sigSharesForRecovery.size () < size_t (quorum-> params .threshold )) {
820+ if (sigSharesForRecovery.size () < size_t (quorum. params .threshold )) {
821821 return ;
822822 }
823823 }
@@ -834,14 +834,14 @@ void CSigSharesManager::TryRecoverSig(const CQuorumCPtr& quorum, const uint256&
834834 LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- recovered signature. id=%s, msgHash=%s, time=%d\n " , __func__,
835835 id.ToString (), msgHash.ToString (), t.count ());
836836
837- auto rs = std::make_shared<CRecoveredSig>(quorum-> params .type , quorum-> qc ->quorumHash , id, msgHash, recoveredSig);
837+ auto rs = std::make_shared<CRecoveredSig>(quorum. params .type , quorum. qc ->quorumHash , id, msgHash, recoveredSig);
838838
839839 // There should actually be no need to verify the self-recovered signatures as it should always succeed. Let's
840840 // however still verify it from time to time, so that we have a chance to catch bugs. We do only this sporadic
841841 // verification because this is unbatched and thus slow verification that happens here.
842842 if (((recoveredSigsCounter++) % 100 ) == 0 ) {
843843 auto signHash = rs->buildSignHash ();
844- bool valid = recoveredSig.VerifyInsecure (quorum-> qc ->quorumPublicKey , signHash.Get ());
844+ bool valid = recoveredSig.VerifyInsecure (quorum. qc ->quorumPublicKey , signHash.Get ());
845845 if (!valid) {
846846 // this should really not happen as we have verified all signature shares before
847847 LogPrintf (" CSigSharesManager::%s -- own recovered signature is invalid. id=%s, msgHash=%s\n " , __func__,
@@ -853,13 +853,13 @@ void CSigSharesManager::TryRecoverSig(const CQuorumCPtr& quorum, const uint256&
853853 sigman.ProcessRecoveredSig (rs, m_peerman);
854854}
855855
856- CDeterministicMNCPtr CSigSharesManager::SelectMemberForRecovery (const CQuorumCPtr & quorum, const uint256 &id, int attempt)
856+ CDeterministicMNCPtr CSigSharesManager::SelectMemberForRecovery (const CQuorum & quorum, const uint256 &id, int attempt)
857857{
858- assert (attempt < quorum-> params .recoveryMembers );
858+ assert (attempt < quorum. params .recoveryMembers );
859859
860860 std::vector<std::pair<uint256, CDeterministicMNCPtr>> v;
861- v.reserve (quorum-> members .size ());
862- for (const auto & dmn : quorum-> members ) {
861+ v.reserve (quorum. members .size ());
862+ for (const auto & dmn : quorum. members ) {
863863 auto h = ::SerializeHash (std::make_pair (dmn->proTxHash , id));
864864 v.emplace_back (h, dmn);
865865 }
@@ -941,7 +941,7 @@ bool CSigSharesManager::AsyncSignIfMember(Consensus::LLMQType llmqType, CSigning
941941
942942 if (allowReSign) {
943943 // make us re-announce all known shares (other nodes might have run into a timeout)
944- ForceReAnnouncement (quorum, llmqType, id, msgHash);
944+ ForceReAnnouncement (* quorum, llmqType, id, msgHash);
945945 }
946946 AsyncSign (std::move (quorum), id, msgHash);
947947
@@ -1128,7 +1128,7 @@ void CSigSharesManager::CollectSigSharesToSendConcentrated(std::unordered_map<No
11281128 int64_t waitTime = exp2 (signedSession.attempt ) * EXP_SEND_FOR_RECOVERY_TIMEOUT;
11291129 waitTime = std::min (MAX_SEND_FOR_RECOVERY_TIMEOUT, waitTime);
11301130 signedSession.nextAttemptTime = curTime + waitTime;
1131- auto dmn = SelectMemberForRecovery (signedSession.quorum , signedSession.sigShare .getId (), signedSession.attempt );
1131+ auto dmn = SelectMemberForRecovery (* signedSession.quorum , signedSession.sigShare .getId (), signedSession.attempt );
11321132 signedSession.attempt ++;
11331133
11341134 LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- signHash=%s, sending to %s, attempt=%d\n " , __func__,
@@ -1611,7 +1611,7 @@ void CSigSharesManager::SignPendingSigShares()
16111611 WITH_LOCK (cs_pendingSigns, v.swap (pendingSigns));
16121612
16131613 for (const auto & [pQuorum, id, msgHash] : v) {
1614- auto opt_sigShare = CreateSigShare (pQuorum, id, msgHash);
1614+ auto opt_sigShare = CreateSigShare (* pQuorum, id, msgHash);
16151615
16161616 if (opt_sigShare.has_value () && opt_sigShare->sigShare .Get ().IsValid ()) {
16171617 auto sigShare = *opt_sigShare;
@@ -1629,23 +1629,23 @@ void CSigSharesManager::SignPendingSigShares()
16291629 }
16301630}
16311631
1632- std::optional<CSigShare> CSigSharesManager::CreateSigShare (const CQuorumCPtr & quorum, const uint256& id, const uint256& msgHash) const
1632+ std::optional<CSigShare> CSigSharesManager::CreateSigShare (const CQuorum & quorum, const uint256& id, const uint256& msgHash) const
16331633{
16341634 cxxtimer::Timer t (true );
16351635 auto activeMasterNodeProTxHash = m_mn_activeman.GetProTxHash ();
16361636
1637- if (!quorum-> IsValidMember (activeMasterNodeProTxHash)) {
1637+ if (!quorum. IsValidMember (activeMasterNodeProTxHash)) {
16381638 return std::nullopt ;
16391639 }
16401640
1641- if (quorum-> params .is_single_member ()) {
1642- int memberIdx = quorum-> GetMemberIndex (activeMasterNodeProTxHash);
1641+ if (quorum. params .is_single_member ()) {
1642+ int memberIdx = quorum. GetMemberIndex (activeMasterNodeProTxHash);
16431643 if (memberIdx == -1 ) {
16441644 // this should really not happen (IsValidMember gave true)
16451645 return std::nullopt ;
16461646 }
16471647
1648- CSigShare sigShare (quorum-> params .type , quorum-> qc ->quorumHash , id, msgHash, uint16_t (memberIdx), {});
1648+ CSigShare sigShare (quorum. params .type , quorum. qc ->quorumHash , id, msgHash, uint16_t (memberIdx), {});
16491649 uint256 signHash = sigShare.buildSignHash ().Get ();
16501650
16511651 // TODO: This one should be SIGN by QUORUM key, not by OPERATOR key
@@ -1665,23 +1665,23 @@ std::optional<CSigShare> CSigSharesManager::CreateSigShare(const CQuorumCPtr& qu
16651665 " CSigSharesManager::%s -- created sigShare. signHash=%s, id=%s, msgHash=%s, llmqType=%d, quorum=%s, "
16661666 " time=%s\n " ,
16671667 __func__, signHash.ToString (), sigShare.getId ().ToString (), sigShare.getMsgHash ().ToString (),
1668- ToUnderlying (quorum-> params .type ), quorum-> qc ->quorumHash .ToString (), t.count ());
1668+ ToUnderlying (quorum. params .type ), quorum. qc ->quorumHash .ToString (), t.count ());
16691669
16701670 return sigShare;
16711671 }
1672- const CBLSSecretKey& skShare = quorum-> GetSkShare ();
1672+ const CBLSSecretKey& skShare = quorum. GetSkShare ();
16731673 if (!skShare.IsValid ()) {
1674- LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- we don't have our skShare for quorum %s\n " , __func__, quorum-> qc ->quorumHash .ToString ());
1674+ LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- we don't have our skShare for quorum %s\n " , __func__, quorum. qc ->quorumHash .ToString ());
16751675 return std::nullopt ;
16761676 }
16771677
1678- int memberIdx = quorum-> GetMemberIndex (activeMasterNodeProTxHash);
1678+ int memberIdx = quorum. GetMemberIndex (activeMasterNodeProTxHash);
16791679 if (memberIdx == -1 ) {
16801680 // this should really not happen (IsValidMember gave true)
16811681 return std::nullopt ;
16821682 }
16831683
1684- CSigShare sigShare (quorum-> params .type , quorum-> qc ->quorumHash , id, msgHash, uint16_t (memberIdx), {});
1684+ CSigShare sigShare (quorum. params .type , quorum. qc ->quorumHash , id, msgHash, uint16_t (memberIdx), {});
16851685 uint256 signHash = sigShare.buildSignHash ().Get ();
16861686
16871687 sigShare.sigShare .Set (skShare.Sign (signHash, bls::bls_legacy_scheme.load ()), bls::bls_legacy_scheme.load ());
@@ -1694,20 +1694,20 @@ std::optional<CSigShare> CSigSharesManager::CreateSigShare(const CQuorumCPtr& qu
16941694 sigShare.UpdateKey ();
16951695
16961696 LogPrint (BCLog::LLMQ_SIGS, " CSigSharesManager::%s -- created sigShare. signHash=%s, id=%s, msgHash=%s, llmqType=%d, quorum=%s, time=%s\n " , __func__,
1697- signHash.ToString (), sigShare.getId ().ToString (), sigShare.getMsgHash ().ToString (), ToUnderlying (quorum-> params .type ), quorum-> qc ->quorumHash .ToString (), t.count ());
1697+ signHash.ToString (), sigShare.getId ().ToString (), sigShare.getMsgHash ().ToString (), ToUnderlying (quorum. params .type ), quorum. qc ->quorumHash .ToString (), t.count ());
16981698
16991699 return sigShare;
17001700}
17011701
17021702// causes all known sigShares to be re-announced
1703- void CSigSharesManager::ForceReAnnouncement (const CQuorumCPtr & quorum, Consensus::LLMQType llmqType, const uint256& id, const uint256& msgHash)
1703+ void CSigSharesManager::ForceReAnnouncement (const CQuorum & quorum, Consensus::LLMQType llmqType, const uint256& id, const uint256& msgHash)
17041704{
17051705 if (IsAllMembersConnectedEnabled (llmqType, m_sporkman)) {
17061706 return ;
17071707 }
17081708
17091709 LOCK (cs);
1710- auto signHash = SignHash (llmqType, quorum-> qc ->quorumHash , id, msgHash).Get ();
1710+ auto signHash = SignHash (llmqType, quorum. qc ->quorumHash , id, msgHash).Get ();
17111711 if (const auto *const sigs = sigShares.GetAllForSignHash (signHash)) {
17121712 for (const auto & [quorumMemberIndex, _] : *sigs) {
17131713 // re-announce every sigshare to every node
0 commit comments