|
37 | 37 | // Current ABI version for linking to the core. This is incremented any time |
38 | 38 | // there are changes to the API that affect linking, including new functions, |
39 | 39 | // new types, or modifications to existing functions or types. |
40 | | -#define BN_CURRENT_CORE_ABI_VERSION 150 |
| 40 | +#define BN_CURRENT_CORE_ABI_VERSION 151 |
41 | 41 |
|
42 | 42 | // Minimum ABI version that is supported for loading of plugins. Plugins that |
43 | 43 | // are linked to an ABI version less than this will not be able to load and |
@@ -3682,6 +3682,19 @@ extern "C" |
3682 | 3682 | uint32_t flags; |
3683 | 3683 | } BNSegmentInfo; |
3684 | 3684 |
|
| 3685 | + typedef struct BNSectionInfo { |
| 3686 | + const char* name; |
| 3687 | + uint64_t start; |
| 3688 | + uint64_t length; |
| 3689 | + BNSectionSemantics semantics; |
| 3690 | + const char* type; |
| 3691 | + uint64_t align; |
| 3692 | + uint64_t entrySize; |
| 3693 | + const char* linkedSection; |
| 3694 | + const char* infoSection; |
| 3695 | + uint64_t infoData; |
| 3696 | + } BNSectionInfo; |
| 3697 | + |
3685 | 3698 | typedef bool(*BNCollaborationAnalysisConflictHandler)(void*, const char** keys, BNAnalysisMergeConflict** conflicts, size_t conflictCount); |
3686 | 3699 | typedef bool(*BNCollaborationNameChangesetFunction)(void*, BNCollaborationChangeset*); |
3687 | 3700 |
|
@@ -4566,10 +4579,12 @@ extern "C" |
4566 | 4579 | BINARYNINJACOREAPI void BNAddAutoSection(BNBinaryView* view, const char* name, uint64_t start, uint64_t length, |
4567 | 4580 | BNSectionSemantics semantics, const char* type, uint64_t align, uint64_t entrySize, const char* linkedSection, |
4568 | 4581 | const char* infoSection, uint64_t infoData); |
| 4582 | + BINARYNINJACOREAPI void BNAddAutoSections(BNBinaryView* view, const BNSectionInfo* sectionInfo, size_t count); |
4569 | 4583 | BINARYNINJACOREAPI void BNRemoveAutoSection(BNBinaryView* view, const char* name); |
4570 | 4584 | BINARYNINJACOREAPI void BNAddUserSection(BNBinaryView* view, const char* name, uint64_t start, uint64_t length, |
4571 | 4585 | BNSectionSemantics semantics, const char* type, uint64_t align, uint64_t entrySize, const char* linkedSection, |
4572 | 4586 | const char* infoSection, uint64_t infoData); |
| 4587 | + BINARYNINJACOREAPI void BNAddUserSections(BNBinaryView* view, const BNSectionInfo* sectionInfo, size_t count); |
4573 | 4588 | BINARYNINJACOREAPI void BNRemoveUserSection(BNBinaryView* view, const char* name); |
4574 | 4589 | BINARYNINJACOREAPI BNSection** BNGetSections(BNBinaryView* view, size_t* count); |
4575 | 4590 | BINARYNINJACOREAPI BNSection** BNGetSectionsAt(BNBinaryView* view, uint64_t addr, size_t* count); |
|
0 commit comments