|
LIEF: Library to Instrument Executable Formats Version 1.0.0
|
Structure that mirrors the raw dyld_chained_starts_in_segment which aims at providing information about the chained rebase/bind fixups. More...
#include <DyldChainedFixups.hpp>

Public Member Functions | |
| size_t | page_count () const |
| How many pages are in the page_start array. | |
Static Public Member Functions | |
| static chained_starts_in_segment | create_empty_chained (SegmentCommand &segment) |
Public Attributes | |
| uint32_t | offset = 0 |
| Original offset of the structure, relative to DyldChainedFixups::starts_offset. | |
| uint32_t | size = 0 |
| sizeof(size) + sizeof(page_size) + ... + sizeof(pointer_format) | |
| uint16_t | page_size = 0 |
| Likely 0x1000 for x86/x86_64 architectures and 0x4000 for ARM64 architecture. | |
| uint64_t | segment_offset = 0 |
| Offset of the segment's data from the beginning of the file (it should match SegmentCommand::file_offset). | |
| uint32_t | max_valid_pointer = 0 |
| for 32-bit OS, any value beyond this is not a pointer | |
| DYLD_CHAINED_PTR_FORMAT | pointer_format = DYLD_CHAINED_PTR_FORMAT::NONE |
| How pointers are encoded. | |
| std::vector< uint16_t > | page_start |
| Offset in the SegmentCommand of the first element of the chain. | |
| std::vector< uint16_t > | chain_starts |
| Currently not supported. | |
| SegmentCommand & | segment |
| Segment in which the rebase/bind fixups take place. | |
Structure that mirrors the raw dyld_chained_starts_in_segment which aims at providing information about the chained rebase/bind fixups.
The relocations provided by this structure can be accessed through SegmentCommand::relocations
|
inlinestatic |
References segment.
|
inline |
How many pages are in the page_start array.
References page_start.
| std::vector<uint16_t> LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::chain_starts |
Currently not supported.
| uint32_t LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::max_valid_pointer = 0 |
for 32-bit OS, any value beyond this is not a pointer
| uint32_t LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::offset = 0 |
Original offset of the structure, relative to DyldChainedFixups::starts_offset.
Referenced by DyldChainedFixupsCreator.
| uint16_t LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::page_size = 0 |
Likely 0x1000 for x86/x86_64 architectures and 0x4000 for ARM64 architecture.
| std::vector<uint16_t> LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::page_start |
Offset in the SegmentCommand of the first element of the chain.
Referenced by page_count().
| DYLD_CHAINED_PTR_FORMAT LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::pointer_format = DYLD_CHAINED_PTR_FORMAT::NONE |
How pointers are encoded.
| SegmentCommand& LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::segment |
Segment in which the rebase/bind fixups take place.
Referenced by create_empty_chained(), and DyldChainedFixupsCreator.
| uint64_t LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::segment_offset = 0 |
Offset of the segment's data from the beginning of the file (it should match SegmentCommand::file_offset).
| uint32_t LIEF::MachO::DyldChainedFixups::chained_starts_in_segment::size = 0 |
sizeof(size) + sizeof(page_size) + ... + sizeof(pointer_format)