1 /* 2 * Copyright 2003-2008, Haiku Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _SYSLOG_H_ 6 #define _SYSLOG_H_ 7 8 9 /* options for openlog() */ 10 11 #define LOG_PID (1 << 12) /* log the process (thread/team) ID with each message */ 12 #define LOG_CONS (2 << 12) /* log to the system console on error */ 13 #define LOG_ODELAY (4 << 12) /* delay open until syslog() is called */ 14 #define LOG_NDELAY (8 << 12) /* connect to the syslog daemon immediately */ 15 #define LOG_SERIAL (16 << 12) /* dump to serial output as well (not implemented) */ 16 #define LOG_PERROR (32 << 12) /* dump to stderr as well */ 17 #define LOG_NOWAIT (64 << 12) /* do not wait for child processes */ 18 19 20 /* facilities */ 21 22 #define LOG_KERN (0 << 3) /* messages generated by the kernel */ 23 #define LOG_USER (1 << 3) /* by user processes */ 24 #define LOG_MAIL (2 << 3) 25 #define LOG_DAEMON (3 << 3) 26 #define LOG_AUTH (4 << 3) 27 #define LOG_SYSLOG (5 << 3) 28 #define LOG_LPR (6 << 3) 29 #define LOG_NEWS (7 << 3) 30 #define LOG_UUCP (8 << 3) 31 #define LOG_CRON (9 << 3) 32 #define LOG_AUTHPRIV (10 << 3) 33 #define LOG_FTP (11 << 3) 34 35 /* these are for local use: */ 36 #define LOG_LOCAL0 (16 << 3) 37 #define LOG_LOCAL1 (17 << 3) 38 #define LOG_LOCAL2 (18 << 3) 39 #define LOG_LOCAL3 (19 << 3) 40 #define LOG_LOCAL4 (20 << 3) 41 #define LOG_LOCAL5 (21 << 3) 42 #define LOG_LOCAL6 (22 << 3) 43 #define LOG_LOCAL7 (23 << 3) 44 45 46 /* priorities */ 47 48 #define LOG_EMERG 0 /* a panic condition */ 49 #define LOG_PANIC LOG_EMERG 50 #define LOG_ALERT 1 /* a condition that should be corrected immediately */ 51 #define LOG_CRIT 2 /* critical conditions like hard drive errors */ 52 #define LOG_ERR 3 53 #define LOG_WARNING 4 54 #define LOG_NOTICE 5 55 #define LOG_INFO 6 56 #define LOG_DEBUG 7 57 58 /* turns a priority into a mask usable for setlogmask() */ 59 #define LOG_MASK(pri) (1 << (pri)) 60 61 62 #ifdef __cplusplus 63 extern "C" { 64 #endif 65 66 /* POSIX calls */ 67 extern void closelog(void); 68 extern void openlog(const char *ident, int options, int facility); 69 extern int setlogmask(int priorityMask); 70 extern void syslog(int priority, const char *message, ...); 71 72 /* Be extensions */ 73 extern void closelog_team(void); 74 extern void openlog_team(const char *ident, int logopt, int facility); 75 extern void log_team(int priority, const char *message, ...); 76 extern int setlogmask_team(int priorityMask); 77 78 extern void closelog_thread(void); 79 extern void openlog_thread(const char *ident, int logopt, int facility); 80 extern void log_thread(int priority, const char *message, ...); 81 extern int setlogmask_thread(int priorityMask); 82 83 #ifdef __cplusplus 84 } 85 #endif 86 87 #endif /* _SYSLOG_H_ */ 88