summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2016-07-28 00:06:34 -0400
committerRusty Wagner <rusty@vector35.com>2016-07-28 00:07:55 -0400
commitfdada2c752ab21cce2f6971e3270a4a3eb4faada (patch)
tree22a0a8d5e7947ffaa7cf84c30123d6a9ec020692
parentaa1804a3b5a1a3514d2c0f0fe5973ab22a7507df (diff)
Add API to remove user function
-rw-r--r--binaryninjaapi.h1
-rw-r--r--binaryninjacore.h1
-rw-r--r--binaryview.cpp6
-rw-r--r--python/__init__.py3
4 files changed, 11 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 7a6b3280..81bf571a 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -816,6 +816,7 @@ namespace BinaryNinja
void AddEntryPointForAnalysis(Platform* platform, uint64_t start);
void RemoveAnalysisFunction(Function* func);
void CreateUserFunction(Platform* platform, uint64_t start);
+ void RemoveUserFunction(Function* func);
void UpdateAnalysis();
void AbortAnalysis();
diff --git a/binaryninjacore.h b/binaryninjacore.h
index 1cc5bd75..22dbab50 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -1292,6 +1292,7 @@ extern "C"
BINARYNINJACOREAPI void BNAddEntryPointForAnalysis(BNBinaryView* view, BNPlatform* platform, uint64_t addr);
BINARYNINJACOREAPI void BNRemoveAnalysisFunction(BNBinaryView* view, BNFunction* func);
BINARYNINJACOREAPI void BNCreateUserFunction(BNBinaryView* view, BNPlatform* platform, uint64_t addr);
+ BINARYNINJACOREAPI void BNRemoveUserFunction(BNBinaryView* view, BNFunction* func);
BINARYNINJACOREAPI void BNUpdateAnalysis(BNBinaryView* view);
BINARYNINJACOREAPI void BNAbortAnalysis(BNBinaryView* view);
diff --git a/binaryview.cpp b/binaryview.cpp
index de0870b6..d97051c7 100644
--- a/binaryview.cpp
+++ b/binaryview.cpp
@@ -791,6 +791,12 @@ void BinaryView::CreateUserFunction(Platform* platform, uint64_t start)
}
+void BinaryView::RemoveUserFunction(Function* func)
+{
+ BNRemoveUserFunction(m_object, func->GetObject());
+}
+
+
void BinaryView::UpdateAnalysis()
{
BNUpdateAnalysis(m_object);
diff --git a/python/__init__.py b/python/__init__.py
index b6fa9294..ba3f1ba9 100644
--- a/python/__init__.py
+++ b/python/__init__.py
@@ -1411,6 +1411,9 @@ class BinaryView(object):
def create_user_function(self, platform, addr):
core.BNCreateUserFunction(self.handle, platform.handle, addr)
+ def remove_user_function(self, func):
+ core.BNRemoveUserFunction(self.handle, func.handle)
+
def update_analysis(self):
core.BNUpdateAnalysis(self.handle)