mempool.h raw

   1  // Copyright (c) 2022-present The Bitcoin Core developers
   2  // Distributed under the MIT software license, see the accompanying
   3  // file COPYING or http://www.opensource.org/licenses/mit-license.php.
   4  
   5  #ifndef BITCOIN_TEST_FUZZ_UTIL_MEMPOOL_H
   6  #define BITCOIN_TEST_FUZZ_UTIL_MEMPOOL_H
   7  
   8  #include <kernel/mempool_entry.h>
   9  #include <validation.h>
  10  
  11  class CTransaction;
  12  class CTxMemPool;
  13  class FuzzedDataProvider;
  14  
  15  class DummyChainState final : public Chainstate
  16  {
  17  public:
  18      void SetMempool(CTxMemPool* mempool)
  19      {
  20          m_mempool = mempool;
  21      }
  22  };
  23  
  24  [[nodiscard]] CTxMemPoolEntry ConsumeTxMemPoolEntry(FuzzedDataProvider& fuzzed_data_provider, const CTransaction& tx, uint32_t max_height=std::numeric_limits<uint32_t>::max()) noexcept;
  25  
  26  #endif // BITCOIN_TEST_FUZZ_UTIL_MEMPOOL_H
  27