From ca696ab4a79902d0448135f6fca3769f0576e39d Mon Sep 17 00:00:00 2001 From: Alexander Taylor Date: Wed, 16 Apr 2025 10:21:22 -0400 Subject: Add loaded column for kernel cache view. Required adding an API to determine if an image is loaded. --- view/kernelcache/api/kernelcache.cpp | 5 +++++ view/kernelcache/api/kernelcacheapi.h | 2 ++ view/kernelcache/api/kernelcachecore.h | 2 ++ 3 files changed, 9 insertions(+) (limited to 'view/kernelcache/api') diff --git a/view/kernelcache/api/kernelcache.cpp b/view/kernelcache/api/kernelcache.cpp index 6cca9033..86cd8e0d 100644 --- a/view/kernelcache/api/kernelcache.cpp +++ b/view/kernelcache/api/kernelcache.cpp @@ -50,6 +50,11 @@ namespace KernelCacheAPI { return result; } + bool KernelCache::IsImageLoaded(const uint64_t address) const + { + return BNKCViewIsImageLoaded(m_object, address); + } + std::vector KernelCache::GetImages() { size_t count; diff --git a/view/kernelcache/api/kernelcacheapi.h b/view/kernelcache/api/kernelcacheapi.h index 149f39bf..a4462cb0 100644 --- a/view/kernelcache/api/kernelcacheapi.h +++ b/view/kernelcache/api/kernelcacheapi.h @@ -258,6 +258,8 @@ namespace KernelCacheAPI { bool LoadImageContainingAddress(uint64_t addr); std::vector GetAvailableImages(); + bool IsImageLoaded(const uint64_t address) const; + std::vector LoadAllSymbolsAndWait(); std::string GetNameForAddress(uint64_t address); diff --git a/view/kernelcache/api/kernelcachecore.h b/view/kernelcache/api/kernelcachecore.h index d425bf15..be274a6c 100644 --- a/view/kernelcache/api/kernelcachecore.h +++ b/view/kernelcache/api/kernelcachecore.h @@ -109,6 +109,8 @@ extern "C" KERNELCACHE_FFI_API bool BNKCViewLoadImageWithInstallName(BNKernelCache* cache, char* name); KERNELCACHE_FFI_API bool BNKCViewLoadImageContainingAddress(BNKernelCache* cache, uint64_t address); + KERNELCACHE_FFI_API bool BNKCViewIsImageLoaded(BNKernelCache* cache, uint64_t address); + KERNELCACHE_FFI_API char* BNKCViewGetNameForAddress(BNKernelCache* cache, uint64_t address); KERNELCACHE_FFI_API char* BNKCViewGetImageNameForAddress(BNKernelCache* cache, uint64_t address); -- cgit v1.3.1