diff --git a/src/masternode/utils.cpp b/src/masternode/utils.cpp index f8cc6e0029..a3256f899d 100644 --- a/src/masternode/utils.cpp +++ b/src/masternode/utils.cpp @@ -61,6 +61,9 @@ void CMasternodeUtils::ProcessMasternodeConnections(CConnman& connman) } else if (GetSystemTimeInSeconds() - pnode->nTimeConnected < 5) { // non-verified, give it some time to verify itself return; + } else if (pnode->qwatch) { + // keep watching nodes + return; } // we're not disconnecting masternode probes for at least a few seconds if (pnode->m_masternode_probe_connection && GetSystemTimeInSeconds() - pnode->nTimeConnected < 5) return; diff --git a/src/net_processing.cpp b/src/net_processing.cpp index d53c0138b4..f4ccec94e6 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -2716,7 +2716,7 @@ bool static ProcessMessage(CNode* pfrom, const std::string& msg_type, CDataStrea // Tell our peer that he should send us CoinJoin queue messages connman->PushMessage(pfrom, msgMaker.Make(NetMsgType::SENDDSQUEUE, true)); - if (llmq::CLLMQUtils::IsWatchQuorumsEnabled() && !pfrom->m_masternode_connection) { + if (llmq::CLLMQUtils::IsWatchQuorumsEnabled() && connman->IsMasternodeQuorumNode(pfrom)) { connman->PushMessage(pfrom, msgMaker.Make(NetMsgType::QWATCH)); }