MCPcopy Create free account
hub / github.com/ElementsProject/elements / Send

Method Send

src/test/fuzz/util.cpp:44–74  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

42}
43
44ssize_t FuzzedSock::Send(const void* data, size_t len, int flags) const
45{
46 constexpr std::array send_errnos{
47 EACCES,
48 EAGAIN,
49 EALREADY,
50 EBADF,
51 ECONNRESET,
52 EDESTADDRREQ,
53 EFAULT,
54 EINTR,
55 EINVAL,
56 EISCONN,
57 EMSGSIZE,
58 ENOBUFS,
59 ENOMEM,
60 ENOTCONN,
61 ENOTSOCK,
62 EOPNOTSUPP,
63 EPIPE,
64 EWOULDBLOCK,
65 };
66 if (m_fuzzed_data_provider.ConsumeBool()) {
67 return len;
68 }
69 const ssize_t r = m_fuzzed_data_provider.ConsumeIntegralInRange<ssize_t>(-1, len);
70 if (r == -1) {
71 SetFuzzedErrNo(m_fuzzed_data_provider, send_errnos);
72 }
73 return r;
74}
75
76ssize_t FuzzedSock::Recv(void* buf, size_t len, int flags) const
77{

Callers 2

SendAndRecvMessageFunction · 0.45
BOOST_AUTO_TEST_CASEFunction · 0.45

Calls 2

SetFuzzedErrNoFunction · 0.85
ConsumeBoolMethod · 0.80

Tested by

no test coverage detected