Skip to content

fix(libafl): restart client after SIGSEGV - #151

Merged
kevin-valerio merged 1 commit into
masterfrom
fix/libafl-sigsegv-restart
Jul 23, 2026
Merged

fix(libafl): restart client after SIGSEGV#151
kevin-valerio merged 1 commit into
masterfrom
fix/libafl-sigsegv-restart

Conversation

@kevin-valerio

Copy link
Copy Markdown
Collaborator

Fixes #149 by updating the LibAFL fork's signal-recursion exit check and adding a SIGSEGV restart regression test.

Copilot AI review requested due to automatic review settings July 23, 2026 09:14

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the LibAFL integration to keep fuzzing after a target SIGSEGV by pulling in an updated LibAFL-git-aware revision, and adds a regression example + CI smoke coverage to ensure the launcher restarts the client instead of treating the crash as a crash-handler failure.

Changes:

  • Bump LibAFL-git-aware dependency (via Cargo.lock) to include the SIGSEGV/crash-handler recursion fix.
  • Add a new sigsegv_restart Go fuzzing example plus a dedicated LibAFL smoke test script.
  • Document that disabling stop_all_fuzzers_on_panic keeps fuzzing and restarts the crashing client (including SIGSEGV).

Reviewed changes

Copilot reviewed 8 out of 9 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
test/gosentry/examples/sigsegv_restart/sigsegv.go Adds a CGO helper that triggers SIGSEGV for regression testing.
test/gosentry/examples/sigsegv_restart/sigsegv_test.go Adds a fuzz harness that deterministically triggers SIGSEGV from a seeded input.
test/gosentry/examples/sigsegv_restart/go.mod Adds a module for the new SIGSEGV restart example.
README.md Documents continued fuzzing + client restart behavior when stop_all_fuzzers_on_panic=false.
misc/gosentry/USE_LIBAFL.md Documents client restart behavior after crashes (including SIGSEGV).
misc/gosentry/tests/smoke_use_libafl.sh Wires the new SIGSEGV restart smoke test into the LibAFL smoke suite.
misc/gosentry/tests/smoke_use_libafl_sigsegv_restart.sh New smoke test validating crash is saved and the client restarts after SIGSEGV.
golibafl/Cargo.lock Updates the pinned LibAFL-git-aware git revision containing the fix.
.github/workflows/smoke_use_libafl.yml Runs the new SIGSEGV restart smoke test in CI.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -0,0 +1,3 @@
module sigsegv_restart
@kevin-valerio
kevin-valerio merged commit 9ec8e56 into master Jul 23, 2026
16 checks passed
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.

Bug in LibAFL's SIGSEGV handling

2 participants