Repository navigation
Refuse allocation links with uninstrumented inputs, and conflicting lock pins (from #9) - #13
Merged
Merged
Conversation
Add validation for SHA256 values in locks.
Add error handling for unsupported input types in link-fuzz-target.
Clarify linking process and lock comparison in documentation.
clang's --for-linker (and --for-linker=) is another spelling of -Xlinker, and a --config file can hold -L, -l and -Wl options, so either could still bring in an archive whose allocation calls are not rewritten. Refuse both forms of each, as -Xlinker is refused, and test them for both allocation engines.
linuxnow
pushed a commit
to FreeREAC/oss-verify
that referenced
this pull request
Nov 8, 2026
…ock pins (theorem-labs#13) From theorem-labs#9 by Arunim Shukla. Allocation-failure and counting links refuse library selectors, linker forwarding (including clang's --for-linker), clang configuration files, linker scripts, response files and sources, so every input's allocation calls are rewritten. Repeated --lock arguments that pin different SHA-256s for the same target and build stop the command before building. Co-authored-by: Arunim Shukla <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This lands #9 by @arunimshukla from a branch of this repository, because the enrollment checks reject a fork's pull request that changes files outside
projects/. The four commits are Arunim's, unchanged, plus one fix from review.-l), linker forwarding (-Wl,,-Xlinker, and, from review, clang's--for-linker), clang configuration files (--config, from review), linker scripts, response files and source files. A normal$LIB_FUZZING_ENGINElink is unchanged, so no released binary changes.--lockarguments used to merge binary pins last-write-wins, so a mismatching lock followed by a matching one passed. Conflicting SHA-256s for the same target and build now stop the command before building. Identical and disjoint pins still combine.On main, 16 of the new cases fail. With this change all of them pass, and the whole suite passes (134 passed, 90 skipped, the Docker tests, in a container with no network and no Docker).