[net processing] Move IgnoresIncomingTxs to PeerManagerInfo

This commit is contained in:
dergoegge 2023-11-29 12:03:49 +00:00 committed by stickies-v
parent 7d9c3ec622
commit 92e72b5d0d
No known key found for this signature in database
GPG key ID: 5CB1CE6E5E66A757
3 changed files with 3 additions and 5 deletions

View file

@ -519,7 +519,6 @@ public:
EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex); EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
bool GetNodeStateStats(NodeId nodeid, CNodeStateStats& stats) const override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex); bool GetNodeStateStats(NodeId nodeid, CNodeStateStats& stats) const override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
PeerManagerInfo GetInfo() const override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex); PeerManagerInfo GetInfo() const override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
bool IgnoresIncomingTxs() override { return m_opts.ignore_incoming_txs; }
void SendPings() override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex); void SendPings() override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
void RelayTransaction(const uint256& txid, const uint256& wtxid) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex); void RelayTransaction(const uint256& txid, const uint256& wtxid) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
void SetBestBlock(int height, std::chrono::seconds time) override void SetBestBlock(int height, std::chrono::seconds time) override
@ -1809,6 +1808,7 @@ PeerManagerInfo PeerManagerImpl::GetInfo() const
{ {
return PeerManagerInfo{ return PeerManagerInfo{
.median_outbound_time_offset = m_outbound_time_offsets.Median(), .median_outbound_time_offset = m_outbound_time_offsets.Median(),
.ignores_incoming_txs = m_opts.ignore_incoming_txs,
}; };
} }

View file

@ -48,6 +48,7 @@ struct CNodeStateStats {
struct PeerManagerInfo { struct PeerManagerInfo {
std::chrono::seconds median_outbound_time_offset{0s}; std::chrono::seconds median_outbound_time_offset{0s};
bool ignores_incoming_txs{false};
}; };
class PeerManager : public CValidationInterface, public NetEventsInterface class PeerManager : public CValidationInterface, public NetEventsInterface
@ -93,9 +94,6 @@ public:
/** Get peer manager info. */ /** Get peer manager info. */
virtual PeerManagerInfo GetInfo() const = 0; virtual PeerManagerInfo GetInfo() const = 0;
/** Whether this node ignores txs received over p2p. */
virtual bool IgnoresIncomingTxs() = 0;
/** Relay transaction to all peers. */ /** Relay transaction to all peers. */
virtual void RelayTransaction(const uint256& txid, const uint256& wtxid) = 0; virtual void RelayTransaction(const uint256& txid, const uint256& wtxid) = 0;

View file

@ -679,7 +679,7 @@ static RPCHelpMan getnetworkinfo()
} }
if (node.peerman) { if (node.peerman) {
auto peerman_info{node.peerman->GetInfo()}; auto peerman_info{node.peerman->GetInfo()};
obj.pushKV("localrelay", !node.peerman->IgnoresIncomingTxs()); obj.pushKV("localrelay", !peerman_info.ignores_incoming_txs);
obj.pushKV("timeoffset", Ticks<std::chrono::seconds>(peerman_info.median_outbound_time_offset)); obj.pushKV("timeoffset", Ticks<std::chrono::seconds>(peerman_info.median_outbound_time_offset));
} }
if (node.connman) { if (node.connman) {