diff options
| author | Rusty Wagner <rusty@vector35.com> | 2017-12-26 17:14:16 -0500 |
|---|---|---|
| committer | Rusty Wagner <rusty@vector35.com> | 2017-12-26 17:14:16 -0500 |
| commit | 9fc4766a507d5299cd4de78170c5798b02bb9698 (patch) | |
| tree | a4589f36a46e662cc16613db88f1c83c69512181 /binaryview.cpp | |
| parent | 06b97009b2a09dc7816f6ace2d6a4bff66cb3f26 (diff) | |
| parent | 26edabfdd7211012c7c8a03186d3025eea9aa345 (diff) | |
Merge branch 'dev' into fpu
Diffstat (limited to 'binaryview.cpp')
| -rw-r--r-- | binaryview.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/binaryview.cpp b/binaryview.cpp index 213be79a..50011a0f 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -288,6 +288,7 @@ BinaryView::BinaryView(const std::string& typeName, FileMetadata* file, BinaryVi view.getEntryPoint = GetEntryPointCallback; view.isExecutable = IsExecutableCallback; view.getDefaultEndianness = GetDefaultEndiannessCallback; + view.isRelocatable = IsRelocatableCallback; view.getAddressSize = GetAddressSizeCallback; view.save = SaveCallback; @@ -431,6 +432,13 @@ BNEndianness BinaryView::GetDefaultEndiannessCallback(void* ctxt) } +bool BinaryView::IsRelocatableCallback(void* ctxt) +{ + BinaryView* view = (BinaryView*)ctxt; + return view->PerformIsRelocatable(); +} + + size_t BinaryView::GetAddressSizeCallback(void* ctxt) { BinaryView* view = (BinaryView*)ctxt; @@ -494,6 +502,11 @@ BNEndianness BinaryView::PerformGetDefaultEndianness() const } +bool BinaryView::PerformIsRelocatable() const +{ + return false; +} + size_t BinaryView::PerformGetAddressSize() const { Ref<Architecture> arch = GetDefaultArchitecture(); @@ -836,6 +849,12 @@ BNEndianness BinaryView::GetDefaultEndianness() const } +bool BinaryView::IsRelocatable() const +{ + return BNIsRelocatable(m_object); +} + + size_t BinaryView::GetAddressSize() const { return BNGetViewAddressSize(m_object); @@ -1705,6 +1724,7 @@ vector<Segment> BinaryView::GetSegments() segment.dataOffset = segments[i].dataOffset; segment.dataLength = segments[i].dataLength; segment.flags = segments[i].flags; + segment.autoDefined = segments[i].autoDefined; result.push_back(segment); } @@ -1712,7 +1732,6 @@ vector<Segment> BinaryView::GetSegments() return result; } - bool BinaryView::GetSegmentAt(uint64_t addr, Segment& result) { BNSegment segment; |
