log.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /*
  2. * ngIRCd -- The Next Generation IRC Daemon
  3. * Copyright (c)2001-2012 Alexander Barton (alex@barton.de)
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation; either version 2 of the License, or
  8. * (at your option) any later version.
  9. * Please read the file COPYING, README and AUTHORS for more information.
  10. */
  11. #ifndef __log_h__
  12. #define __log_h__
  13. /**
  14. * @file
  15. * Logging functions (header)
  16. */
  17. #ifdef SYSLOG
  18. # include <syslog.h>
  19. #else
  20. # define LOG_EMERG 0
  21. # define LOG_ALERT 1
  22. # define LOG_CRIT 2
  23. # define LOG_ERR 3
  24. # define LOG_WARNING 4
  25. # define LOG_NOTICE 5
  26. # define LOG_INFO 6
  27. # define LOG_DEBUG 7
  28. #endif
  29. #define LOG_snotice 1024
  30. GLOBAL void Log_Init PARAMS(( bool Daemon_Mode ));
  31. GLOBAL void Log_Exit PARAMS(( void ));
  32. GLOBAL void Log PARAMS(( int Level, const char *Format, ... ));
  33. GLOBAL void Log_ReInit PARAMS((void));
  34. GLOBAL void Log_ServerNotice PARAMS((char UserMode, const char *Format, ...));
  35. #ifdef DEBUG
  36. GLOBAL void LogDebug PARAMS(( const char *Format, ... ));
  37. #else
  38. static inline void LogDebug PARAMS(( UNUSED const char *Format, ... )){/* Do nothing. The compiler should optimize this out, please ;-) */}
  39. #endif
  40. GLOBAL void Log_Init_Subprocess PARAMS((char *Name));
  41. GLOBAL void Log_Exit_Subprocess PARAMS((char *Name));
  42. GLOBAL void Log_Subprocess PARAMS((const int Level, const char *Format, ...));
  43. #ifdef DEBUG
  44. GLOBAL void Log_InitErrorfile PARAMS(( void ));
  45. #endif
  46. #endif
  47. /* -eof- */