mempool.h raw

   1  // Copyright (c) 2022 The Limenka 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 LIMENKA_TEST_FUZZ_UTIL_MEMPOOL_H
   6  #define LIMENKA_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]] bool SanityCheckForConsumeTxMemPoolEntry(const CTransaction& tx) noexcept;
  25  [[nodiscard]] CTxMemPoolEntry ConsumeTxMemPoolEntry(FuzzedDataProvider& fuzzed_data_provider, const CTransaction& tx) noexcept;
  26  
  27  #endif // LIMENKA_TEST_FUZZ_UTIL_MEMPOOL_H
  28