aboutsummaryrefslogtreecommitdiff
path: root/src/test/fuzz/util.cpp
diff options
context:
space:
mode:
authorVasil Dimov <vd@FreeBSD.org>2021-04-07 11:02:25 +0200
committerVasil Dimov <vd@FreeBSD.org>2021-04-15 08:19:48 +0200
commit0c90ff1429deaa556c0509c13cdd5aef5df9c0d4 (patch)
tree60aaabffdc4c394eb5421c3bfe1d3ab1e4cfcf92 /src/test/fuzz/util.cpp
parent5198a02de4e7a1b0efe28c6095745ce59f7f98c4 (diff)
downloadbitcoin-0c90ff1429deaa556c0509c13cdd5aef5df9c0d4.tar.xz
fuzz: set errno from FuzzedSock::Wait() if it simulates a failure
Diffstat (limited to 'src/test/fuzz/util.cpp')
-rw-r--r--src/test/fuzz/util.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/test/fuzz/util.cpp b/src/test/fuzz/util.cpp
index 2da0e84116..9ab7145b8a 100644
--- a/src/test/fuzz/util.cpp
+++ b/src/test/fuzz/util.cpp
@@ -9,7 +9,13 @@
bool FuzzedSock::Wait(std::chrono::milliseconds timeout, Event requested, Event* occurred) const
{
+ constexpr std::array wait_errnos{
+ EBADF,
+ EINTR,
+ EINVAL,
+ };
if (!m_fuzzed_data_provider.ConsumeBool()) {
+ SetFuzzedErrNo(m_fuzzed_data_provider, wait_errnos);
return false;
}
if (occurred) *occurred = 0;