Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Owee_elfMinimalist ELF 64 decoder
type identification = {elf_class : Owee_buf.u8;elf_data : Owee_buf.u8;elf_version : Owee_buf.u8;elf_osabi : Owee_buf.u8;elf_abiversion : Owee_buf.u8;}type header = {e_ident : identification;e_type : Owee_buf.u16;e_machine : Owee_buf.u16;e_version : Owee_buf.u32;e_entry : Owee_buf.u64;e_phoff : Owee_buf.u64;e_shoff : Owee_buf.u64;e_flags : Owee_buf.u32;e_ehsize : Owee_buf.u16;e_phentsize : Owee_buf.u16;e_phnum : Owee_buf.u16;e_shentsize : Owee_buf.u16;e_shnum : Owee_buf.u16;e_shstrndx : Owee_buf.u16;}type section = {sh_name : Owee_buf.u32;sh_type : Owee_buf.u32;sh_flags : Owee_buf.u64;sh_addr : Owee_buf.u64;sh_offset : Owee_buf.u64;sh_size : Owee_buf.u64;sh_link : Owee_buf.u32;sh_info : Owee_buf.u32;sh_addralign : Owee_buf.u64;sh_entsize : Owee_buf.u64;sh_name_str : string;}val read_elf : Owee_buf.t -> header * section arrayFrom a buffer pointing to an ELF image, read_elf decodes the header and section table.
val section_body : Owee_buf.t -> section -> Owee_buf.tsection_body elf section returns a sub-buffer with the contents of the section of the ELF image.
Convenience function to find a section in the section table given its name.
val find_section_body :
Owee_buf.t ->
section array ->
section_name:string ->
Owee_buf.t optionFind the body of a section given its name.
module String_table : sig ... endval find_string_table : Owee_buf.t -> section array -> String_table.t optionFish out the string table from the given ELF buffer and section array.
module Symbol_table : sig ... endval find_symbol_table : Owee_buf.t -> section array -> Symbol_table.t optionFish out both the dynamic and static symbol tables (.dynsym and .symtab) from the given ELF buffer and section array.