Skip to content

Parse more load_command in MachO files #5690

Description

@seekbytes

A mach-o binary is composed by an array of load commands that are parsed successfully by bninja. However there're some unique load command for which you don't implement any custom structure for.

This issue would propose:

  • create a custom structure 'dynamic' where you can include:
struct load_command __macho_load_command_[N] {
  enum load_command_type_t cmd = LC_SAMPLE;
  uint32_t cmdsize = 0x20  
  bytes buffer[cmdsize]
}

OR dedicate two/three days (or less, don't know how much time it would take) to document the most used load commands and write all the custom structs for it.

Current load commands not supported (bninja applies the default load_command structure):

Activity

  1. changed the title [-]Include content bytes for the load_command[/-] [+]Parse more load_command in MachO files[/+] on Jul 8, 2024
  2. added
    Effort: TrivialIssues require < 1 day of work
    and removed
    Effort: LowIssues require < 1 week of work
    on Aug 5, 2024
  3. bdash commented on May 16, 2025

    @bdash
    Contributor

    #6719 takes care of many of these (but not LC_CODE_SIGNATURE).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions