awgh 4e22595eaa Add relocation CRUD and dyld bind kinds
add remove APIs for ELF/Mach-O/PE relocations and relocation sections
allow ELF alloc relocation sections to grow via new PT_LOAD; stabilize section write order
add Mach-O scattered relocs plus weak/lazy bind stream support
add PE COFF relocation helpers (symbol lookup)
update README and tests
2026-01-28 15:00:15 -08:00
2020-08-27 08:24:31 -04:00
2020-09-28 09:16:56 -04:00

Debug

We have forked the debug/ folder from the standard library, to take direct control of the debug/elf, debug/macho, and debug/pe binary format parsers. To these parsers, we have added the ability to also generate executable files from the parsed intermediate data structures. This lets us load a file with debug parsers, make changes by interacting with the parser structures, and then write those changes back out to a new file.

Relocation editing

  • debug/elf: AddRelocation, AddRelocations, ReplaceRelocations, RemoveRelocations, AddRelocationForSymbol, AddRelocationForAddr, AddRelocationsToRelocSection, RemoveRelocationsFromRelocSection (alloc relocs can now grow via a new PT_LOAD when needed)
  • debug/macho: AddRelocation, AddRelocations, ReplaceRelocations, RemoveRelocations, AddScatteredRelocation, AddRelocationForSymbol, AddRelocationForSymbolWithDylibOrdinal, SetDylibOrdinalForSymbol, SetBindKindForSymbol
  • debug/pe: AddBaseRelocation, ReplaceBaseRelocations, RemoveBaseRelocations, AddBaseReloc, AddSectionRelocation, AddSectionRelocationForSymbol, ReplaceSectionRelocations, RemoveSectionRelocations

Read more about the project here:

https://www.symbolcrash.com/2019/02/23/introducing-symbol-crash/

S
Description
Automated archival mirror of github.com/Binject/debug
Readme BSD-3-Clause 961 KiB
Languages
Go 100%