Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
ELF data structures.
include sig ... end
val e_class_of_sexp : Sexplib.Sexp.t -> e_class
val sexp_of_e_class : e_class -> Sexplib.Sexp.t
val bin_e_class : e_class Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_e_class : e_class Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_e_class__ :
(int -> e_class) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_e_class : e_class Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_e_class : e_class Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_e_class : e_class Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_e_class : e_class Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val e_data_of_sexp : Sexplib.Sexp.t -> e_data
val sexp_of_e_data : e_data -> Sexplib.Sexp.t
val bin_e_data : e_data Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_e_data : e_data Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_e_data__ : (int -> e_data) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_e_data : e_data Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_e_data : e_data Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_e_data : e_data Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_e_data : e_data Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val e_osabi_of_sexp : Sexplib.Sexp.t -> e_osabi
val sexp_of_e_osabi : e_osabi -> Sexplib.Sexp.t
val bin_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_e_osabi__ :
(int -> e_osabi) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_e_osabi : e_osabi Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val e_type_of_sexp : Sexplib.Sexp.t -> e_type
val sexp_of_e_type : e_type -> Sexplib.Sexp.t
val bin_e_type : e_type Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_e_type : e_type Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_e_type__ : (int -> e_type) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_e_type : e_type Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_e_type : e_type Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_e_type : e_type Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_e_type : e_type Core_kernel.Std.Bin_prot.Type_class.writer
type e_machine =
| EM_NONE
| EM_M32
| EM_SPARC
| EM_386
| EM_68K
| EM_88K
| EM_860
| EM_MIPS
| EM_S370
| EM_MIPS_RS3_LE
| EM_PARISC
| EM_VPP500
| EM_SPARC32PLUS
| EM_960
| EM_PPC
| EM_PPC64
| EM_S390
| EM_V800
| EM_FR20
| EM_RH32
| EM_RCE
| EM_ARM
| EM_ALPHA
| EM_SH
| EM_SPARCV9
| EM_TRICORE
| EM_ARC
| EM_H8_300
| EM_H8_300H
| EM_H8S
| EM_H8_500
| EM_IA_64
| EM_MIPS_X
| EM_COLDFIRE
| EM_68HC12
| EM_MMA
| EM_PCP
| EM_NCPU
| EM_NDR1
| EM_STARCORE
| EM_ME16
| EM_ST100
| EM_TINYJ
| EM_X86_64
| EM_PDSP
| EM_FX66
| EM_ST9PLUS
| EM_ST7
| EM_68HC16
| EM_68HC11
| EM_68HC08
| EM_68HC05
| EM_SVX
| EM_ST19
| EM_VAX
| EM_CRIS
| EM_JAVELIN
| EM_FIREPATH
| EM_ZSP
| EM_MMIX
| EM_HUANY
| EM_PRISM
| EM_AVR
| EM_FR30
| EM_D10V
| EM_D30V
| EM_V850
| EM_M32R
| EM_MN10300
| EM_MN10200
| EM_PJ
| EM_OPENRISC
| EM_ARC_A5
| EM_XTENSA
| EM_AARCH64
| EM_TILEPRO
| EM_MICROBLAZE
| EM_TILEGX
| EM_EXT of int
include sig ... end
val e_machine_of_sexp : Sexplib.Sexp.t -> e_machine
val sexp_of_e_machine : e_machine -> Sexplib.Sexp.t
val bin_e_machine : e_machine Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_e_machine : e_machine Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_e_machine__ :
(int -> e_machine) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_e_machine : e_machine Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_e_machine : e_machine Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_e_machine : e_machine Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_e_machine : e_machine Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val p_type_of_sexp : Sexplib.Sexp.t -> p_type
val sexp_of_p_type : p_type -> Sexplib.Sexp.t
val bin_p_type : p_type Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_p_type : p_type Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_p_type__ : (int -> p_type) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_p_type : p_type Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_p_type : p_type Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_p_type : p_type Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_p_type : p_type Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val p_flag_of_sexp : Sexplib.Sexp.t -> p_flag
val sexp_of_p_flag : p_flag -> Sexplib.Sexp.t
val bin_p_flag : p_flag Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_p_flag : p_flag Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_p_flag__ : (int -> p_flag) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_p_flag : p_flag Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_p_flag : p_flag Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_p_flag : p_flag Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_p_flag : p_flag Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val sh_type_of_sexp : Sexplib.Sexp.t -> sh_type
val sexp_of_sh_type : sh_type -> Sexplib.Sexp.t
val bin_sh_type : sh_type Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_sh_type : sh_type Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_sh_type__ :
(int -> sh_type) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_sh_type : sh_type Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_sh_type : sh_type Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_sh_type : sh_type Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_sh_type : sh_type Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val sh_flag_of_sexp : Sexplib.Sexp.t -> sh_flag
val sexp_of_sh_flag : sh_flag -> Sexplib.Sexp.t
val bin_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_sh_flag__ :
(int -> sh_flag) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_sh_flag : sh_flag Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val segment_of_sexp : Sexplib.Sexp.t -> segment
val sexp_of_segment : segment -> Sexplib.Sexp.t
val p_offset : segment -> int64
val p_filesz : segment -> int64
val p_memsz : segment -> int64
val p_align : segment -> int64
val p_paddr : segment -> int64
val p_vaddr : segment -> int64
module Fields_of_segment : sig ... end
val bin_segment : segment Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_segment : segment Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_segment__ :
(int -> segment) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_segment : segment Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_segment : segment Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_segment : segment Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_segment : segment Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val section_of_sexp : Sexplib.Sexp.t -> section
val sexp_of_section : section -> Sexplib.Sexp.t
val sh_offset : section -> int64
val sh_entsize : section -> int64
val sh_addralign : section -> int64
val sh_info : section -> int32
val sh_link : section -> int32
val sh_size : section -> int64
val sh_addr : section -> int64
val sh_name : section -> int
module Fields_of_section : sig ... end
val bin_section : section Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_section : section Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_section__ :
(int -> section) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_section : section Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_section : section Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_section : section Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_section : section Core_kernel.Std.Bin_prot.Type_class.writer
type elf = {
e_class : e_class;
e_data : e_data;
e_version : int;
e_osabi : e_osabi;
e_abiver : int;
e_type : e_type;
e_machine : e_machine;
e_entry : int64;
e_shstrndx : int;
e_sections : section Bap.Std.seq;
e_segments : segment Bap.Std.seq;
}
include sig ... end
val elf_of_sexp : Sexplib.Sexp.t -> elf
val sexp_of_elf : elf -> Sexplib.Sexp.t
val e_segments : elf -> segment Bap.Std.seq
val e_sections : elf -> section Bap.Std.seq
val e_shstrndx : elf -> int
val e_entry : elf -> int64
val e_abiver : elf -> int
val e_version : elf -> int
module Fields_of_elf : sig ... end
val bin_elf : elf Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_elf : elf Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_elf__ : (int -> elf) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_elf : elf Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_elf : elf Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_elf : elf Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_elf : elf Core_kernel.Std.Bin_prot.Type_class.writer
include sig ... end
val table_info_of_sexp : Sexplib.Sexp.t -> table_info
val sexp_of_table_info : table_info -> Sexplib.Sexp.t
val entry_num : table_info -> int
val entry_size : table_info -> int
val table_offset : table_info -> int64
module Fields_of_table_info : sig ... end
val compare_table_info : table_info -> table_info -> int
val bin_table_info : table_info Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_table_info : table_info Core_kernel.Std.Bin_prot.Read.reader
val __bin_read_table_info__ :
(int -> table_info) Core_kernel.Std.Bin_prot.Read.reader
val bin_reader_table_info :
table_info Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_table_info : table_info Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_table_info : table_info Core_kernel.Std.Bin_prot.Write.writer
val bin_writer_table_info :
table_info Core_kernel.Std.Bin_prot.Type_class.writer
type t = elf
val from_bigstring :
?pos:int ->
?len:int ->
Core_kernel.Std.Bigstring.t ->
t Core_kernel.Std.Or_error.t
from_bigstring data
parses data with optional offset provided as pos
and length as len
section_name data elf section
retrieves name of section
from data
val string_of_section :
Core_kernel.Std.Bigstring.t ->
section ->
string Core_kernel.Std.Or_error.t
string_of_section data section
extracts the section data as string from the provided data