aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/chain.h
diff options
context:
space:
mode:
authorAntoine Riard <ariard@student.42.fr>2019-04-11 14:37:30 +0000
committerAntoine Riard <ariard@student.42.fr>2019-08-01 13:43:26 -0400
commit8c8aa19b4b4fa56cd359092ef099bcfc7b26c334 (patch)
treee534b3c295f52f3ab25e122256ebb753716a5850 /src/interfaces/chain.h
parent7821821a23b68cc9ec49d69829ad4c939cb762e8 (diff)
Add BroadcastTransaction utility usage in Chain interface
Access through a broadcastTransaction method. Add a wait_callback flag to turn off race protection when wallet already track its tx being in mempool Standardise highfee, absurdfee variable name to max_tx_fee We drop the P2P check in BroadcastTransaction as g_connman is only called by RPCs and the wallet scheduler, both of which are initialized after g_connman is assigned and stopped before g_connman is reset.
Diffstat (limited to 'src/interfaces/chain.h')
-rw-r--r--src/interfaces/chain.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/interfaces/chain.h b/src/interfaces/chain.h
index e675defd47..2341506854 100644
--- a/src/interfaces/chain.h
+++ b/src/interfaces/chain.h
@@ -167,6 +167,11 @@ public:
//! Relay transaction.
virtual void relayTransaction(const uint256& txid) = 0;
+ //! Transaction is added to memory pool, if the transaction fee is below the
+ //! amount specified by max_tx_fee, and broadcast to all peers if relay is set to true.
+ //! Return false if the transaction could not be added due to the fee or for another reason.
+ virtual bool broadcastTransaction(const CTransactionRef& tx, std::string& err_string, const CAmount& max_tx_fee, bool relay) = 0;
+
//! Calculate mempool ancestor and descendant counts for the given transaction.
virtual void getTransactionAncestry(const uint256& txid, size_t& ancestors, size_t& descendants) = 0;