|
|
|
@ -5,6 +5,7 @@
|
|
|
|
|
#include <test/fuzz/util.h>
|
|
|
|
|
#include <test/util/script.h>
|
|
|
|
|
#include <util/rbf.h>
|
|
|
|
|
#include <util/time.h>
|
|
|
|
|
#include <version.h>
|
|
|
|
|
|
|
|
|
|
FuzzedSock::FuzzedSock(FuzzedDataProvider& fuzzed_data_provider)
|
|
|
|
@ -216,6 +217,14 @@ void FillNode(FuzzedDataProvider& fuzzed_data_provider, CNode& node, bool init_v
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int64_t ConsumeTime(FuzzedDataProvider& fuzzed_data_provider, const std::optional<int64_t>& min, const std::optional<int64_t>& max) noexcept
|
|
|
|
|
{
|
|
|
|
|
// Avoid t=0 (1970-01-01T00:00:00Z) since SetMockTime(0) disables mocktime.
|
|
|
|
|
static const int64_t time_min = ParseISO8601DateTime("1970-01-01T00:00:01Z");
|
|
|
|
|
static const int64_t time_max = ParseISO8601DateTime("9999-12-31T23:59:59Z");
|
|
|
|
|
return fuzzed_data_provider.ConsumeIntegralInRange<int64_t>(min.value_or(time_min), max.value_or(time_max));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CMutableTransaction ConsumeTransaction(FuzzedDataProvider& fuzzed_data_provider, const std::optional<std::vector<uint256>>& prevout_txids, const int max_num_in, const int max_num_out) noexcept
|
|
|
|
|
{
|
|
|
|
|
CMutableTransaction tx_mut;
|
|
|
|
|