summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2016-07-15 21:15:37 -0400
committerRusty Wagner <rusty@vector35.com>2016-07-15 21:15:37 -0400
commit2c2f521aa188d4f8027c5db8dfaf88f670d8a63f (patch)
treef736704102bc0f1f779a7ab34714baf465a66042 /binaryninjaapi.h
parent8fcc840c79174728ef96afa0ff37713e74311d51 (diff)
Add API for instruction length and option for showing opcodes in disassembly
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index fedd2bf0..18a379c3 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -1108,6 +1108,8 @@ namespace BinaryNinja
static BNEndianness GetEndiannessCallback(void* ctxt);
static size_t GetAddressSizeCallback(void* ctxt);
static size_t GetDefaultIntegerSizeCallback(void* ctxt);
+ static size_t GetMaxInstructionLengthCallback(void* ctxt);
+ static size_t GetOpcodeDisplayLengthCallback(void* ctxt);
static bool GetInstructionInfoCallback(void* ctxt, const uint8_t* data, uint64_t addr,
size_t maxLen, BNInstructionInfo* result);
static bool GetInstructionTextCallback(void* ctxt, const uint8_t* data, uint64_t addr,
@@ -1159,6 +1161,9 @@ namespace BinaryNinja
virtual size_t GetAddressSize() const = 0;
virtual size_t GetDefaultIntegerSize() const;
+ virtual size_t GetMaxInstructionLength() const;
+ virtual size_t GetOpcodeDisplayLength() const;
+
virtual bool GetInstructionInfo(const uint8_t* data, uint64_t addr, size_t maxLen, InstructionInfo& result) = 0;
virtual bool GetInstructionText(const uint8_t* data, uint64_t addr, size_t& len,
std::vector<InstructionTextToken>& result) = 0;
@@ -1300,6 +1305,8 @@ namespace BinaryNinja
virtual BNEndianness GetEndianness() const override;
virtual size_t GetAddressSize() const override;
virtual size_t GetDefaultIntegerSize() const override;
+ virtual size_t GetMaxInstructionLength() const override;
+ virtual size_t GetOpcodeDisplayLength() const override;
virtual bool GetInstructionInfo(const uint8_t* data, uint64_t addr, size_t maxLen, InstructionInfo& result) override;
virtual bool GetInstructionText(const uint8_t* data, uint64_t addr, size_t& len,
std::vector<InstructionTextToken>& result) override;