#ifndef NTP_SYSLOG_H
#define NTP_SYSLOG_H
#include <ntp_types.h>
#ifdef VMS
extern void msyslog();
extern void mvsyslog();
#else
# ifndef SYS_VXWORKS
# include <syslog.h>
# endif
#endif
#include <stdio.h>
extern int syslogit;
extern int msyslog_term;
extern int msyslog_term_pid;
extern int msyslog_include_timestamp;
extern FILE * syslog_file;
extern char * syslog_fname;
extern char * syslog_abs_fname;
#ifdef __APPLE__
#undef LOG_INFO
#define LOG_INFO LOG_NOTICE
#endif
#if defined(VMS) || defined (SYS_VXWORKS)
#define LOG_EMERG 0
#define LOG_ALERT 1
#define LOG_CRIT 2
#define LOG_ERR 3
#define LOG_WARNING 4
#define LOG_NOTICE 5
#define LOG_INFO 6
#define LOG_DEBUG 7
#endif
#define NLOG_INFO 0x00000001
#define NLOG_EVENT 0x00000002
#define NLOG_STATUS 0x00000004
#define NLOG_STATIST 0x00000008
#define NLOG_OSYS 0
#define NLOG_SYSMASK 0x0000000F
#define NLOG_SYSINFO 0x00000001
#define NLOG_SYSEVENT 0x00000002
#define NLOG_SYSSTATUS 0x00000004
#define NLOG_SYSSTATIST 0x00000008
#define NLOG_OPEER 4
#define NLOG_PEERMASK 0x000000F0
#define NLOG_PEERINFO 0x00000010
#define NLOG_PEEREVENT 0x00000020
#define NLOG_PEERSTATUS 0x00000040
#define NLOG_PEERSTATIST 0x00000080
#define NLOG_OCLOCK 8
#define NLOG_CLOCKMASK 0x00000F00
#define NLOG_CLOCKINFO 0x00000100
#define NLOG_CLOCKEVENT 0x00000200
#define NLOG_CLOCKSTATUS 0x00000400
#define NLOG_CLOCKSTATIST 0x00000800
#define NLOG_OSYNC 12
#define NLOG_SYNCMASK 0x0000F000
#define NLOG_SYNCINFO 0x00001000
#define NLOG_SYNCEVENT 0x00002000
#define NLOG_SYNCSTATUS 0x00004000
#define NLOG_SYNCSTATIST 0x00008000
extern u_int32 ntp_syslogmask;
#define NLOG(bits) if (ntp_syslogmask & (bits))
#define LOGIF(nlog_suffix, msl_args) \
do { \
NLOG(NLOG_##nlog_suffix) \
msyslog msl_args; \
} while (FALSE)
#endif