diff options
| -rw-r--r-- | architecture.cpp | 18 | ||||
| -rw-r--r-- | binaryninjaapi.h | 5 |
2 files changed, 23 insertions, 0 deletions
diff --git a/architecture.cpp b/architecture.cpp index 16ea982f..ae4dd225 100644 --- a/architecture.cpp +++ b/architecture.cpp @@ -490,6 +490,24 @@ void Architecture::RegisterFunctionRecognizer(FunctionRecognizer* recog) } +bool Architecture::IsBinaryViewTypeConstantDefined(const string& type, const string& name) +{ + return BNIsBinaryViewTypeArchitectureConstantDefined(m_arch, type.c_str(), name.c_str()); +} + + +uint64_t Architecture::GetBinaryViewTypeConstant(const string& type, const string& name, uint64_t defaultValue) +{ + return BNGetBinaryViewTypeArchitectureConstant(m_arch, type.c_str(), name.c_str(), defaultValue); +} + + +void Architecture::SetBinaryViewTypeConstant(const string& type, const string& name, uint64_t value) +{ + BNSetBinaryViewTypeArchitectureConstant(m_arch, type.c_str(), name.c_str(), value); +} + + CoreArchitecture::CoreArchitecture(BNArchitecture* arch): Architecture(arch) { } diff --git a/binaryninjaapi.h b/binaryninjaapi.h index c875eb5b..de03b078 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -887,6 +887,11 @@ namespace BinaryNinja virtual bool SkipAndReturnValue(uint8_t* data, uint64_t addr, size_t len, uint64_t value); void RegisterFunctionRecognizer(FunctionRecognizer* recog); + + bool IsBinaryViewTypeConstantDefined(const std::string& type, const std::string& name); + uint64_t GetBinaryViewTypeConstant(const std::string& type, const std::string& name, + uint64_t defaultValue = 0); + void SetBinaryViewTypeConstant(const std::string& type, const std::string& name, uint64_t value); }; class CoreArchitecture: public Architecture |
