Skip to content

Share the fuzz harnesses' temporary directory setup in one helper - #2240

Open
xroche wants to merge 1 commit into
masterfrom
fuzz-tmpdir-helper
Open

xroche wants to merge 1 commit into
masterfrom
fuzz-tmpdir-helper

Conversation

@xroche

@xroche xroche commented Nov 14, 2026

Copy link
Copy Markdown
Owner

Six fuzz harnesses repeated code that creates a temporary directory and removes it at exit, so it now lives in one fuzz_tmpdir() helper in fuzz/fuzz.h. Each harness keeps its directory name and error handling. Under strace, every corpus run creates and removes the same directories as before.

Six harnesses (arc, cachendx, codec, response, singlefile, warc) each
built a $TMPDIR-or-/tmp template, called mkdtemp and registered an
atexit cleanup. fuzz_tmpdir() in fuzz.h now does that once. It is a
static header helper like fuzz_strdup, so no build file changes.

Each harness keeps its prefix, buffer size, failure handling and the
time its cleanup is registered. Every harness ran over its corpus
before and after under strace. The mkdir and rmdir sequences match with
TMPDIR set or unset, and a missing TMPDIR gives the same exit status.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
@xroche
xroche enabled auto-merge (squash) November 14, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant