Files
AbishekPonmudi-Dynloader/lib/common/log.hpp
T
2026-07-10 11:56:50 -07:00

35 lines
1.3 KiB
C++

#pragma once
#include <cstdarg>
#include <cstdio>
#include <cstddef>
namespace Log {
// Two independent channels so --server --verbose does not dump loader/syscall noise,
// and loader --verbose does not spam server request logs.
void SetVerbose(bool enabled); // loader / injection / syscall path
void SetServerVerbose(bool enabled); // HTTP fileless server path only
bool IsVerbose();
bool IsServerVerbose();
// Always shown (normal + verbose)
void Ok(const char* fmt, ...); // [+] essential success
void Warn(const char* fmt, ...); // [!] warning
void Err(const char* fmt, ...); // [x] error
// Loader verbose only (--verbose on normal/fileless/enc)
void Info(const char* fmt, ...); // [*] step info
void Dbg(const char* fmt, ...); // [-] debug detail
void Sys(const char* fmt, ...); // [@] syscall / internals
void Raw(const char* fmt, ...); // [@] bare unstructured dump
void Banner(const char* title); // [@] section header
void NtStatus(const char* tag, long status);
void HexPreview(const char* tag, const void* data, size_t len, size_t maxBytes = 64);
// Server verbose only (--server ... --verbose)
void Srv(const char* fmt, ...); // [S] server step / request
void SrvBanner(const char* title); // [S] server section header
} // namespace Log