test(proto): add decoder fuzzing

Add isolated cargo-fuzz/libFuzzer infrastructure for irtt-proto, fuzzing
decode_request, decode_open_reply, decode_echo_reply, Params::decode(_with_presence),
and the varint codec against arbitrary and structurally-derived wire input.
Each target's core invariant is that arbitrary bytes must never panic; a
small clean-room seed corpus (generated from irtt-proto's own encoders) and
a bounded nightly smoke CI workflow are included. The fuzz project is its
own isolated cargo workspace and does not affect the root workspace, its
lockfile, or any published crate's dependency graph.
This commit is contained in:
Nils Andreas Svee committed 2026-08-19 23:33:27 +07:00
1 parent 9b70bd8b9d
commit 719073df1c
29 files changed
+766

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
target
artifacts
coverage
# The committed seed corpus under corpus/ is small and curated by hand; a
# local `cargo fuzz run` grows each target's corpus directory far beyond
# that, so ignore anything not already tracked instead of the directory
# itself.
corpus/*/*
!corpus/*/