Implement bounded Binary LLSD codec

This commit is contained in:
2026-08-09 00:29:07 +00:00
parent d152e80ef9
commit 7a4f1f2fb1
17 changed files with 965 additions and 208 deletions

View File

@@ -0,0 +1,11 @@
# Binary LLSD malformed seed corpus
`malformed.hex` contains one named, hex-encoded input per line. The native
Binary LLSD unit test covers the same cases directly, so corpus drift is caught
without requiring a fuzzing tool in the normal workspace. A fuzz runner should
decode each even-length hex payload to raw bytes before mutation.
The seeds cover empty/truncated scalar payloads, unknown markers, negative and
oversized lengths, missing array/map/key terminators, non-finite dates, and
excessive nesting. There are currently no upstream translated malformed Binary
LLSD cases beyond these issue-owned hardening cases.

View File

@@ -0,0 +1,15 @@
empty:
unknown_marker:3f
truncated_integer:690000
truncated_real:72000000
truncated_uuid:75313233
negative_binary_length:62ffffffff
truncated_binary_length:62
negative_string_length:73ffffffff
negative_array_count:5bffffffff
negative_map_count:7bffffffff
oversized_string_length:737fffffff
missing_array_end:5b0000000121
missing_map_key_marker:7b0000000178
missing_map_end:7b000000005d
non_finite_date:64000000000000f87f