summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2016-07-22 03:00:52 -0400
committerRusty Wagner <rusty@vector35.com>2016-07-22 03:00:52 -0400
commit13491e5eb8d50c242cf6858b111e404ea9f79239 (patch)
tree653ea1b2267ef67c1f8442516a0d9286e8fdf1ad /binaryninjacore.h
parent5e15a16c95dd3e0b48ea0b319a813720f14fec5a (diff)
Add API to set type of function
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h28
1 files changed, 17 insertions, 11 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index ac4fa0a3..837a99e1 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -161,17 +161,18 @@ extern "C"
FloatingPointToken = 8,
AnnotationToken = 9,
CodeRelativeAddressToken = 10,
- VariableTypeToken = 11,
- FunctionReturnTypeToken = 12,
- FunctionAttributeToken = 13,
- ArgumentTypeToken = 14,
- ArgumentNameToken = 15,
- HexDumpByteValueToken = 16,
- HexDumpSkippedByteToken = 17,
- HexDumpInvalidByteToken = 18,
- HexDumpTextToken = 19,
- OpcodeToken = 20,
- StringToken = 21,
+ StackVariableTypeToken = 11,
+ DataVariableTypeToken = 12,
+ FunctionReturnTypeToken = 13,
+ FunctionAttributeToken = 14,
+ ArgumentTypeToken = 15,
+ ArgumentNameToken = 16,
+ HexDumpByteValueToken = 17,
+ HexDumpSkippedByteToken = 18,
+ HexDumpInvalidByteToken = 19,
+ HexDumpTextToken = 20,
+ OpcodeToken = 21,
+ StringToken = 22,
// The following are output by the analysis system automatically, these should
// not be used directly by the architecture plugins
@@ -1309,6 +1310,8 @@ extern "C"
BINARYNINJACOREAPI BNSymbol* BNGetFunctionSymbol(BNFunction* func);
BINARYNINJACOREAPI bool BNWasFunctionAutomaticallyDiscovered(BNFunction* func);
BINARYNINJACOREAPI bool BNCanFunctionReturn(BNFunction* func);
+ BINARYNINJACOREAPI void BNSetFunctionAutoType(BNFunction* func, BNType* type);
+ BINARYNINJACOREAPI void BNSetFunctionUserType(BNFunction* func, BNType* type);
BINARYNINJACOREAPI char* BNGetCommentForAddress(BNFunction* func, uint64_t addr);
BINARYNINJACOREAPI uint64_t* BNGetCommentedAddresses(BNFunction* func, size_t* count);
@@ -1452,6 +1455,9 @@ extern "C"
BINARYNINJACOREAPI void BNFreeDataVariables(BNDataVariable* vars, size_t count);
BINARYNINJACOREAPI bool BNGetDataVariableAtAddress(BNBinaryView* view, uint64_t addr, BNDataVariable* var);
+ BINARYNINJACOREAPI bool BNParseTypeString(BNBinaryView* view, const char* text, BNNameAndType* result, char** errors);
+ BINARYNINJACOREAPI void BNFreeNameAndType(BNNameAndType* obj);
+
// Disassembly settings
BINARYNINJACOREAPI BNDisassemblySettings* BNCreateDisassemblySettings(void);
BINARYNINJACOREAPI BNDisassemblySettings* BNNewDisassemblySettingsReference(BNDisassemblySettings* settings);