Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update verifier #632

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

Conversation

Alan-Jowett
Copy link
Collaborator

This pull request includes several changes to the libfuzzer/libfuzz_harness.cc file to enhance the verifier's functionality and improve code clarity. Additionally, it updates the external/ebpf-verifier submodule.

Enhancements to verifier functionality:

  • Introduced stored_invariants as a global std::optional<Invariants> to store pre-invariant data. (libfuzzer/libfuzz_harness.cc)
  • Added logic to convert instruction sequences to control-flow graphs and verify programs using stored invariants. (libfuzzer/libfuzz_harness.cc)
  • Enhanced the ubpf_debug_function to use the new invariant checking mechanism and provide detailed error messages. (libfuzzer/libfuzz_harness.cc)

Code clarity improvements:

  • Refactored options to use verbosity_opts for better organization. (libfuzzer/libfuzz_harness.cc)
  • Replaced the label string with a crab::label_t type that includes a stack frame prefix for better readability. (libfuzzer/libfuzz_harness.cc)

Submodule update:

  • Updated the external/ebpf-verifier submodule to the latest commit. (external/ebpf-verifier)

@coveralls
Copy link

coveralls commented Jan 21, 2025

Coverage Status

coverage: 78.848%. remained the same
when pulling 780b010 on Alan-Jowett:update_verifier
into 0620a1d on iovisor:main.

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.

2 participants