summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2018-11-08 09:58:36 -0500
committerPeter LaFosse <peter@vector35.com>2018-11-13 11:07:27 -0500
commitd8ff0a6324fe92ccafe296298409c50cc4b526fa (patch)
treec5bf8cdf43902d3122a6747d5c42d9197afc0808 /binaryninjacore.h
parent9df7c7c621c82e6caa7a09c4273e4feba86277f2 (diff)
Add expression parsing APIs
Add text-based and constant-based searching
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index b7cfcc23..1b20121c 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -1667,7 +1667,7 @@ extern "C"
enum BNFindFlag
{
- NoFindFlags = 0,
+ FindCaseSensitive = 0,
FindCaseInsensitive = 1
};
@@ -2174,6 +2174,10 @@ extern "C"
BINARYNINJACOREAPI bool BNFindNextData(BNBinaryView* view, uint64_t start, BNDataBuffer* data, uint64_t* result,
BNFindFlag flags);
+ BINARYNINJACOREAPI bool BNFindNextText(BNBinaryView* view, uint64_t start, const char* data, uint64_t* result,
+ BNDisassemblySettings* settings, BNFindFlag flags);
+ BINARYNINJACOREAPI bool BNFindNextConstant(BNBinaryView* view, uint64_t start, uint64_t constant, uint64_t* result,
+ BNDisassemblySettings* settings);
BINARYNINJACOREAPI void BNAddAutoSegment(BNBinaryView* view, uint64_t start, uint64_t length,
uint64_t dataOffset, uint64_t dataLength, uint32_t flags);
@@ -3810,6 +3814,10 @@ extern "C"
BINARYNINJACOREAPI BNDataRendererContainer* BNGetDataRendererContainer();
BINARYNINJACOREAPI void BNRegisterGenericDataRenderer(BNDataRendererContainer* container, BNDataRenderer* renderer);
BINARYNINJACOREAPI void BNRegisterTypeSpecificDataRenderer(BNDataRendererContainer* container, BNDataRenderer* renderer);
+
+ BINARYNINJACOREAPI bool BNParseExpression(BNBinaryView* view, const char* expression, uint64_t* offset, uint64_t here, char** errorString);
+ BINARYNINJACOREAPI void BNFreeParseError(char* errorString);
+
#ifdef __cplusplus
}
#endif