summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2016-07-29 22:12:59 -0400
committerRusty Wagner <rusty@vector35.com>2016-07-29 22:12:59 -0400
commit038d192dfb3f73a268447d890cccf27926d35941 (patch)
tree87065866c86fd7416e520124b8a688d3da16883e /binaryninjacore.h
parent508584830e65fc08ea3a756dfa651670c9e01217 (diff)
Add API to set display type of integers
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index 22dbab50..1ca43677 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -173,6 +173,7 @@ extern "C"
HexDumpTextToken = 20,
OpcodeToken = 21,
StringToken = 22,
+ CharacterConstantToken = 23,
// The following are output by the analysis system automatically, these should
// not be used directly by the architecture plugins
@@ -489,6 +490,19 @@ extern "C"
Utf32String = 2
};
+ enum BNIntegerDisplayType
+ {
+ DefaultIntegerDisplayType,
+ BinaryDisplayType,
+ SignedOctalDisplayType,
+ UnsignedOctalDisplayType,
+ SignedDecimalDisplayType,
+ UnsignedDecimalDisplayType,
+ SignedHexadecimalDisplayType,
+ UnsignedHexadecimalDisplayType,
+ CharacterConstantDisplayType
+ };
+
struct BNLowLevelILInstruction
{
BNLowLevelILOperation operation;
@@ -674,6 +688,7 @@ extern "C"
BNInstructionTextTokenType type;
char* text;
uint64_t value;
+ size_t size, operand;
};
struct BNInstructionTextLine
@@ -1423,6 +1438,11 @@ extern "C"
uint64_t addr, size_t* count);
BINARYNINJACOREAPI void BNFreeInstructionTextLines(BNInstructionTextLine* lines, size_t count);
+ BINARYNINJACOREAPI BNIntegerDisplayType BNGetIntegerConstantDisplayType(BNFunction* func, BNArchitecture* arch,
+ uint64_t instrAddr, uint64_t value, size_t operand);
+ BINARYNINJACOREAPI void BNSetIntegerConstantDisplayType(BNFunction* func, BNArchitecture* arch,
+ uint64_t instrAddr, uint64_t value, size_t operand, BNIntegerDisplayType type);
+
BINARYNINJACOREAPI BNAnalysisCompletionEvent* BNAddAnalysisCompletionEvent(BNBinaryView* view, void* ctxt,
void (*callback)(void* ctxt));
BINARYNINJACOREAPI BNAnalysisCompletionEvent* BNNewAnalysisCompletionEventReference(BNAnalysisCompletionEvent* event);