Rizin
unix-like reverse engineering framework and cli tools
|
#include <rz_util.h>
#include <rz_types.h>
#include <rz_io.h>
#include <rz_cons.h>
#include <rz_list.h>
#include <ht_pu.h>
#include <rz_demangler.h>
#include <rz_hash.h>
#include <rz_bin_dwarf.h>
#include <rz_pdb.h>
Go to the source code of this file.
Enumerations | |
enum | RzBinSpecialSymbol { RZ_BIN_SPECIAL_SYMBOL_ENTRY , RZ_BIN_SPECIAL_SYMBOL_INIT , RZ_BIN_SPECIAL_SYMBOL_MAIN , RZ_BIN_SPECIAL_SYMBOL_FINI , RZ_BIN_SPECIAL_SYMBOL_LAST } |
enum | RzBinLanguage { RZ_BIN_LANGUAGE_UNKNOWN = 0 , RZ_BIN_LANGUAGE_JAVA = 1 , RZ_BIN_LANGUAGE_C = 1 << 1 , RZ_BIN_LANGUAGE_GO = 1 << 2 , RZ_BIN_LANGUAGE_CXX = 1 << 3 , RZ_BIN_LANGUAGE_OBJC = 1 << 4 , RZ_BIN_LANGUAGE_SWIFT = 1 << 5 , RZ_BIN_LANGUAGE_DLANG = 1 << 6 , RZ_BIN_LANGUAGE_MSVC = 1 << 7 , RZ_BIN_LANGUAGE_RUST = 1 << 8 , RZ_BIN_LANGUAGE_KOTLIN = 1 << 9 , RZ_BIN_LANGUAGE_GROOVY = 1 << 10 , RZ_BIN_LANGUAGE_DART = 1 << 11 , RZ_BIN_LANGUAGE_BLOCKS = 1 << 31 } |
enum | { RZ_BIN_CLASS_PRIVATE , RZ_BIN_CLASS_PUBLIC , RZ_BIN_CLASS_FRIENDLY , RZ_BIN_CLASS_PROTECTED } |
enum | RzBinRelocType { RZ_BIN_RELOC_8 = 8 , RZ_BIN_RELOC_16 = 16 , RZ_BIN_RELOC_24 = 24 , RZ_BIN_RELOC_32 = 32 , RZ_BIN_RELOC_64 = 64 } |
enum | { RZ_BIN_TYPE_DEFAULT = 0 , RZ_BIN_TYPE_CORE = 1 } |
#define REBASE_PADDR | ( | o, | |
l, | |||
type_t | |||
) |
#define RZ_BIN_LANGUAGE_HAS_BLOCKS | ( | x | ) | ((x)&RZ_BIN_LANGUAGE_BLOCKS) |
#define RZ_BIN_LANGUAGE_MASK | ( | x | ) | ((x) & ~RZ_BIN_LANGUAGE_BLOCKS) |
#define RZ_BIN_METH_DECLARED_SYNCHRONIZED 0x0000000000200000L |
#define RzBinSectionName rz_offsetof(RzBinSection, name) |
#define RzBinSectionOffset rz_offsetof(RzBinSection, offset) |
typedef struct rz_bin_addr_t RzBinAddr |
typedef struct rz_bin_arch_options_t RzBinArchOptions |
typedef struct rz_bin_bind_t RzBinBind |
typedef struct rz_bin_class_t RzBinClass |
typedef struct rz_bin_field_t RzBinField |
typedef struct rz_bin_file_t RzBinFile |
typedef struct rz_bin_file_hash_t RzBinFileHash |
typedef struct rz_bin_file_options_t RzBinFileOptions |
typedef RzBinSection*(* RzBinGetSectionAt) (RzBin *bin, ut64 addr) |
typedef struct rz_bin_hash_t RzBinHash |
typedef struct rz_bin_import_t RzBinImport |
typedef struct rz_bin_info_t RzBinInfo |
typedef struct rz_bin_map_t RzBinMap |
Description of a single memory mapping into virtual memory from a binary.
typedef struct rz_bin_mem_t RzBinMem |
typedef struct rz_bin_object_t RzBinObject |
typedef struct rz_bin_file_load_options_t RzBinObjectLoadOptions |
typedef struct rz_bin_plugin_t RzBinPlugin |
typedef struct rz_bin_reloc_t RzBinReloc |
typedef struct rz_bin_reloc_storage_t RzBinRelocStorage |
typedef struct rz_bin_resource_t RzBinResource |
typedef struct rz_bin_section_t RzBinSection |
typedef struct rz_bin_section_map_t RzBinSectionMap |
Structure to associate a segment with the list of sections that fall in that segment.
typedef struct rz_bin_source_line_info_t RzBinSourceLineInfo |
typedef struct rz_bin_source_line_info_builder_t RzBinSourceLineInfoBuilder |
Temporary data structure for building an RzBinSourceLineInfo.
typedef struct rz_bin_source_line_sample_t RzBinSourceLineSample |
A single sample of source line info for a specific address.
If at least one of the line, column and file members is not 0/NULL, such a sample specifies the line info for all addresses greater or equal to address until the next address that has another sample.
If all the members line, column and file are 0/NULL, then this is a closing sample, indicating that the previous entry stops here. The address is the first address not contained by the previous record. Such a case corresponds for example to what DW_LNE_end_sequence emits in Dwarf. Use rz_bin_source_line_sample_is_closing() for checking if a sample is closing.
typedef struct rz_bin_string_database_t RzBinStrDb |
typedef struct rz_bin_string_t RzBinString |
typedef struct rz_bin_symbol_t RzBinSymbol |
typedef void(* RzBinSymbollCallback) (RzBinObject *obj, void *symbol) |
typedef struct rz_bin_trycatch_t RzBinTrycatch |
typedef struct rz_bin_virtual_file_t RzBinVirtualFile |
A virtual file is a binary buffer, exposed by a bin plugin for a loaded file. These virtual files can be used whenever data that is related to the file but not directly represented-as is in the raw file should be mapped into the virtual address space. Common examples for this include compressed segments or patching relocations. The idea is that the bin plugin exposes virtual files and then refers to them in the RzBinMap it returns.
For example, when there is a binary format that contains a compressed segment called "text", the bin plugin would create a virtual file:
RzBinVirtualFile { .name = "text_decompressed", .buf = rz_buf_new_with_bytes(<decompressed bytes>, <decompressed size>), ... }
which it can then use for mapping by referring to its exact name:
RzBinMap { .vsize = <decompressed size>, .name = "text", .vfile_name = "text_decompressed", ... }
When RzBin is used as part of RzCore, these virtual files can be opened as RzIO files using an URI like vfile://<binfile id>/<filename>
. By default, RzCore sets everything up automatically though so it is rather rare that one has to manually work with these URIs.
typedef struct rz_bin_xtr_extract_t RzBinXtrData |
typedef struct rz_bin_xtr_metadata_t RzBinXtrMetadata |
typedef struct rz_bin_xtr_plugin_t RzBinXtrPlugin |
anonymous enum |
anonymous enum |
enum RzBinLanguage |
Definition at line 145 of file rz_bin.h.
enum RzBinRelocType |
enum RzBinSpecialSymbol |
RZ_API void rz_bin_field_free | ( | RzBinField * | field | ) |
Definition at line 950 of file bin.c.
References rz_bin_field_t::comment, rz_bin_field_t::format, free(), rz_bin_field_t::name, rz_bin_field_t::type, and rz_bin_field_t::visibility_str.
Referenced by dex_resolve_fields_in_class(), fields(), get_ivar_list_t(), MACH0_(), rz_bin_dex_fields(), and rz_bin_java_class_fields_as_binfields().
RZ_API RzBinField* rz_bin_field_new | ( | ut64 | paddr, |
ut64 | vaddr, | ||
int | size, | ||
const char * | name, | ||
const char * | comment, | ||
const char * | format, | ||
bool | format_named | ||
) |
Definition at line 935 of file bin.c.
References rz_bin_field_t::comment, rz_bin_field_t::format, rz_bin_field_t::format_named, rz_bin_field_t::name, NULL, rz_bin_field_t::paddr, RZ_NEW0, rz_bin_field_t::size, strdup(), and rz_bin_field_t::vaddr.
Referenced by classes_from_symbols(), fields(), MACH0_(), and rz_bin_java_class_fields_as_binfields().
RZ_API void rz_bin_import_free | ( | RzBinImport * | imp | ) |
Definition at line 137 of file bin.c.
References rz_bin_import_t::classname, rz_bin_import_t::descriptor, free(), rz_bin_import_t::libname, rz_bin_import_t::name, and RZ_FREE.
Referenced by imports(), load_buffer(), rz_bin_dex_imports(), rz_bin_java_class_const_pool_as_imports(), rz_bin_le_get_imports(), rz_bin_le_get_relocs(), and rz_bin_ne_get_imports().
Definition at line 97 of file bin.c.
References rz_bin_info_t::actual_checksum, rz_bin_info_t::arch, rz_bin_info_t::bclass, rz_bin_info_t::claimed_checksum, rz_bin_info_t::compiler, rz_bin_info_t::cpu, rz_bin_info_t::debug_file_name, rz_bin_info_t::default_cc, rz_bin_info_t::features, rz_bin_info_t::file, rz_bin_info_t::file_hashes, free(), rz_bin_info_t::guid, rz_bin_info_t::head_flag, rz_bin_info_t::intrp, rz_bin_info_t::machine, rz_bin_info_t::os, rz_bin_info_t::rclass, rz_bin_info_t::rpath, rz_list_free(), rz_bin_info_t::subsystem, and rz_bin_info_t::type.
Referenced by load_buffer(), rz_bin_object_free(), and rz_core_bin_load().
Definition at line 1023 of file bin.c.
Referenced by get_maps_unpatched(), load_buffer(), maps(), and rz_bin_maps_of_file_sections().
RZ_API RZ_OWN RzList* rz_bin_maps_of_file_sections | ( | RZ_NONNULL RzBinFile * | binfile | ) |
Create a list of RzBinMap from RzBinSections queried from the given file.
Some binary formats have a 1:1 correspondence of mapping and their RzBinSections. This is not always the case (e.g. ELF) but if it is, plugins can use this function as their maps callback, which will generate mappings for sections.
Definition at line 1040 of file bin.c.
References map(), rz_bin_section_t::name, NULL, rz_bin_section_t::paddr, rz_bin_section_t::perm, r, rz_bin_map_free(), rz_list_free(), rz_list_newf(), rz_list_push(), RZ_NEW0, rz_return_val_if_fail, sections(), rz_bin_section_t::size, strdup(), rz_bin_section_t::vaddr, and rz_bin_section_t::vsize.
Referenced by maps().
RZ_API void rz_bin_reloc_free | ( | RzBinReloc * | reloc | ) |
Definition at line 188 of file bin.c.
References free().
Referenced by rz_bin_le_get_relocs(), and rz_bin_reloc_storage_free().
|
inlinestatic |
Definition at line 828 of file rz_bin.h.
References rz_bin_reloc_t::target_vaddr, and UT64_MAX.
Referenced by rz_bin_reloc_storage_new(), rz_core_bin_apply_relocs(), rz_core_bin_relocs_print(), and set_bin_relocs().
RZ_API ut64 rz_bin_reloc_size | ( | RzBinReloc * | reloc | ) |
size of the reloc (where it is supposed to be patched) in bits
Definition at line 60 of file bobj.c.
References RZ_BIN_RELOC_16, RZ_BIN_RELOC_24, RZ_BIN_RELOC_32, RZ_BIN_RELOC_64, RZ_BIN_RELOC_8, and rz_bin_reloc_t::type.
Referenced by meta_for_reloc().
RZ_API void rz_bin_reloc_storage_free | ( | RzBinRelocStorage * | storage | ) |
Definition at line 137 of file bobj.c.
References free(), i, rz_bin_reloc_storage_t::relocs, rz_bin_reloc_storage_t::relocs_count, rz_bin_reloc_free(), and rz_bin_reloc_storage_t::target_relocs.
Referenced by rz_bin_object_free(), and rz_bin_object_patch_relocs().
RZ_API RzBinReloc* rz_bin_reloc_storage_get_reloc_in | ( | RzBinRelocStorage * | storage, |
ut64 | vaddr, | ||
ut64 | size | ||
) |
Get the reloc with the lowest vaddr that starts inside the given interval.
Definition at line 154 of file bobj.c.
References i, NULL, r, reloc_vaddr_cmp(), rz_bin_reloc_storage_t::relocs, rz_bin_reloc_storage_t::relocs_count, rz_array_lower_bound, and rz_return_val_if_fail.
Referenced by rz_core_getreloc().
RZ_API RzBinReloc* rz_bin_reloc_storage_get_reloc_to | ( | RzBinRelocStorage * | storage, |
ut64 | vaddr | ||
) |
Get a reloc that points exactly to vaddr or NULL.
Definition at line 173 of file bobj.c.
References i, NULL, r, reloc_target_vaddr_cmp(), rz_array_upper_bound, rz_return_val_if_fail, rz_bin_reloc_storage_t::target_relocs, and rz_bin_reloc_storage_t::target_relocs_count.
Referenced by rz_core_get_reloc_to().
RZ_API RzBinRelocStorage* rz_bin_reloc_storage_new | ( | RZ_OWN RzList * | relocs | ) |
Definition at line 105 of file bobj.c.
References rz_list_t::free, NULL, reloc_cmp(), reloc_target_cmp(), relocs(), rz_bin_reloc_storage_t::relocs, rz_bin_reloc_storage_t::relocs_count, rz_bin_reloc_has_target(), rz_list_free(), rz_list_length(), RZ_NEW0, rz_pvector_fini(), rz_pvector_flush(), rz_pvector_init(), rz_pvector_len(), rz_pvector_push(), rz_pvector_reserve(), rz_pvector_sort(), rz_bin_reloc_storage_t::target_relocs, and rz_bin_reloc_storage_t::target_relocs_count.
Referenced by rz_bin_object_patch_relocs(), and rz_bin_object_set_items().
|
inlinestatic |
return true iff there is at least one reloc in the storage with a target address
Definition at line 744 of file rz_bin.h.
References rz_bin_reloc_storage_t::target_relocs_count.
Referenced by rz_core_bin_relocs_print().
RZ_API void rz_bin_resource_free | ( | RzBinResource * | res | ) |
Definition at line 147 of file bin.c.
References free(), rz_bin_resource_t::language, rz_bin_resource_t::name, RZ_FREE, rz_bin_resource_t::time, and rz_bin_resource_t::type.
Converts the RzBinSection flags to a list of string representations.
Some binary formats have a function interface called "section_flag_to_rzlist" The returned string flag names are different between formats
bin | RzBin instance |
flag | A flag field of the RzBinSection (differs between formats) |
Definition at line 1151 of file bin.c.
References a, NULL, rz_bin_cur(), rz_bin_file_cur_plugin(), and rz_bin_plugin_t::section_flag_to_rzlist.
Referenced by sections_print_json(), and sections_print_table().
RZ_API void rz_bin_section_free | ( | RzBinSection * | bs | ) |
Definition at line 1116 of file bin.c.
References rz_bin_section_t::format, free(), and rz_bin_section_t::name.
Referenced by get_segments(), load_buffer(), rz_bin_dex_sections(), rz_bin_le_get_sections(), rz_bin_mz_get_segments(), rz_bin_ne_get_segments(), rz_bin_sections_of_maps(), section_free(), and sections().
RZ_API RzBinSection* rz_bin_section_new | ( | const char * | name | ) |
Converts the RzBinSection type to the string representation.
Some binary formats have a function interface called "section_type_to_string" The returned string type name is different between formats
bin | RzBin instance |
type | A type field of the RzBinSection (differs between formats) |
Definition at line 1133 of file bin.c.
References a, NULL, rz_bin_cur(), rz_bin_file_cur_plugin(), rz_bin_plugin_t::section_type_to_string, and type.
Referenced by sections_print_json(), and sections_print_table().
Create a list of RzBinSection from RzBinMaps.
Some binary formats have a 1:1 correspondence of mapping and some of their RzBinSections, but also want to add some unmapped sections. In this case, they can implement their mapped sections in their maps callback, then in their sections callback use this function to create sections from them and add some additional ones. See also rz_bin_maps_of_file_sections() for the inverse, when no additional sections should be added.
Definition at line 1084 of file bin.c.
References map(), maps(), rz_bin_section_t::name, NULL, rz_bin_section_t::paddr, rz_bin_section_t::perm, rz_bin_section_free(), rz_list_append(), rz_list_newf(), RZ_NEW0, rz_return_val_if_fail, rz_bin_section_t::size, strdup(), rz_bin_section_t::vaddr, and rz_bin_section_t::vsize.
Referenced by sections().
RZ_API RzBinSourceLineInfo* rz_bin_source_line_info_builder_build_and_fini | ( | RzBinSourceLineInfoBuilder * | builder | ) |
Definition at line 87 of file dbginfo.c.
References rz_bin_source_line_sample_t::address, err, rz_bin_source_line_info_builder_t::filename_pool, free(), i, line_sample_cmp(), NULL, r, rz_bin_source_line_info_builder_fini(), rz_bin_source_line_sample_is_closing(), RZ_NEW0, RZ_NEWS0, rz_pvector_at(), rz_pvector_fini(), rz_pvector_init(), rz_pvector_push(), rz_pvector_reserve(), rz_pvector_sort(), rz_vector_fini(), rz_vector_flush(), rz_vector_len(), and rz_bin_source_line_info_builder_t::samples.
Referenced by lines(), and parse_line_raw().
RZ_API void rz_bin_source_line_info_builder_fini | ( | RzBinSourceLineInfoBuilder * | builder | ) |
Definition at line 14 of file dbginfo.c.
References rz_bin_source_line_info_builder_t::filename_pool, rz_str_constpool_fini(), rz_vector_fini(), and rz_bin_source_line_info_builder_t::samples.
Referenced by rz_bin_source_line_info_builder_build_and_fini().
RZ_API void rz_bin_source_line_info_builder_init | ( | RzBinSourceLineInfoBuilder * | builder | ) |
Definition at line 9 of file dbginfo.c.
References rz_bin_source_line_info_builder_t::filename_pool, NULL, rz_str_constpool_init(), rz_vector_init(), and rz_bin_source_line_info_builder_t::samples.
Referenced by lines(), and parse_line_raw().
RZ_API void rz_bin_source_line_info_builder_push_sample | ( | RzBinSourceLineInfoBuilder * | builder, |
ut64 | address, | ||
ut32 | line, | ||
ut32 | column, | ||
const char * | file | ||
) |
Push a new sample into the builder.
This function is used to continuously fill the builder with concrete samples of line info for a specific address, usually during parsing of debug info from a file. The samples may be pushed in any order and the builder will later take care of generating a valid RzBinSourceLineInfo from it.
line | may be 0 or a positive line number, where 0 means that this entry closes the one before it. see also RzBinSourceLine. |
Definition at line 28 of file dbginfo.c.
References rz_bin_source_line_sample_t::address, rz_bin_source_line_sample_t::column, rz_bin_source_line_sample_t::file, rz_bin_source_line_info_builder_t::filename_pool, rz_bin_source_line_sample_t::line, setup::line, NULL, rz_str_constpool_get(), rz_vector_push(), and rz_bin_source_line_info_builder_t::samples.
Referenced by lines(), rz_bin_dwarf_line_op_run(), and store_line_sample().
RZ_API void rz_bin_source_line_info_free | ( | RzBinSourceLineInfo * | sli | ) |
Definition at line 137 of file dbginfo.c.
References rz_bin_source_line_info_t::filename_pool, free(), rz_str_constpool_fini(), and rz_bin_source_line_info_t::samples.
Referenced by rz_bin_dwarf_line_info_free(), and rz_bin_object_free().
RZ_API const RzBinSourceLineSample* rz_bin_source_line_info_get_first_at | ( | const RzBinSourceLineInfo * | sli, |
ut64 | addr | ||
) |
Find the first sample that affects the given address. i.e. find the first sample with the highest address less or equal to addr. There may be more which can be retrieved by repeatedly calling rz_bin_source_line_info_get_next() until it returns NULL.
Definition at line 151 of file dbginfo.c.
References addr, CMP, NULL, r, rz_array_upper_bound, rz_bin_source_line_sample_is_closing(), rz_bin_source_line_info_t::samples, and rz_bin_source_line_info_t::samples_count.
Referenced by print_source_info(), rz_bin_addr2line(), and rz_bin_addr2text().
RZ_API const RzBinSourceLineSample* rz_bin_source_line_info_get_next | ( | const RzBinSourceLineInfo * | sli, |
RZ_NONNULL const RzBinSourceLineSample * | cur | ||
) |
cur | MUST be a pointer returned by either rz_bin_source_line_info_get_first_at() or rz_bin_source_line_info_get_next(). |
Definition at line 182 of file dbginfo.c.
References rz_bin_source_line_sample_t::address, NULL, rz_return_val_if_fail, rz_bin_source_line_info_t::samples, and rz_bin_source_line_info_t::samples_count.
Referenced by print_source_info(), and rz_bin_addr2text().
|
inlinestatic |
Definition at line 474 of file rz_bin.h.
References s.
Referenced by line_sample_cmp(), rz_bin_source_line_info_builder_build_and_fini(), and rz_bin_source_line_info_get_first_at().
RZ_API void rz_bin_string_free | ( | void * | _str | ) |
Definition at line 192 of file bin.c.
References free(), and cmd_descs_generate::str.
Referenced by add_new_bin_string(), create_string_search_thread(), rz_bin_dex_strings(), rz_bin_file_strings(), rz_bin_java_class_strings(), rz_bin_string_database_new(), and search_string_thread_runner().
RZ_API void rz_bin_symbol_free | ( | RzBinSymbol * | sym | ) |
Definition at line 175 of file bin.c.
References rz_bin_symbol_t::classname, rz_bin_symbol_t::dname, free(), rz_bin_symbol_t::libname, rz_bin_symbol_t::name, and rz_bin_symbol_t::visibility_str.
Referenced by add_new_func_symbol(), dex_resolve_fields_in_class_as_symbols(), dex_resolve_methods_in_class(), get_symbols_list(), le_get_symbol(), le_get_symbols_at(), load_buffer(), luac_build_info(), resolve_mig_subsystem(), resolve_syscalls(), rz_bin_dex_symbols(), rz_bin_java_class_const_pool_as_symbols(), rz_bin_java_class_fields_as_symbols(), rz_bin_java_class_methods_as_symbols(), rz_bin_le_get_symbols(), rz_bin_ne_get_symbols(), rz_bin_pe_get_clr_symbols(), symbols(), and walkSymbols().
RZ_API RzBinSymbol* rz_bin_symbol_new | ( | const char * | name, |
ut64 | paddr, | ||
ut64 | vaddr | ||
) |
Definition at line 165 of file bin.c.
References rz_bin_symbol_t::name, NULL, rz_bin_symbol_t::paddr, RZ_NEW0, strdup(), and rz_bin_symbol_t::vaddr.
Referenced by add_new_func_symbol(), rz_bin_java_class_const_pool_as_symbols(), rz_bin_java_class_fields_as_symbols(), and rz_bin_java_class_methods_as_symbols().
RZ_API void rz_bin_trycatch_free | ( | RzBinTrycatch * | tc | ) |
RZ_API RzBinTrycatch* rz_bin_trycatch_new | ( | ut64 | source, |
ut64 | from, | ||
ut64 | to, | ||
ut64 | handler, | ||
ut64 | filter | ||
) |
Definition at line 1178 of file bin.c.
References rz_bin_trycatch_t::filter, filter(), rz_bin_trycatch_t::from, from, rz_bin_trycatch_t::handler, RZ_NEW0, rz_bin_trycatch_t::source, source, rz_bin_trycatch_t::to, and to.
Referenced by trycatch().
RZ_API void rz_bin_virtual_file_free | ( | RzBinVirtualFile * | vfile | ) |
Definition at line 1012 of file bin.c.
References rz_bin_virtual_file_t::buf, rz_bin_virtual_file_t::buf_owned, free(), rz_bin_virtual_file_t::name, and rz_buf_free().
Referenced by get_virtual_files(), and virtual_files().
RZ_API void rz_bin_xtrdata_free | ( | void * | data | ) |
Definition at line 61 of file bin.c.
References rz_bin_xtr_metadata_t::arch, rz_bin_xtr_extract_t::buf, rz_bin_xtr_extract_t::file, free(), rz_bin_xtr_metadata_t::libname, rz_bin_xtr_metadata_t::machine, rz_bin_xtr_extract_t::metadata, rz_buf_free(), and rz_return_if_fail.
Referenced by oneshotall(), oneshotall_buffer(), and rz_bin_file_new().
RZ_API RzBinXtrData* rz_bin_xtrdata_new | ( | RzBuffer * | buf, |
ut64 | offset, | ||
ut64 | size, | ||
ut32 | file_count, | ||
RzBinXtrMetadata * | metadata | ||
) |
Definition at line 47 of file bin.c.
References rz_bin_xtr_extract_t::buf, rz_bin_xtr_extract_t::file_count, rz_bin_xtr_extract_t::loaded, rz_bin_xtr_extract_t::metadata, rz_bin_xtr_extract_t::offset, rz_buf_ref(), RZ_NEW0, and rz_bin_xtr_extract_t::size.
Referenced by extract(), oneshot(), and oneshot_buffer().
RZ_LIB_VERSION_HEADER | ( | rz_bin | ) |