Classes | |
struct | BinaryNinja::DatabaseException |
class | BinaryNinja::KeyValueStore |
Maintains access to the raw data stored in Snapshots and various other Database-related structures. More... | |
class | BinaryNinja::Snapshot |
A model of an individual database snapshot, created on save. More... | |
class | BinaryNinja::Database |
Provides lower level access to raw snapshot data used to construct analysis data. More... | |
struct BinaryNinja::DatabaseException |
Public Member Functions | |
DatabaseException (const std::string &desc) | |
Public Member Functions inherited from BinaryNinja::ExceptionWithStackTrace | |
ExceptionWithStackTrace (const std::string &message) | |
ExceptionWithStackTrace (std::exception_ptr exc1, std::exception_ptr exc2) | |
const char * | what () const noexcept override |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::ExceptionWithStackTrace | |
std::string | m_originalMessage |
std::string | m_message |
std::string | m_stackTrace |
|
inline |
class BinaryNinja::KeyValueStore |
Maintains access to the raw data stored in Snapshots and various other Database-related structures.
Public Member Functions | |
KeyValueStore () | |
KeyValueStore (const DataBuffer &buffer) | |
KeyValueStore (BNKeyValueStore *store) | |
std::vector< std::string > | GetKeys () const |
bool | HasValue (const std::string &name) const |
Json::Value | GetValue (const std::string &name) const |
DataBuffer | GetValueHash (const std::string &name) const |
DataBuffer | GetBuffer (const std::string &name) const |
void | SetValue (const std::string &name, const Json::Value &value) |
void | SetBuffer (const std::string &name, const DataBuffer &value) |
DataBuffer | GetSerializedData () const |
void | BeginNamespace (const std::string &name) |
void | EndNamespace () |
bool | IsEmpty () const |
size_t | ValueSize () const |
size_t | DataSize () const |
size_t | ValueStorageSize () const |
size_t | NamespaceSize () const |
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNKeyValueStore, BNNewKeyValueStoreReference, BNFreeKeyValueStore > | |
CoreRefCountObject () | |
virtual | ~CoreRefCountObject () |
BNKeyValueStore * | 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< BNKeyValueStore, BNNewKeyValueStoreReference, BNFreeKeyValueStore > | |
static BNKeyValueStore * | GetObject (CoreRefCountObject *obj) |
static BNKeyValueStore * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNKeyValueStore, BNNewKeyValueStoreReference, BNFreeKeyValueStore > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNKeyValueStore * | m_object |
KeyValueStore::KeyValueStore | ( | ) |
KeyValueStore::KeyValueStore | ( | const DataBuffer & | buffer | ) |
KeyValueStore::KeyValueStore | ( | BNKeyValueStore * | store | ) |
std::vector< std::string > KeyValueStore::GetKeys | ( | ) | const |
bool KeyValueStore::HasValue | ( | const std::string & | name | ) | const |
Json::Value KeyValueStore::GetValue | ( | const std::string & | name | ) | const |
DataBuffer KeyValueStore::GetValueHash | ( | const std::string & | name | ) | const |
DataBuffer KeyValueStore::GetBuffer | ( | const std::string & | name | ) | const |
void KeyValueStore::SetValue | ( | const std::string & | name, |
const Json::Value & | value ) |
void KeyValueStore::SetBuffer | ( | const std::string & | name, |
const DataBuffer & | value ) |
DataBuffer KeyValueStore::GetSerializedData | ( | ) | const |
void KeyValueStore::BeginNamespace | ( | const std::string & | name | ) |
void KeyValueStore::EndNamespace | ( | ) |
bool KeyValueStore::IsEmpty | ( | ) | const |
size_t KeyValueStore::ValueSize | ( | ) | const |
size_t KeyValueStore::DataSize | ( | ) | const |
size_t KeyValueStore::ValueStorageSize | ( | ) | const |
size_t KeyValueStore::NamespaceSize | ( | ) | const |
class BinaryNinja::Snapshot |
A model of an individual database snapshot, created on save.
Additional Inherited Members | |
Static Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNSnapshot, BNNewSnapshotReference, BNFreeSnapshot > | |
static BNSnapshot * | GetObject (CoreRefCountObject *obj) |
static BNSnapshot * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNSnapshot, BNNewSnapshotReference, BNFreeSnapshot > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNSnapshot * | m_object |
Snapshot::Snapshot | ( | BNSnapshot * | snapshot | ) |
int64_t Snapshot::GetId | ( | ) |
std::string Snapshot::GetName | ( | ) |
void Snapshot::SetName | ( | const std::string & | name | ) |
bool Snapshot::IsAutoSave | ( | ) |
bool Snapshot::HasContents | ( | ) |
bool BinaryNinja::Snapshot::HasData | ( | ) |
bool Snapshot::HasUndo | ( | ) |
DataBuffer Snapshot::GetFileContents | ( | ) |
DataBuffer Snapshot::GetFileContentsHash | ( | ) |
DataBuffer Snapshot::GetUndoData | ( | ) |
vector< Ref< UndoEntry > > Snapshot::GetUndoEntries | ( | const std::function< bool(size_t, size_t)> & | progress | ) |
Ref< KeyValueStore > Snapshot::ReadData | ( | ) |
Ref< KeyValueStore > Snapshot::ReadData | ( | const std::function< bool(size_t, size_t)> & | progress | ) |
bool Snapshot::StoreData | ( | const Ref< KeyValueStore > & | data, |
const std::function< bool(size_t, size_t)> & | progress ) |
class BinaryNinja::Database |
Provides lower level access to raw snapshot data used to construct analysis data.
Public Member Functions | |
Database (BNDatabase *database) | |
bool | SnapshotHasData (int64_t id) |
Ref< Snapshot > | GetSnapshot (int64_t id) |
std::vector< Ref< Snapshot > > | GetSnapshots () |
void | SetCurrentSnapshot (int64_t id) |
Ref< Snapshot > | GetCurrentSnapshot () |
int64_t | WriteSnapshotData (std::vector< int64_t > parents, Ref< BinaryView > file, const std::string &name, const Ref< KeyValueStore > &data, bool autoSave, const std::function< bool(size_t, size_t)> &progress) |
void | TrimSnapshot (int64_t id) |
void | RemoveSnapshot (int64_t id) |
std::vector< std::string > | GetGlobalKeys () const |
bool | HasGlobal (const std::string &key) const |
Json::Value | ReadGlobal (const std::string &key) const |
void | WriteGlobal (const std::string &key, const Json::Value &val) |
DataBuffer | ReadGlobalData (const std::string &key) const |
void | WriteGlobalData (const std::string &key, const DataBuffer &val) |
Ref< FileMetadata > | GetFile () |
void | ReloadConnection () |
Ref< KeyValueStore > | ReadAnalysisCache () const |
void | WriteAnalysisCache (Ref< KeyValueStore > val) |
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNDatabase, BNNewDatabaseReference, BNFreeDatabase > | |
CoreRefCountObject () | |
virtual | ~CoreRefCountObject () |
BNDatabase * | 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< BNDatabase, BNNewDatabaseReference, BNFreeDatabase > | |
static BNDatabase * | GetObject (CoreRefCountObject *obj) |
static BNDatabase * | GetObject (const CoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNDatabase, BNNewDatabaseReference, BNFreeDatabase > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNDatabase * | m_object |
Database::Database | ( | BNDatabase * | database | ) |
bool Database::SnapshotHasData | ( | int64_t | id | ) |
void Database::SetCurrentSnapshot | ( | int64_t | id | ) |
int64_t Database::WriteSnapshotData | ( | std::vector< int64_t > | parents, |
Ref< BinaryView > | file, | ||
const std::string & | name, | ||
const Ref< KeyValueStore > & | data, | ||
bool | autoSave, | ||
const std::function< bool(size_t, size_t)> & | progress ) |
void Database::TrimSnapshot | ( | int64_t | id | ) |
void Database::RemoveSnapshot | ( | int64_t | id | ) |
std::vector< std::string > Database::GetGlobalKeys | ( | ) | const |
bool Database::HasGlobal | ( | const std::string & | key | ) | const |
Json::Value Database::ReadGlobal | ( | const std::string & | key | ) | const |
void Database::WriteGlobal | ( | const std::string & | key, |
const Json::Value & | val ) |
DataBuffer Database::ReadGlobalData | ( | const std::string & | key | ) | const |
void Database::WriteGlobalData | ( | const std::string & | key, |
const DataBuffer & | val ) |
Ref< FileMetadata > Database::GetFile | ( | ) |
void Database::ReloadConnection | ( | ) |
Ref< KeyValueStore > Database::ReadAnalysisCache | ( | ) | const |
void Database::WriteAnalysisCache | ( | Ref< KeyValueStore > | val | ) |