2020-07-29 14:49:59 +00:00
|
|
|
/*
|
|
|
|
* This file is part of uIRCd. (https://git.redxen.eu/caskd/uIRCd)
|
2020-08-17 20:13:17 +00:00
|
|
|
* Copyright (c) 2019, 2020 Alex-David Denes * * uIRCd is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or
|
2020-07-29 14:49:59 +00:00
|
|
|
* any later version.
|
|
|
|
*
|
|
|
|
* uIRCd is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with uIRCd. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "global.h"
|
|
|
|
#include "structs.h"
|
|
|
|
#include <errno.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
#ifndef _UIRCD_INCLUDED_LOG
|
|
|
|
#define _UIRCD_INCLUDED_LOG
|
|
|
|
|
|
|
|
#define LOG_FATAL 0
|
|
|
|
#define LOG_ERROR 1
|
|
|
|
#define LOG_WARN 2
|
|
|
|
#define LOG_INFO 3
|
2020-08-17 20:13:17 +00:00
|
|
|
#define LOG_VERBOSE 4
|
|
|
|
#define LOG_DEBUG 5
|
2020-07-29 14:49:59 +00:00
|
|
|
|
2020-08-17 20:13:17 +00:00
|
|
|
#define LOG(LEVEL, ...) \
|
|
|
|
{ \
|
|
|
|
if (LEVEL <= loglevel) { \
|
|
|
|
char* logchar = "?"; \
|
|
|
|
switch (LEVEL) { \
|
|
|
|
case (LOG_DEBUG): logchar = "D"; break; \
|
|
|
|
case (LOG_VERBOSE): logchar = "V"; break; \
|
|
|
|
case (LOG_INFO): logchar = "I"; break; \
|
|
|
|
case (LOG_WARN): logchar = "W"; break; \
|
|
|
|
case (LOG_ERROR): logchar = "E"; break; \
|
|
|
|
case (LOG_FATAL): logchar = "F"; break; \
|
|
|
|
} \
|
|
|
|
fprintf(stderr, "[%s] ", logchar); \
|
|
|
|
fprintf(stderr, __VA_ARGS__); \
|
|
|
|
if (loglevel == LOG_DEBUG) \
|
|
|
|
fprintf(stderr, " --> LINE: %i -- FILE: %s", __LINE__, __FILE__); \
|
|
|
|
putc('\n', stderr); \
|
|
|
|
} \
|
|
|
|
}
|
2020-07-29 14:49:59 +00:00
|
|
|
#endif
|