-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
zstd decompression regressions (fuzz test results) #24817
Copy link
Copy link
Closed
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.standard libraryThis issue involves writing Zig code for the standard library.This issue involves writing Zig code for the standard library.
Milestone
Description
Metadata
Metadata
Assignees
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.standard libraryThis issue involves writing Zig code for the standard library.This issue involves writing Zig code for the standard library.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Zig Version
master
Steps to Reproduce and Observed Behavior
These results are just testing for crashes/hangs, not correctness (yet).
zstd-fuzz-20250812-1.zip
Easiest way to reproduce the errors:
zig build fuzz-zstandard-debug(no AFL++ required, this just builds the pure Zig version for debugging)./zig-out/bin/fuzz-zstandard-debug < 'path-to-unzipped-repros/crashes/id:000000,sig:06,src:000000,time:8842,execs:3848,op:ext_UO,pos:0'All the crashes have this stack trace:
The hangs seem to be the same as the hangs found with
flatein #24741, where there's an infinite loop here:zig/lib/std/Io/Writer.zig
Lines 381 to 383 in 0d0f09f
but it's being called from here:
zig/lib/std/compress/zstd/Decompress.zig
Line 260 in 59de7e3
Expected Behavior
No crashes/hangs