Merge from vendor branch NTPD:
[dragonfly.git] / crypto / openssh-3.9p1 / log.h_orig
1 /*      $OpenBSD: log.h,v 1.11 2004/06/21 22:02:58 djm Exp $    */
2
3 /*
4  * Author: Tatu Ylonen <ylo@cs.hut.fi>
5  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
6  *                    All rights reserved
7  *
8  * As far as I am concerned, the code I have written for this software
9  * can be used freely for any purpose.  Any derived versions of this
10  * software must be clearly marked as such, and if the derived work is
11  * incompatible with the protocol description in the RFC file, it must be
12  * called by a name other than "ssh" or "Secure Shell".
13  */
14
15 #ifndef SSH_LOG_H
16 #define SSH_LOG_H
17
18 #include <syslog.h> /* Needed for LOG_AUTHPRIV (if present) */
19
20 /* Supported syslog facilities and levels. */
21 typedef enum {
22         SYSLOG_FACILITY_DAEMON,
23         SYSLOG_FACILITY_USER,
24         SYSLOG_FACILITY_AUTH,
25 #ifdef LOG_AUTHPRIV
26         SYSLOG_FACILITY_AUTHPRIV,
27 #endif
28         SYSLOG_FACILITY_LOCAL0,
29         SYSLOG_FACILITY_LOCAL1,
30         SYSLOG_FACILITY_LOCAL2,
31         SYSLOG_FACILITY_LOCAL3,
32         SYSLOG_FACILITY_LOCAL4,
33         SYSLOG_FACILITY_LOCAL5,
34         SYSLOG_FACILITY_LOCAL6,
35         SYSLOG_FACILITY_LOCAL7,
36         SYSLOG_FACILITY_NOT_SET = -1
37 }       SyslogFacility;
38
39 typedef enum {
40         SYSLOG_LEVEL_QUIET,
41         SYSLOG_LEVEL_FATAL,
42         SYSLOG_LEVEL_ERROR,
43         SYSLOG_LEVEL_INFO,
44         SYSLOG_LEVEL_VERBOSE,
45         SYSLOG_LEVEL_DEBUG1,
46         SYSLOG_LEVEL_DEBUG2,
47         SYSLOG_LEVEL_DEBUG3,
48         SYSLOG_LEVEL_NOT_SET = -1
49 }       LogLevel;
50
51 void     log_init(char *, LogLevel, SyslogFacility, int);
52
53 SyslogFacility  log_facility_number(char *);
54 LogLevel log_level_number(char *);
55
56 void     fatal(const char *, ...) __dead __attribute__((format(printf, 1, 2)));
57 void     error(const char *, ...) __attribute__((format(printf, 1, 2)));
58 void     logit(const char *, ...) __attribute__((format(printf, 1, 2)));
59 void     verbose(const char *, ...) __attribute__((format(printf, 1, 2)));
60 void     debug(const char *, ...) __attribute__((format(printf, 1, 2)));
61 void     debug2(const char *, ...) __attribute__((format(printf, 1, 2)));
62 void     debug3(const char *, ...) __attribute__((format(printf, 1, 2)));
63
64 void     do_log(LogLevel, const char *, va_list);
65 void     cleanup_exit(int) __dead;
66 #endif