diff options
| author | Rusty Wagner <rusty@vector35.com> | 2015-08-17 21:38:27 -0400 |
|---|---|---|
| committer | Rusty Wagner <rusty@vector35.com> | 2015-08-17 21:38:27 -0400 |
| commit | f2dadb1046adc01f734182193d48f76a846ae662 (patch) | |
| tree | 123a8b3837ee60ffb64d9c1c4db9d8fcb9442a89 | |
| parent | 5bb9b6c059e85e81a307a111fef7749cd759a8d0 (diff) | |
Refactor ELF parser to use dynamic program header instead of section headers for imports
| -rw-r--r-- | binaryninjaapi.h | 3 | ||||
| -rw-r--r-- | binaryview.cpp | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h index 1030e803..28ef54b6 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -446,6 +446,7 @@ namespace BinaryNinja void NotifyDataRemoved(uint64_t offset, uint64_t len); private: + static bool InitCallback(void* ctxt); static size_t ReadCallback(void* ctxt, void* dest, uint64_t offset, size_t len); static size_t WriteCallback(void* ctxt, uint64_t offset, const void* src, size_t len); static size_t InsertCallback(void* ctxt, uint64_t offset, const void* src, size_t len); @@ -464,6 +465,8 @@ namespace BinaryNinja BinaryView(BNBinaryView* view); virtual ~BinaryView(); + virtual bool Init() { return true; } + FileMetadata* GetFile() const { return m_file; } BNBinaryView* GetViewObject() const { return m_view; } diff --git a/binaryview.cpp b/binaryview.cpp index 12fa6548..7d9af62e 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -177,6 +177,13 @@ BinaryView::~BinaryView() } +bool BinaryView::InitCallback(void* ctxt) +{ + BinaryView* view = (BinaryView*)ctxt; + return view->Init(); +} + + size_t BinaryView::ReadCallback(void* ctxt, void* dest, uint64_t offset, size_t len) { BinaryView* view = (BinaryView*)ctxt; |
