Skip to content

Add build identity reads for PE, ELF and Mach-O - #142

Open
ero-qt wants to merge 4 commits into
LiveSplit:masterfrom
ero-qt:binary-identity
Open

Add build identity reads for PE, ELF and Mach-O#142
ero-qt wants to merge 4 commits into
LiveSplit:masterfrom
ero-qt:binary-identity

Conversation

@ero-qt

@ero-qt ero-qt commented Aug 28, 2026

Copy link
Copy Markdown

First piece of #141: reading a module's build identity out of mapped memory, so offsets can later be keyed to exact builds instead of version heuristics.

  • pe::DebugId: GUID and age from the CodeView debug directory entry, the pair symbol servers key on.
  • elf::build_id: the NT_GNU_BUILD_ID note.
  • macho::uuid: the LC_UUID load command.

Also introduces the first unit tests in the crate: a small mock host implementing the env process imports over in-memory buffers, so the readers run against hand-laid images on the host.

Since there's no precedent for tests here, happy to restructure if you'd prefer a different shape, like tests split into their own files or another home for the mock.

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