mirror of
https://github.com/AbishekPonmudi/Dynloader
synced 2026-07-15 03:39:09 +00:00
35 lines
1.3 KiB
C++
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
|