Classes available to C++ Core Plugins. More...
Classes available to C++ Core Plugins.
Topics | |
Architectures | |
Classes related to interacting with, hooking, and implementing Architectures . | |
Basic Blocks | |
Documentation for interacting with basic blocks . | |
BinaryView | |
Classes related to interacting with and implementing custom BinaryViews . | |
CallingConvention | |
Confidence | |
DataBuffer | |
DataRenderer | |
Database | |
DebugInfo | |
Demangle | |
DownloadProvider | |
FileAccessor | |
FileMetadata | |
Flowgraph | |
Function | |
FunctionRecognizer | |
High Level IL | |
Interaction | |
LinearDisassembly | |
Logging | |
Low Level IL | |
MainThread | |
Medium Level IL | |
Metadata | |
NameList | |
Platform | |
Plugin | |
Plugin Manager | |
RefCount | |
Scripting Provider | |
Secrets Provider | |
Settings | |
TempFile | |
Transform | |
TypeParser | |
TypePrinter | |
Types | |
Undo | |
Update | |
Websocket Provider | |
Workflows | |
Classes | |
class | BinaryNinja::User |
class | BinaryNinja::ReportCollection |
class | BinaryNinja::DisassemblyTextRenderer |
class | BinaryNinja::Component |
Components are objects that can contain Functions and other Components. More... | |
class BinaryNinja::User |
Public Member Functions | |
User (BNUser *user) | |
std::string | GetName () |
std::string | GetEmail () |
std::string | GetId () |
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNUser, BNNewUserReference, BNFreeUser > | |
CoreRefCountObject () | |
virtual | ~CoreRefCountObject () |
BNUser * | GetObject () const |
void | AddRef () |
void | Release () |
void | AddRefForRegistration () |
void | ReleaseForRegistration () |
void | AddRefForCallback () |
void | ReleaseForCallback () |
Additional Inherited Members | |
Static Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNUser, BNNewUserReference, BNFreeUser > | |
static BNUser * | GetObject (CoreRefCountObject *obj) |
static BNUser * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNUser, BNNewUserReference, BNFreeUser > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNUser * | m_object |
User::User | ( | BNUser * | user | ) |
string User::GetName | ( | ) |
string User::GetEmail | ( | ) |
string User::GetId | ( | ) |
class BinaryNinja::ReportCollection |
Public Member Functions | |
ReportCollection () | |
ReportCollection (BNReportCollection *reports) | |
size_t | GetCount () const |
BNReportType | GetType (size_t i) const |
Ref< BinaryView > | GetView (size_t i) const |
std::string | GetTitle (size_t i) const |
std::string | GetContents (size_t i) const |
std::string | GetPlainText (size_t i) const |
Ref< FlowGraph > | GetFlowGraph (size_t i) const |
void | AddPlainTextReport (Ref< BinaryView > view, const std::string &title, const std::string &contents) |
void | AddMarkdownReport (Ref< BinaryView > view, const std::string &title, const std::string &contents, const std::string &plainText="") |
void | AddHTMLReport (Ref< BinaryView > view, const std::string &title, const std::string &contents, const std::string &plainText="") |
void | AddGraphReport (Ref< BinaryView > view, const std::string &title, Ref< FlowGraph > graph) |
void | UpdateFlowGraph (size_t i, Ref< FlowGraph > graph) |
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNReportCollection, BNNewReportCollectionReference, BNFreeReportCollection > | |
CoreRefCountObject () | |
virtual | ~CoreRefCountObject () |
BNReportCollection * | GetObject () const |
void | AddRef () |
void | Release () |
void | AddRefForRegistration () |
void | ReleaseForRegistration () |
void | AddRefForCallback () |
void | ReleaseForCallback () |
Additional Inherited Members | |
Static Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNReportCollection, BNNewReportCollectionReference, BNFreeReportCollection > | |
static BNReportCollection * | GetObject (CoreRefCountObject *obj) |
static BNReportCollection * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNReportCollection, BNNewReportCollectionReference, BNFreeReportCollection > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNReportCollection * | m_object |
ReportCollection::ReportCollection | ( | ) |
ReportCollection::ReportCollection | ( | BNReportCollection * | reports | ) |
size_t ReportCollection::GetCount | ( | ) | const |
BNReportType ReportCollection::GetType | ( | size_t | i | ) | const |
Ref< BinaryView > ReportCollection::GetView | ( | size_t | i | ) | const |
string ReportCollection::GetTitle | ( | size_t | i | ) | const |
string ReportCollection::GetContents | ( | size_t | i | ) | const |
string ReportCollection::GetPlainText | ( | size_t | i | ) | const |
void ReportCollection::AddPlainTextReport | ( | Ref< BinaryView > | view, |
const std::string & | title, | ||
const std::string & | contents ) |
void ReportCollection::AddMarkdownReport | ( | Ref< BinaryView > | view, |
const std::string & | title, | ||
const std::string & | contents, | ||
const std::string & | plainText = "" ) |
void ReportCollection::AddHTMLReport | ( | Ref< BinaryView > | view, |
const std::string & | title, | ||
const std::string & | contents, | ||
const std::string & | plainText = "" ) |
void ReportCollection::AddGraphReport | ( | Ref< BinaryView > | view, |
const std::string & | title, | ||
Ref< FlowGraph > | graph ) |
class BinaryNinja::DisassemblyTextRenderer |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNDisassemblyTextRenderer, BNNewDisassemblyTextRendererReference, BNFreeDisassemblyTextRenderer > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNDisassemblyTextRenderer * | m_object |
DisassemblyTextRenderer::DisassemblyTextRenderer | ( | Function * | func, |
DisassemblySettings * | settings = nullptr ) |
DisassemblyTextRenderer::DisassemblyTextRenderer | ( | LowLevelILFunction * | func, |
DisassemblySettings * | settings = nullptr ) |
DisassemblyTextRenderer::DisassemblyTextRenderer | ( | MediumLevelILFunction * | func, |
DisassemblySettings * | settings = nullptr ) |
DisassemblyTextRenderer::DisassemblyTextRenderer | ( | HighLevelILFunction * | func, |
DisassemblySettings * | settings = nullptr ) |
DisassemblyTextRenderer::DisassemblyTextRenderer | ( | BNDisassemblyTextRenderer * | renderer | ) |
Ref< LowLevelILFunction > DisassemblyTextRenderer::GetLowLevelILFunction | ( | ) | const |
Ref< MediumLevelILFunction > DisassemblyTextRenderer::GetMediumLevelILFunction | ( | ) | const |
Ref< HighLevelILFunction > DisassemblyTextRenderer::GetHighLevelILFunction | ( | ) | const |
Ref< BasicBlock > DisassemblyTextRenderer::GetBasicBlock | ( | ) | const |
Ref< Architecture > DisassemblyTextRenderer::GetArchitecture | ( | ) | const |
Ref< DisassemblySettings > DisassemblyTextRenderer::GetSettings | ( | ) | const |
void DisassemblyTextRenderer::SetBasicBlock | ( | BasicBlock * | block | ) |
void DisassemblyTextRenderer::SetArchitecture | ( | Architecture * | arch | ) |
void DisassemblyTextRenderer::SetSettings | ( | DisassemblySettings * | settings | ) |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
vector< DisassemblyTextLine > DisassemblyTextRenderer::PostProcessInstructionTextLines | ( | uint64_t | addr, |
size_t | len, | ||
const std::vector< DisassemblyTextLine > & | lines, | ||
const std::string & | indentSpaces = "" ) |
|
virtual |
void DisassemblyTextRenderer::ResetDeduplicatedComments | ( | ) |
bool DisassemblyTextRenderer::AddSymbolToken | ( | std::vector< InstructionTextToken > & | tokens, |
uint64_t | addr, | ||
size_t | size, | ||
size_t | operand ) |
|
static |
void DisassemblyTextRenderer::AddStackVariableReferenceTokens | ( | std::vector< InstructionTextToken > & | tokens, |
const StackVariableReference & | ref ) |
|
static |
void DisassemblyTextRenderer::AddIntegerToken | ( | std::vector< InstructionTextToken > & | tokens, |
const InstructionTextToken & | token, | ||
Architecture * | arch, | ||
uint64_t | addr ) |
void DisassemblyTextRenderer::WrapComment | ( | DisassemblyTextLine & | line, |
std::vector< DisassemblyTextLine > & | lines, | ||
const std::string & | comment, | ||
bool | hasAutoAnnotations, | ||
const std::string & | leadingSpaces = " ", | ||
const std::string & | indentSpaces = "" ) |
|
static |
|
static |
class BinaryNinja::Component |
Components are objects that can contain Functions and other Components.
They can be queried for information about the functions contained within them.
Components have a Guid, which persistent across saves and loads of the database, and should be used for retrieving components when such is required and a reference to the Component cannot be held.
Public Member Functions | |
Component (BNComponent *type) | |
std::string | GetGuid () |
Get the unique identifier for this component. | |
bool | operator== (const Component &other) const |
bool | operator!= (const Component &other) const |
Ref< BinaryView > | GetView () |
std::string | GetDisplayName () |
The displayed name for the component. | |
std::string | GetName () |
The original name for the component. | |
void | SetName (const std::string &name) |
Set the name for the component. | |
Ref< Component > | GetParent () |
Get the parent component. | |
bool | AddFunction (Ref< Function > func) |
Add a function to this component. | |
bool | AddComponent (Ref< Component > component) |
Move a component to this component. | |
bool | AddDataVariable (DataVariable dataVariable) |
bool | RemoveComponent (Ref< Component > component) |
Remove a Component from this Component, moving it to the root component. | |
bool | RemoveFunction (Ref< Function > func) |
Remove a function. | |
bool | RemoveDataVariable (DataVariable dataVariable) |
std::vector< Ref< Type > > | GetReferencedTypes () |
Get a list of types referenced by the functions in this Component. | |
std::vector< Ref< Component > > | GetContainedComponents () |
Get a list of components contained by this component. | |
std::vector< Ref< Function > > | GetContainedFunctions () |
Get a list of functions contained within this Component. | |
std::vector< DataVariable > | GetContainedDataVariables () |
Get a list of datavariables added to this component. | |
std::vector< DataVariable > | GetReferencedDataVariables () |
Get a list of DataVariables referenced by the functions in this Component. | |
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNComponent, BNNewComponentReference, BNFreeComponent > | |
CoreRefCountObject () | |
virtual | ~CoreRefCountObject () |
BNComponent * | GetObject () const |
void | AddRef () |
void | Release () |
void | AddRefForRegistration () |
void | ReleaseForRegistration () |
void | AddRefForCallback () |
void | ReleaseForCallback () |
Additional Inherited Members | |
Static Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNComponent, BNNewComponentReference, BNFreeComponent > | |
static BNComponent * | GetObject (CoreRefCountObject *obj) |
static BNComponent * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNComponent, BNNewComponentReference, BNFreeComponent > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNComponent * | m_object |
Component::Component | ( | BNComponent * | type | ) |
std::string Component::GetGuid | ( | ) |
Get the unique identifier for this component.
bool Component::operator== | ( | const Component & | other | ) | const |
bool Component::operator!= | ( | const Component & | other | ) | const |
Ref< BinaryView > Component::GetView | ( | ) |
std::string Component::GetDisplayName | ( | ) |
The displayed name for the component.
This can differ from the GetOriginalName() value if the parent component also contains other components with the same name.
Subsequent duplicates will return the original name with " (1)", " (2)" and so on appended.
This name can change whenever a different duplicate is removed.
std::string Component::GetName | ( | ) |
The original name for the component.
This may differ from Component::GetName() whenever the parent contains Components with the same original name.
This function will always return the value originally set for this Component.
void Component::SetName | ( | const std::string & | name | ) |
Set the name for the component.
name | New component name. |
Add a function to this component.
func | Function to add. |
Move a component to this component.
component | Component to add. |
bool Component::AddDataVariable | ( | DataVariable | dataVariable | ) |
Remove a function.
func | Function to remove |
bool Component::RemoveDataVariable | ( | DataVariable | dataVariable | ) |
Get a list of components contained by this component.
std::vector< DataVariable > Component::GetContainedDataVariables | ( | ) |
Get a list of datavariables added to this component.
std::vector< DataVariable > Component::GetReferencedDataVariables | ( | ) |
Get a list of DataVariables referenced by the functions in this Component.
std::string BinaryNinja::EscapeString | ( | const std::string & | s | ) |
std::string BinaryNinja::UnescapeString | ( | const std::string & | s | ) |
bool BinaryNinja::PreprocessSource | ( | const std::string & | source, |
const std::string & | fileName, | ||
std::string & | output, | ||
std::string & | errors, | ||
const std::vector< std::string > & | includeDirs = std::vector< std::string >() ) |
void BinaryNinja::DisablePlugins | ( | ) |
bool BinaryNinja::IsPluginsEnabled | ( | ) |
bool BinaryNinja::InitPlugins | ( | bool | allowUserPlugins = true | ) |
void BinaryNinja::InitCorePlugins | ( | ) |
void BinaryNinja::InitUserPlugins | ( | ) |
void BinaryNinja::InitRepoPlugins | ( | ) |
string BinaryNinja::GetBundledPluginDirectory | ( | ) |
void BinaryNinja::SetBundledPluginDirectory | ( | const std::string & | path | ) |
string BinaryNinja::GetUserDirectory | ( | void | ) |
string BinaryNinja::GetSettingsFileName | ( | ) |
string BinaryNinja::GetRepositoriesDirectory | ( | ) |
string BinaryNinja::GetInstallDirectory | ( | ) |
string BinaryNinja::GetUserPluginDirectory | ( | ) |
std::string BinaryNinja::GetPathRelativeToBundledPluginDirectory | ( | const std::string & | path | ) |
std::string BinaryNinja::GetPathRelativeToUserPluginDirectory | ( | const std::string & | path | ) |
std::string BinaryNinja::GetPathRelativeToUserDirectory | ( | const std::string & | path | ) |
bool BinaryNinja::ExecuteWorkerProcess | ( | const std::string & | path, |
const std::vector< std::string > & | args, | ||
const DataBuffer & | input, | ||
std::string & | output, | ||
std::string & | errors, | ||
bool | stdoutIsText = false, | ||
bool | stderrIsText = true ) |
string BinaryNinja::GetVersionString | ( | ) |
string BinaryNinja::GetLicensedUserEmail | ( | ) |
string BinaryNinja::GetProduct | ( | ) |
string BinaryNinja::GetProductType | ( | ) |
string BinaryNinja::GetSerialNumber | ( | ) |
int BinaryNinja::GetLicenseCount | ( | ) |
bool BinaryNinja::IsUIEnabled | ( | ) |
uint32_t BinaryNinja::GetBuildId | ( | ) |
bool BinaryNinja::AreAutoUpdatesEnabled | ( | ) |
void BinaryNinja::SetAutoUpdatesEnabled | ( | bool | enabled | ) |
uint64_t BinaryNinja::GetTimeSinceLastUpdateCheck | ( | ) |
void BinaryNinja::UpdatesChecked | ( | ) |
string BinaryNinja::GetActiveUpdateChannel | ( | ) |
void BinaryNinja::SetActiveUpdateChannel | ( | const std::string & | channel | ) |
void BinaryNinja::SetCurrentPluginLoadOrder | ( | BNPluginLoadOrder | order | ) |
void BinaryNinja::AddRequiredPluginDependency | ( | const std::string & | name | ) |
void BinaryNinja::AddOptionalPluginDependency | ( | const std::string & | name | ) |
std::string BinaryNinja::CoreEnumName | ( | ) |
std::optional< std::string > BinaryNinja::CoreEnumToString | ( | T | value | ) |
std::optional< T > BinaryNinja::CoreEnumFromString | ( | const std::string & | value | ) |
std::optional< size_t > BinaryNinja::FuzzyMatchSingle | ( | const std::string & | target, |
const std::string & | query ) |