summaryrefslogtreecommitdiff
path: root/view/kernelcache
diff options
context:
space:
mode:
authorkat <kat@vector35.com>2025-07-28 08:49:18 -0400
committerkat <kat@vector35.com>2025-07-28 08:52:47 -0400
commitecfc947a39aa8be76b5f378c77b845622bca8b5f (patch)
tree8dd9cd7d76df935bd7799c87c4748ec1adcbde2c /view/kernelcache
parent0d031494987b6e1f36ebaaf3b0b92c278cd8ca6b (diff)
Improve and migrate to fmt logging functions in Mach-O/KernelCache/SharedCache
Diffstat (limited to 'view/kernelcache')
-rw-r--r--view/kernelcache/core/KernelCache.cpp2
-rw-r--r--view/kernelcache/core/KernelCacheController.cpp4
-rw-r--r--view/kernelcache/core/KernelCacheView.cpp10
-rw-r--r--view/kernelcache/core/MachO.cpp22
-rw-r--r--view/kernelcache/core/MachOProcessor.cpp2
-rw-r--r--view/kernelcache/core/Utility.cpp2
6 files changed, 21 insertions, 21 deletions
diff --git a/view/kernelcache/core/KernelCache.cpp b/view/kernelcache/core/KernelCache.cpp
index cf3be5c7..3750e795 100644
--- a/view/kernelcache/core/KernelCache.cpp
+++ b/view/kernelcache/core/KernelCache.cpp
@@ -131,7 +131,7 @@ void KernelCache::ProcessRelocations(Ref<BinaryView> view, linkedit_data_command
fixupsHeader.imports_format = parentReader.Read32();
fixupsHeader.symbols_format = parentReader.Read32();
- LogDebugF("Chained Fixups: Header @ 0x{:x}// Fixups version 0x{:x}", fixupHeaderAddress, fixupsHeader.fixups_version);
+ LogDebugF("Chained Fixups: Header @ {:#x} // Fixups version {:#x}", fixupHeaderAddress, fixupsHeader.fixups_version);
if (fixupsHeader.fixups_version > 0)
{
diff --git a/view/kernelcache/core/KernelCacheController.cpp b/view/kernelcache/core/KernelCacheController.cpp
index ef2fbd04..015f4217 100644
--- a/view/kernelcache/core/KernelCacheController.cpp
+++ b/view/kernelcache/core/KernelCacheController.cpp
@@ -33,11 +33,11 @@ void DeleteController(const FileMetadata& file)
// Someone is still holding the controller, lets warn about this.
// 2 is expected here because we have one held in `controllers` and one held by `controller`.
if (controller->m_refs > 2)
- LogWarn("Deleting KernelCacheController for view %llx, but there are still %d references", id,
+ LogWarnF("Deleting KernelCacheController for view {:#x}, but there are still {} references", id,
controller->m_refs.load());
controllers.erase(it);
- LogDebug("Deleted KernelCacheController for view %s", file.GetFilename().c_str());
+ LogDebugF("Deleted KernelCacheController for view {:?}", file.GetFilename());
}
}
diff --git a/view/kernelcache/core/KernelCacheView.cpp b/view/kernelcache/core/KernelCacheView.cpp
index 7ac00529..03e8bd68 100644
--- a/view/kernelcache/core/KernelCacheView.cpp
+++ b/view/kernelcache/core/KernelCacheView.cpp
@@ -114,7 +114,7 @@ Ref<Settings> KernelCacheViewType::GetLoadSettingsForData(BinaryView* data)
Ref<BinaryView> viewRef = Parse(data);
if (!viewRef || !viewRef->Init())
{
- LogWarn("Failed to initialize view of type '%s'. Generating default load settings.", GetName().c_str());
+ LogWarnF("Failed to initialize view of type {:?}. Generating default load settings.", GetName());
viewRef = data;
}
@@ -882,7 +882,7 @@ bool KernelCacheView::Init()
}
catch (ReadException&)
{
- LogError("Error when applying Mach-O header types at %" PRIx64, textSegOffset);
+ LogErrorF("Error when applying Mach-O header types at {:#x}", textSegOffset);
}
return InitController();
@@ -943,7 +943,7 @@ bool KernelCacheView::InitController()
kernelCache.ProcessSymbols();
auto endTime = std::chrono::high_resolution_clock::now();
std::chrono::duration<double> elapsed = endTime - startTime;
- logger->LogInfo("Processing %zu symbols took %.3f seconds (separate thread)", kernelCache.GetSymbols().size(), elapsed.count());
+ logger->LogInfoF("Processing {} symbols took {:.3f} seconds (separate thread)", kernelCache.GetSymbols().size(), elapsed.count());
});
}
@@ -952,7 +952,7 @@ bool KernelCacheView::InitController()
std::string autoLoadPattern = ".*libsystem_c.dylib";
if (settings && settings->Contains("loader.kc.autoLoadPattern"))
autoLoadPattern = settings->Get<std::string>("loader.kc.autoLoadPattern", this);
- m_logger->LogDebug("Loading images using pattern: %s", autoLoadPattern.c_str());
+ m_logger->LogDebugF("Loading images using pattern: {:?}", autoLoadPattern);
{
// TODO: Refusing to add undo action "Added section libsystem_c.dylib::__macho_header", there is literally
@@ -969,7 +969,7 @@ bool KernelCacheView::InitController()
++loadedImages;
auto endTime = std::chrono::high_resolution_clock::now();
std::chrono::duration<double> elapsed = endTime - startTime;
- m_logger->LogInfo("Automatically loading %zu images took %.3f seconds", loadedImages, elapsed.count());
+ m_logger->LogInfoF("Automatically loading {} images took {:.3f} seconds", loadedImages, elapsed.count());
}
if (auto loadedImageMetadata = GetParentView()->QueryMetadata("KernelCacheLoadedImages"))
diff --git a/view/kernelcache/core/MachO.cpp b/view/kernelcache/core/MachO.cpp
index d3486b67..9eabf086 100644
--- a/view/kernelcache/core/MachO.cpp
+++ b/view/kernelcache/core/MachO.cpp
@@ -76,7 +76,7 @@ std::optional<KernelCacheMachOHeader> KernelCacheMachOHeader::ParseHeaderForAddr
{
for (size_t i = 0; i < header.ident.ncmds; i++)
{
- // BNLogInfo("of 0x%llx", reader.GetOffset());
+ // BNLogInfoF("of {:#x}", reader.GetOffset());
load_command load;
segment_command_64 segment64;
section_64 sect = {};
@@ -367,7 +367,7 @@ std::optional<KernelCacheMachOHeader> KernelCacheMachOHeader::ParseHeaderForAddr
(void)reader.Read(&thread.stateppc64.r1, sizeof(thread.stateppc64) - (3 * 8));
break;
default:
- m_logger->LogError("Unknown archid: %x", m_archId);
+ m_logger->LogErrorF("Unknown archid: {:#x}", m_archId);
}
}*/
@@ -390,16 +390,16 @@ std::optional<KernelCacheMachOHeader> KernelCacheMachOHeader::ParseHeaderForAddr
header.buildVersion.minos = reader.Read32();
header.buildVersion.sdk = reader.Read32();
header.buildVersion.ntools = reader.Read32();
- // m_logger->LogDebug("Platform: %s", BuildPlatformToString(header.buildVersion.platform).c_str());
- // m_logger->LogDebug("MinOS: %s", BuildToolVersionToString(header.buildVersion.minos).c_str());
- // m_logger->LogDebug("SDK: %s", BuildToolVersionToString(header.buildVersion.sdk).c_str());
+ // m_logger->LogDebugF("Platform: {}", BuildPlatformToString(header.buildVersion.platform));
+ // m_logger->LogDebugF("MinOS: {}", BuildToolVersionToString(header.buildVersion.minos));
+ // m_logger->LogDebugF("SDK: {}", BuildToolVersionToString(header.buildVersion.sdk));
for (uint32_t j = 0; (i < header.buildVersion.ntools) && (j < 10); j++)
{
uint32_t tool = reader.Read32();
uint32_t version = reader.Read32();
header.buildToolVersions.push_back({tool, version});
- // m_logger->LogDebug("Build Tool: %s: %s", BuildToolToString(tool).c_str(),
- // BuildToolVersionToString(version).c_str());
+ // m_logger->LogDebugF("Build Tool: {}: {}", BuildToolToString(tool),
+ // BuildToolVersionToString(version));
}
break;
}
@@ -506,7 +506,7 @@ std::vector<CacheSymbol> KernelCacheMachOHeader::ReadSymbolTable(Ref<BinaryView>
if (!symbolType.has_value())
{
// TODO: Where logger?
- LogError("Symbol %s at address %llx has unknown symbol type", symbolName.c_str(), symbolAddress);
+ LogErrorF("Symbol {:?} at address {:#x} has unknown symbol type", symbolName, symbolAddress);
continue;
}
@@ -526,7 +526,7 @@ std::vector<CacheSymbol> KernelCacheMachOHeader::ReadSymbolTable(Ref<BinaryView>
if (!flags.has_value())
{
// TODO: where logger?
- LogError("Symbol %s at address %llx is not in any section", symbolName.c_str(), symbolAddress);
+ LogErrorF("Symbol {} at address {:#x} is not in any section", symbolName, symbolAddress);
continue;
}
@@ -549,7 +549,7 @@ std::vector<CacheSymbol> KernelCacheMachOHeader::ReadSymbolTable(Ref<BinaryView>
return symbolList;
}
catch (ReadException& ex) {
- LogError("Failed to read symbol table: %s", ex.what());
+ LogErrorF("Failed to read symbol table: {}", ex.what());
return {};
}
@@ -600,7 +600,7 @@ bool KernelCacheMachOHeader::AddExportTerminalSymbol(
symbols.emplace_back(DataSymbol, symbolAddress, symbolName);
break;
default:
- LogWarn("Unhandled export symbol kind: %llx", symbolFlags & EXPORT_SYMBOL_FLAGS_KIND_MASK);
+ LogWarnF("Unhandled export symbol kind: {:#x}", symbolFlags & EXPORT_SYMBOL_FLAGS_KIND_MASK);
return false;
}
diff --git a/view/kernelcache/core/MachOProcessor.cpp b/view/kernelcache/core/MachOProcessor.cpp
index e22ce853..42faba24 100644
--- a/view/kernelcache/core/MachOProcessor.cpp
+++ b/view/kernelcache/core/MachOProcessor.cpp
@@ -327,6 +327,6 @@ void KernelCacheMachOProcessor::ApplyHeaderDataVariables(KernelCacheMachOHeader&
}
catch (ReadException&)
{
- m_logger->LogError("Error when applying Mach-O header types at %llx", header.textBase);
+ m_logger->LogErrorF("Error when applying Mach-O header types at {:#x}", header.textBase);
}
}
diff --git a/view/kernelcache/core/Utility.cpp b/view/kernelcache/core/Utility.cpp
index 6f8323bf..515d62c7 100644
--- a/view/kernelcache/core/Utility.cpp
+++ b/view/kernelcache/core/Utility.cpp
@@ -126,7 +126,7 @@ void ApplySymbol(Ref<BinaryView> view, Ref<TypeLibrary> typeLib, Ref<Symbol> sym
}
else
{
- LogWarn("Failed to find id type for %llx, objective-c processor not ran?", func->GetStart());
+ LogWarnF("Failed to find id type for {:#x}, objective-c processor not ran?", func->GetStart());
}
}
}