mjhouse / deaf

A library for inspecting/modifying ELF binaries
GNU General Public License v3.0
7 stars 0 forks source link

Create a project roadmap for future development #8

Closed mjhouse closed 1 year ago

mjhouse commented 1 year ago

This will involve some thought and research, but generally:

There will be a number of other issues necessary for an open source project but not directly tied to a particular feature- things like adding good-first-task labels and a CONTRIBUTION.md file. Those will be enumerated in #7.

mjhouse commented 1 year ago

Milestone 1 (v0.2.0): ELF Parsing

This milestone is to create a complete parser for the ELF format. The focus is on simplicity and ease of use rather than performance or memory efficiency. All decoded headers, arrays, tables etc. should be write-able as well as read-able. For example- a consumer of this parser should be able to load an ELF file, access the symbol tables and their contained symbols, identify a symbol to remove, remove it and write the resulting ELF file to a new location.

References

Milestone 2 (v0.3.0): X86 Disassembly

This milestone is to create a simple disassembler for x86 64/32-bit assembly. The focus is on simplicity and ease of use rather than performance. All decoded instructions, flags and operands should be write-able as well as read-able. For example- a consumer of this disassembler should be able to iterate through mutable instructions, match on the MOV instruction type, check the target register (if there is one) and current instruction address, change the target to a different register and continue on.

References

Milestone 3 (v0.4.0): ARM Disassembly

This milestone is to enhance the milestone 2 disassembler with support for ARM 64/32 assembly. The focus, again, should be on simplicity and ease-of-use rather than performance. All instructions should be both read-able and write-able.

mjhouse commented 1 year ago

I'm resolving this, since I've created the milestones above and roughed in issues necessary to complete Milestone 1