GaloisInc / flexdis86

A library for disassembling x86-64 binaries.
BSD 3-Clause "New" or "Revised" License
37 stars 10 forks source link

Move `binary-symbols` to another repo #38

Open RyanGlScott opened 2 years ago

RyanGlScott commented 2 years ago

binary-symbols is a general-purpose library for describing symbols in binaries, which makes its placement in flexdis86 (ostensibly an x86-specific library) somewhat confusing. We should move binary-symbols to a different home to reflect its broader scope.

RyanGlScott commented 1 year ago

It would also be nice to make elf-edit depend on binary-symbols. Both libraries independently define their own type SegmentIndex = Word16 type, but we ought to consolidate this into a single definition.

kquick commented 1 year ago

It seems like a good portion (SymbolIdentifier, SegmentIndex, SectionIndex) of binary-symbols reference ELF-specific things; should those move to elf-edit or be part of the standalone?

RyanGlScott commented 1 year ago

Some of these concepts could reasonably apply to other file formats—for instance, PE on Windows also has notions of sections and symbols. But your point is well taken: it's not entirely clear what should go into elf-edit versus a separate library like binary-symbols. The flexdis86 library itself (from which binary-symbols was spun out) doesn't depend on elf-edit, so perhaps a crude answer to this question is "things that are shared between flexdis86 and elf-edit". There is probably a more principled way to categorize things, however.