aboutsummaryrefslogtreecommitdiffstats
path: root/api/logger.h
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-11-04 12:24:46 +0100
committerSimon Rozman <simon@rozman.si>2020-11-04 13:21:43 +0100
commit9c349273f5d8f4aa836dda86d6e936c6b034928a (patch)
tree5bb5edb4d4ecfbbcf69a787450970aaaad27c846 /api/logger.h
parentapi: include the rundll32 helpers the MSVC-typical way (diff)
downloadwintun-9c349273f5d8f4aa836dda86d6e936c6b034928a.tar.xz
wintun-9c349273f5d8f4aa836dda86d6e936c6b034928a.zip
api: concatenate function name at runtime
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'api/logger.h')
-rw-r--r--api/logger.h22
1 files changed, 8 insertions, 14 deletions
diff --git a/api/logger.h b/api/logger.h
index 0affdc3..b0458c5 100644
--- a/api/logger.h
+++ b/api/logger.h
@@ -16,29 +16,23 @@ extern WINTUN_LOGGER_CALLBACK_FUNC Logger;
void WINAPI
WintunSetLogger(_In_ WINTUN_LOGGER_CALLBACK_FUNC NewLogger);
-static inline _Post_equals_last_error_ DWORD
-LoggerLog(_In_ WINTUN_LOGGER_LEVEL Level, _In_z_ const WCHAR *LogLine)
-{
- DWORD LastError = GetLastError();
- Logger(Level, LogLine);
- SetLastError(LastError);
- return LastError;
-}
+_Post_equals_last_error_ DWORD
+LoggerLog(_In_ WINTUN_LOGGER_LEVEL Level, _In_z_ const WCHAR *Function, _In_z_ const WCHAR *LogLine);
_Post_equals_last_error_ DWORD
-LoggerError(_In_z_ const WCHAR *Prefix, _In_ DWORD Error);
+LoggerError(_In_z_ const WCHAR *Function, _In_z_ const WCHAR *Prefix, _In_ DWORD Error);
static inline _Post_equals_last_error_ DWORD
-LoggerLastError(_In_z_ const WCHAR *Prefix)
+LoggerLastError(_In_z_ const WCHAR *Function, _In_z_ const WCHAR *Prefix)
{
DWORD LastError = GetLastError();
- LoggerError(Prefix, LastError);
+ LoggerError(Prefix, Function, LastError);
SetLastError(LastError);
return LastError;
}
#define __L(x) L##x
#define _L(x) __L(x)
-#define LOG(lvl, msg) (LoggerLog((lvl), _L(__FUNCTION__) L": " msg))
-#define LOG_ERROR(msg, err) (LoggerError(_L(__FUNCTION__) L": " msg, (err)))
-#define LOG_LAST_ERROR(msg) (LoggerLastError(_L(__FUNCTION__) L": " msg))
+#define LOG(lvl, msg) (LoggerLog((lvl), _L(__FUNCTION__), msg))
+#define LOG_ERROR(msg, err) (LoggerError(_L(__FUNCTION__), msg, (err)))
+#define LOG_LAST_ERROR(msg) (LoggerLastError(_L(__FUNCTION__), msg))