Rizin
unix-like reverse engineering framework and cli tools
|
#include "dyldcache.h"
Go to the source code of this file.
Classes | |
struct | BufCtx |
Macros | |
#define | RZ_IS_PTR_AUTHENTICATED(x) B_IS_SET(x, 63) |
Variables | |
static const RzBufferMethods | buf_methods |
Definition at line 89 of file dyldcache_rebase.c.
Definition at line 191 of file dyldcache_rebase.c.
Definition at line 253 of file dyldcache_rebase.c.
References b, and rz_buf_size().
Definition at line 263 of file dyldcache_rebase.c.
References b, and rz_buf_data().
Definition at line 202 of file dyldcache_rebase.c.
References b, rz_dyldcache_t::buf, len, malloc(), memcpy(), rz_dyld_rebase_info_t::one_page_buf, rz_dyld_rebase_info_t::page_size, r, rebase_bytes(), rebase_info_by_range(), rz_dyldcache_t::rebase_infos, rz_buf_read_at(), RZ_FREE, RZ_LOG_ERROR, RZ_MIN, st64, rz_dyld_rebase_info_t::start_of_data, and ut64().
Referenced by LoadCentralDirectoryRecord().
Definition at line 197 of file dyldcache_rebase.c.
References b, and rz_buf_resize().
Definition at line 258 of file dyldcache_rebase.c.
References addr, b, rz_buf_size(), and rz_seek_offset().
Definition at line 248 of file dyldcache_rebase.c.
References b, len, and rz_buf_write_at().
|
static |
Definition at line 162 of file dyldcache_rebase.c.
References count, rebase_bytes_v1(), rebase_bytes_v2(), rebase_bytes_v3(), and rz_dyld_rebase_info_t::version.
Referenced by buf_read().
|
static |
Definition at line 7 of file dyldcache_rebase.c.
References b, count, rz_dyld_rebase_info_1_t::entries, rz_dyld_rebase_info_1_t::entries_size, in_buf, page_index, rz_dyld_rebase_info_1_t::page_size, rz_read_le64(), rz_write_le64(), rz_dyld_rebase_info_1_t::slide, rz_dyld_rebase_info_1_t::start_of_data, rz_dyld_rebase_info_1_t::toc, rz_dyld_rebase_info_1_t::toc_count, ut64(), and value.
Referenced by rebase_bytes().
|
static |
Definition at line 43 of file dyldcache_rebase.c.
References count, delta, rz_dyld_rebase_info_2_t::delta_mask, rz_dyld_rebase_info_2_t::delta_shift, DYLD_CACHE_SLIDE_PAGE_ATTR_EXTRA, DYLD_CACHE_SLIDE_PAGE_ATTR_NO_REBASE, in_buf, page_index, rz_dyld_rebase_info_2_t::page_size, rz_dyld_rebase_info_2_t::page_starts, rz_dyld_rebase_info_2_t::page_starts_count, rz_read_le64(), rz_write_le64(), rz_dyld_rebase_info_2_t::slide, rz_dyld_rebase_info_2_t::start_of_data, ut64(), rz_dyld_rebase_info_2_t::value_add, and rz_dyld_rebase_info_2_t::value_mask.
Referenced by rebase_bytes().
|
static |
Definition at line 91 of file dyldcache_rebase.c.
References rz_dyld_rebase_info_3_t::auth_value_add, count, delta, rz_dyld_rebase_info_3_t::delta_mask, rz_dyld_rebase_info_3_t::delta_shift, DYLD_CACHE_SLIDE_V3_PAGE_ATTR_NO_REBASE, in_buf, page_index, rz_dyld_rebase_info_3_t::page_size, rz_dyld_rebase_info_3_t::page_starts, rz_dyld_rebase_info_3_t::page_starts_count, RZ_IS_PTR_AUTHENTICATED, rz_read_le64(), rz_write_le64(), rz_dyld_rebase_info_3_t::slide, rz_dyld_rebase_info_3_t::start_of_data, and ut64().
Referenced by rebase_bytes().
|
static |
Definition at line 140 of file dyldcache_rebase.c.
References count, rz_dyld_rebase_infos_entry_t::end, rz_dyld_rebase_infos_t::entries, rz_dyld_rebase_infos_entry_t::info, rz_dyld_rebase_infos_t::length, NULL, and rz_dyld_rebase_infos_entry_t::start.
Referenced by buf_read(), and rz_dyldcache_range_needs_rebasing().
RZ_API bool rz_dyldcache_needs_rebasing | ( | RzDyldCache * | cache | ) |
Definition at line 284 of file dyldcache_rebase.c.
References rz_dyldcache_t::rebase_infos, rz_dyldcache_get_slide(), and rz_return_val_if_fail.
Referenced by classes(), rz_dyldcache_range_needs_rebasing(), and virtual_files().
RZ_API RzBuffer* rz_dyldcache_new_rebasing_buf | ( | RzDyldCache * | cache | ) |
Definition at line 279 of file dyldcache_rebase.c.
References buf_methods, NULL, rz_buf_new_with_methods(), and rz_return_val_if_fail.
Referenced by classes(), and virtual_files().
RZ_API bool rz_dyldcache_range_needs_rebasing | ( | RzDyldCache * | cache, |
ut64 | paddr, | ||
ut64 | size | ||
) |
Definition at line 294 of file dyldcache_rebase.c.
References rebase_info_by_range(), rz_dyldcache_t::rebase_infos, rz_dyldcache_needs_rebasing(), and rz_return_val_if_fail.
Referenced by maps().
|
static |
Definition at line 268 of file dyldcache_rebase.c.
Referenced by rz_dyldcache_new_rebasing_buf().