syslog.h raw

   1  #ifndef _SYSLOG_H
   2  #define _SYSLOG_H
   3  
   4  #ifdef __cplusplus
   5  extern "C" {
   6  #endif
   7  
   8  #include <features.h>
   9  
  10  #define LOG_EMERG   0
  11  #define LOG_ALERT   1
  12  #define LOG_CRIT    2
  13  #define LOG_ERR     3
  14  #define LOG_WARNING 4
  15  #define LOG_NOTICE  5
  16  #define LOG_INFO    6
  17  #define LOG_DEBUG   7
  18  
  19  #define LOG_PRIMASK 7
  20  #define LOG_PRI(p) ((p)&LOG_PRIMASK)
  21  #define	LOG_MAKEPRI(f, p) (((f)<<3)|(p))
  22  
  23  #define LOG_MASK(p) (1<<(p))
  24  #define LOG_UPTO(p) ((1<<((p)+1))-1)
  25  
  26  #define LOG_KERN     (0<<3)
  27  #define LOG_USER     (1<<3)
  28  #define LOG_MAIL     (2<<3)
  29  #define LOG_DAEMON   (3<<3)
  30  #define LOG_AUTH     (4<<3)
  31  #define LOG_SYSLOG   (5<<3)
  32  #define LOG_LPR      (6<<3)
  33  #define LOG_NEWS     (7<<3)
  34  #define LOG_UUCP     (8<<3)
  35  #define LOG_CRON     (9<<3)
  36  #define	LOG_AUTHPRIV (10<<3)
  37  #define	LOG_FTP      (11<<3)
  38  
  39  #define LOG_LOCAL0   (16<<3)
  40  #define LOG_LOCAL1   (17<<3)
  41  #define LOG_LOCAL2   (18<<3)
  42  #define LOG_LOCAL3   (19<<3)
  43  #define LOG_LOCAL4   (20<<3)
  44  #define LOG_LOCAL5   (21<<3)
  45  #define LOG_LOCAL6   (22<<3)
  46  #define LOG_LOCAL7   (23<<3)
  47  
  48  #define LOG_NFACILITIES 24
  49  #define LOG_FACMASK 0x3f8
  50  #define LOG_FAC(p) (((p)&LOG_FACMASK)>>3)
  51  
  52  #define LOG_PID    0x01
  53  #define LOG_CONS   0x02
  54  #define LOG_ODELAY 0x04
  55  #define LOG_NDELAY 0x08
  56  #define LOG_NOWAIT 0x10
  57  #define LOG_PERROR 0x20
  58  
  59  void closelog (void);
  60  void openlog (const char *, int, int);
  61  int setlogmask (int);
  62  void syslog (int, const char *, ...);
  63  
  64  #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
  65  #define _PATH_LOG "/dev/log"
  66  #define __NEED_va_list
  67  #include <bits/alltypes.h>
  68  void vsyslog (int, const char *, va_list);
  69  #if defined(SYSLOG_NAMES)
  70  #define	INTERNAL_NOPRI 0x10
  71  #define	INTERNAL_MARK (LOG_NFACILITIES<<3)
  72  typedef struct {
  73  	char *c_name;
  74  	int c_val;
  75  } CODE;
  76  #define prioritynames ((CODE *)(const CODE []){ \
  77  	{ "alert", LOG_ALERT }, { "crit", LOG_CRIT }, { "debug", LOG_DEBUG }, \
  78  	{ "emerg", LOG_EMERG }, { "err", LOG_ERR }, { "error", LOG_ERR }, \
  79  	{ "info", LOG_INFO }, { "none", INTERNAL_NOPRI }, \
  80  	{ "notice", LOG_NOTICE }, { "panic", LOG_EMERG }, \
  81  	{ "warn", LOG_WARNING }, { "warning", LOG_WARNING }, { 0, -1 } })
  82  #define facilitynames ((CODE *)(const CODE []){ \
  83  	{ "auth", LOG_AUTH }, { "authpriv", LOG_AUTHPRIV }, \
  84  	{ "cron", LOG_CRON }, { "daemon", LOG_DAEMON }, { "ftp", LOG_FTP }, \
  85  	{ "kern", LOG_KERN }, { "lpr", LOG_LPR }, { "mail", LOG_MAIL }, \
  86  	{ "mark", INTERNAL_MARK }, { "news", LOG_NEWS }, \
  87  	{ "security", LOG_AUTH }, { "syslog", LOG_SYSLOG }, \
  88  	{ "user", LOG_USER }, { "uucp", LOG_UUCP }, \
  89  	{ "local0", LOG_LOCAL0 }, { "local1", LOG_LOCAL1 }, \
  90  	{ "local2", LOG_LOCAL2 }, { "local3", LOG_LOCAL3 }, \
  91  	{ "local4", LOG_LOCAL4 }, { "local5", LOG_LOCAL5 }, \
  92  	{ "local6", LOG_LOCAL6 }, { "local7", LOG_LOCAL7 }, { 0, -1 } })
  93  #endif
  94  #endif
  95  
  96  #ifdef __cplusplus
  97  }
  98  #endif
  99  
 100  #endif
 101