Page MenuHomePhabricator

tests: Add fuzzing harnesses for functions/classes in chain.h and protocol.h
ClosedPublic

Authored by Fabien on Jan 20 2021, 10:25.

Details

Summary
Add fuzzing harnesses for functions/classes in chain.h and protocol.h.

Backport of core PR18445.

Adapted to match our codebase.

Test Plan
ninja bitcoin-fuzzers
./test/fuzz/test_runner.py <path_to_corpus>

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Fabien requested review of this revision.Jan 20 2021, 10:25
This revision is now accepted and ready to land.Jan 20 2021, 14:50
majcosta requested changes to this revision.Jan 20 2021, 15:18
majcosta added a subscriber: majcosta.
majcosta added inline comments.
src/test/fuzz/chain.cpp
34 ↗(On Diff #27111)

looks like GetChainTxCount(), GetChainSize(), UpdateChainStats(), GetHeaderReceivedTime(), GetReceivedTimeDiff() are missing

src/test/fuzz/protocol.cpp
27 ↗(On Diff #27111)

same for GetKind(), IsTx() and IsSomeBlock()

This revision now requires changes to proceed.Jan 20 2021, 15:18
This revision is now accepted and ready to land.Jan 20 2021, 16:47