diff options
Diffstat (limited to 'src/node/transaction.h')
-rw-r--r-- | src/node/transaction.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/node/transaction.h b/src/node/transaction.h index 08ceace7f8..cf64fc28d9 100644 --- a/src/node/transaction.h +++ b/src/node/transaction.h @@ -11,14 +11,19 @@ #include <util/error.h> /** - * Broadcast a transaction + * Submit a transaction to the mempool and (optionally) relay it to all P2P peers. + * + * Mempool submission can be synchronous (will await mempool entry notification + * over the CValidationInterface) or asynchronous (will submit and not wait for + * notification), depending on the value of wait_callback. wait_callback MUST + * NOT be set while cs_main, cs_mempool or cs_wallet are held to avoid + * deadlock. * * @param[in] tx the transaction to broadcast * @param[out] &err_string reference to std::string to fill with error string if available * @param[in] max_tx_fee reject txs with fees higher than this (if 0, accept any fee) * @param[in] relay flag if both mempool insertion and p2p relay are requested * @param[in] wait_callback, wait until callbacks have been processed to avoid stale result due to a sequentially RPC. - * It MUST NOT be set while cs_main, cs_mempool or cs_wallet are held to avoid deadlock * return error */ NODISCARD TransactionError BroadcastTransaction(CTransactionRef tx, std::string& err_string, const CAmount& max_tx_fee, bool relay, bool wait_callback); |