jon.recoil.org

Module Dissector.Result

Result of running the dissector. After the dissector runs, OCaml object files (ml_objfiles, startup_obj) are baked into the partition files. Passthrough files (ccobjs, runtime_libs) bypass partial linking and are passed directly to the final linker. Use Build_linker_args.build to convert this result into linker arguments.

type t
val linked_partitions : t -> Partition.Linked.t list

Returns the partially-linked partition object files.

val passthrough_files : t -> string list

Returns the passthrough files that should be passed directly to the final linker without partial linking. These are C stub files and runtime libraries that may have sections like .gcc_except_table that don't work well with ld -r.

val linker_script : t -> string

Returns the path to the generated linker script.

val eh_frame_registration_obj : t -> string option

Returns the path to the EH frame registration object file, if generated. This object is generated when using the dissector with -dissector-assume-lld-without-64-bit-eh-frames and contains .init/.fini constructors to register the .eh_frame section at runtime.