diff options
| author | Peter LaFosse <peter@vector35.com> | 2018-06-29 16:54:48 -0400 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2018-06-29 16:54:48 -0400 |
| commit | 635c06c68ec72e579573f87ab86996b5952bf853 (patch) | |
| tree | cd6a95bc6066f3bfb534611be7db614b3886e131 /binaryninjacore.h | |
| parent | d0c07251a780ca3b638b2cdff0afa00c92aea421 (diff) | |
Add api for querying relocation
Diffstat (limited to 'binaryninjacore.h')
| -rw-r--r-- | binaryninjacore.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h index 73ccbd4d..f2384f85 100644 --- a/binaryninjacore.h +++ b/binaryninjacore.h @@ -1800,6 +1800,12 @@ extern "C" AlwaysSkipFunctionAnalysis }; + struct BNRange + { + uint64_t start; + uint64_t end; + }; + BINARYNINJACOREAPI char* BNAllocString(const char* contents); BINARYNINJACOREAPI void BNFreeString(char* str); BINARYNINJACOREAPI char** BNAllocStringList(const char** contents, size_t size); @@ -1996,6 +2002,9 @@ extern "C" uint64_t target, uint64_t reloc); BINARYNINJACOREAPI void BNDefineSymbolRelocation(BNBinaryView* view, BNArchitecture* arch, BNRelocationInfo* info, BNSymbol* target, uint64_t reloc); + BINARYNINJACOREAPI BNRange* BNGetRelocationRanges(BNBinaryView* segment, size_t* count); + BINARYNINJACOREAPI BNRange* BNGetRelocationRangesAtAddress(BNBinaryView* segment, uint64_t addr, size_t* count); + BINARYNINJACOREAPI void BNRegisterDataNotification(BNBinaryView* view, BNBinaryDataNotification* notify); BINARYNINJACOREAPI void BNUnregisterDataNotification(BNBinaryView* view, BNBinaryDataNotification* notify); @@ -3522,6 +3531,11 @@ extern "C" bool autoDefined); BINARYNINJACOREAPI BNSegment* BNNewSegmentReference(BNSegment* seg); BINARYNINJACOREAPI void BNFreeSegment(BNSegment* seg); + + BINARYNINJACOREAPI BNRange* BNSegmentGetRelocationRanges(BNSegment* segment, size_t* count); + BINARYNINJACOREAPI uint64_t BNSegmentGetRelocationsCount(BNSegment* segment); + BINARYNINJACOREAPI BNRange* BNSegmentGetRelocationRangesAtAddress(BNSegment* segment, uint64_t addr, size_t* count); + BINARYNINJACOREAPI void BNFreeRelocationRanges(BNRange* ranges); BINARYNINJACOREAPI uint64_t BNSegmentGetStart(BNSegment* segment); BINARYNINJACOREAPI uint64_t BNSegmentGetLength(BNSegment* segment); BINARYNINJACOREAPI uint64_t BNSegmentGetEnd(BNSegment* segment); |
