Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
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 array
val section_body : Owee_buf.t -> section -> Owee_buf.t
val find_section_body :
Owee_buf.t ->
section array ->
section_name:string ->
Owee_buf.t option
module String_table : sig ... end
val find_string_table : Owee_buf.t -> section array -> String_table.t option
module Symbol_table : sig ... end
val find_symbol_table : Owee_buf.t -> section array -> Symbol_table.t option