summaryrefslogtreecommitdiff
path: root/binaryview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'binaryview.cpp')
-rw-r--r--binaryview.cpp26
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()))
{
}