diff options
Diffstat (limited to 'binaryview.cpp')
| -rw-r--r-- | binaryview.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/binaryview.cpp b/binaryview.cpp index 1dc21283..e99ed738 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -48,6 +48,7 @@ BinaryView::BinaryView(FileMetadata* file) view.getModification = GetModificationCallback; view.getStart = GetStartCallback; view.getLength = GetLengthCallback; + view.getEntryPoint = GetEntryPointCallback; view.isExecutable = IsExecutableCallback; view.save = SaveCallback; @@ -118,6 +119,13 @@ uint64_t BinaryView::GetLengthCallback(void* ctxt) } +uint64_t BinaryView::GetEntryPointCallback(void* ctxt) +{ + BinaryView* view = (BinaryView*)ctxt; + return view->PerformGetEntryPoint(); +} + + bool BinaryView::IsExecutableCallback(void* ctxt) { BinaryView* view = (BinaryView*)ctxt; @@ -286,6 +294,12 @@ uint64_t BinaryView::GetLength() const } +uint64_t BinaryView::GetEntryPoint() const +{ + return BNGetEntryPoint(m_view); +} + + bool BinaryView::IsExecutable() const { return BNIsExecutableView(m_view); @@ -298,6 +312,18 @@ bool BinaryView::Save(FileAccessor* file) } +void BinaryView::AddFunctionForAnalysis(Architecture* arch, uint64_t addr) +{ + BNAddFunctionForAnalysis(m_view, arch->GetArchitectureObject(), addr); +} + + +void BinaryView::UpdateAnalysis() +{ + BNUpdateAnalysis(m_view); +} + + BinaryData::BinaryData(FileMetadata* file): BinaryView(BNCreateBinaryDataView(file->GetFileObject())) { } |
