Skip to content

Commit 3c218e9

Browse files
committed
Seperate bundled script plugin directory for Apple to avoid signing issues
1 parent 4e372c5 commit 3c218e9

3 files changed

Lines changed: 23 additions & 0 deletions

File tree

binaryninjaapi.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,17 @@ string BinaryNinja::GetBundledPluginDirectory()
6060
}
6161

6262

63+
std::string BinaryNinja::GetBundledScriptPluginDirectory()
64+
{
65+
char* path = BNGetBundledScriptPluginDirectory();
66+
if (!path)
67+
return string();
68+
std::string result = path;
69+
BNFreeString(path);
70+
return result;
71+
}
72+
73+
6374
void BinaryNinja::SetBundledPluginDirectory(const string& path)
6475
{
6576
BNSetBundledPluginDirectory(path.c_str());

binaryninjaapi.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1982,7 +1982,16 @@ namespace BinaryNinja {
19821982
bool InitPlugins(bool allowUserPlugins = true);
19831983

19841984
std::string GetBundledPluginDirectory();
1985+
1986+
/*! Get the directory that script plugins bundled with BinaryNinja are located.
1987+
*
1988+
* On non-Apple platforms by default this will be identical to the core plugin directory.
1989+
*
1990+
* @return std::string - Absolute path directory that script plugins bundled with BinaryNinja are located in.
1991+
*/
1992+
std::string GetBundledScriptPluginDirectory();
19851993
void SetBundledPluginDirectory(const std::string& path);
1994+
void SetBundledScriptPluginDirectory(const std::string& path);
19861995
std::string GetUserDirectory();
19871996

19881997
/*! Get the Binary Ninja system cache directory

binaryninjacore.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4105,7 +4105,10 @@ extern "C"
41054105

41064106
BINARYNINJACOREAPI char* BNGetInstallDirectory(void);
41074107
BINARYNINJACOREAPI char* BNGetBundledPluginDirectory(void);
4108+
BINARYNINJACOREAPI char* BNGetBundledScriptPluginDirectory(void);
41084109
BINARYNINJACOREAPI void BNSetBundledPluginDirectory(const char* path);
4110+
BINARYNINJACOREAPI void BNSetBundledScriptPluginDirectory(const char* path);
4111+
41094112
BINARYNINJACOREAPI char* BNGetUserDirectory(void);
41104113
BINARYNINJACOREAPI char* BNGetUserPluginDirectory(void);
41114114
BINARYNINJACOREAPI char* BNGetRepositoriesDirectory(void);

0 commit comments

Comments
 (0)