summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2018-05-12 20:59:22 -0400
committerPeter LaFosse <peter@vector35.com>2018-05-12 20:59:22 -0400
commitbcbf41603888f03beff805415982cc1d9623e2c1 (patch)
tree241763f311ee38d4f6860a896544ee2b00e9986e /binaryninjaapi.h
parenta7524ae957f62fded3991152a360c553c99639b6 (diff)
Add support for symbolic relocations
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 54e98ad5..e52a3a16 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -1124,6 +1124,7 @@ namespace BinaryNinja
virtual bool PerformSave(FileAccessor* file);
void PerformDefineRelocation(Architecture* arch, BNRelocationInfo& info, uint64_t target, uint64_t reloc);
+ void PerformDefineRelocation(Architecture* arch, BNRelocationInfo& info, Ref<Symbol> sym, uint64_t reloc);
void NotifyDataWritten(uint64_t offset, size_t len);
void NotifyDataInserted(uint64_t offset, size_t len);
void NotifyDataRemoved(uint64_t offset, uint64_t len);
@@ -1151,6 +1152,7 @@ namespace BinaryNinja
static size_t GetAddressSizeCallback(void* ctxt);
static bool SaveCallback(void* ctxt, BNFileAccessor* file);
static void DefineRelocationCallback(void* ctxt, BNArchitecture* arch, BNRelocationInfo* info, uint64_t target, uint64_t reloc);
+ static void DefineSymbolRelocationCallback(void* ctxt, BNArchitecture* arch, BNRelocationInfo* info, BNSymbol* target, uint64_t reloc);
public:
BinaryView(BNBinaryView* view);
@@ -1224,6 +1226,7 @@ namespace BinaryNinja
bool Save(const std::string& path);
void DefineRelocation(Architecture* arch, BNRelocationInfo& info, uint64_t target, uint64_t reloc);
+ void DefineRelocation(Architecture* arch, BNRelocationInfo& info, Ref<Symbol> target, uint64_t reloc);
void RegisterNotification(BinaryDataNotification* notify);
void UnregisterNotification(BinaryDataNotification* notify);