summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2022-11-17 17:19:34 -0500
committerGlenn Smith <glenn@vector35.com>2022-11-30 18:35:17 -0500
commit4c242707996e94877d3e2762a2ef88835e98abbc (patch)
tree14e364a8c79e28a4f7584c8c776495ee20f762d0 /binaryninjacore.h
parent9372cd0e81000ca4d5e412e8eecde16424d346bd (diff)
Type library C++ api & import recording
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index d5655a09..0849a35d 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -150,13 +150,13 @@
#else
#define BN_HAVE_ATTRIBUTE(x) 0
#endif
-
-#if BN_HAVE_ATTRIBUTE(format) || (defined(__GNUC__) && !defined(__clang__))
- #define BN_PRINTF_ATTRIBUTE(string_index, first_to_check) \
- __attribute__((format(__printf__, string_index, first_to_check)))
-#else
+//
+//#if BN_HAVE_ATTRIBUTE(format) || (defined(__GNUC__) && !defined(__clang__))
+// #define BN_PRINTF_ATTRIBUTE(string_index, first_to_check) \
+// __attribute__((format(__printf__, string_index, first_to_check)))
+//#else
#define BN_PRINTF_ATTRIBUTE(string_index, first_to_check)
-#endif
+//#endif
#ifdef __cplusplus
@@ -5200,15 +5200,20 @@ extern "C"
BINARYNINJACOREAPI BNTypeLibrary** BNGetBinaryViewTypeLibraries(BNBinaryView* view, size_t* count);
BINARYNINJACOREAPI BNType* BNBinaryViewImportTypeLibraryType(
- BNBinaryView* view, BNTypeLibrary* lib, BNQualifiedName* name);
+ BNBinaryView* view, BNTypeLibrary** lib, BNQualifiedName* name);
BINARYNINJACOREAPI BNType* BNBinaryViewImportTypeLibraryObject(
- BNBinaryView* view, BNTypeLibrary* lib, BNQualifiedName* name);
+ BNBinaryView* view, BNTypeLibrary** lib, BNQualifiedName* name);
BINARYNINJACOREAPI void BNBinaryViewExportTypeToTypeLibrary(
BNBinaryView* view, BNTypeLibrary* lib, BNQualifiedName* name, BNType* type);
BINARYNINJACOREAPI void BNBinaryViewExportObjectToTypeLibrary(
BNBinaryView* view, BNTypeLibrary* lib, BNQualifiedName* name, BNType* type);
+ BINARYNINJACOREAPI void BNBinaryViewRecordImportedObjectLibrary(
+ BNBinaryView* view, BNPlatform* tgtPlatform, uint64_t tgtAddr, BNTypeLibrary* lib, BNQualifiedName* name);
+ BINARYNINJACOREAPI bool BNBinaryViewLookupImportedObjectLibrary(
+ BNBinaryView* view, BNPlatform* tgtPlatform, uint64_t tgtAddr, BNTypeLibrary** lib, BNQualifiedName* name);
+
// Language Representation
BINARYNINJACOREAPI BNLanguageRepresentationFunction* BNCreateLanguageRepresentationFunction(
BNArchitecture* arch, BNFunction* func);
@@ -5766,7 +5771,7 @@ extern "C"
BINARYNINJACOREAPI BNTypeLibrary** BNGetPlatformTypeLibraries(BNPlatform* platform, size_t* count);
BINARYNINJACOREAPI BNTypeLibrary** BNGetPlatformTypeLibrariesByName(
- BNPlatform* platform, char* depName, size_t* count);
+ BNPlatform* platform, const char* depName, size_t* count);
// Demangler
BINARYNINJACOREAPI bool BNDemangleMS(BNArchitecture* arch, const char* mangledName, BNType** outType,