1 /* $OpenBSD: log.h,v 1.2 2001/01/29 01:58:16 niklas Exp $ */
4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
5 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
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".
18 /* Supported syslog facilities and levels. */
20 SYSLOG_FACILITY_DAEMON,
24 SYSLOG_FACILITY_AUTHPRIV,
26 SYSLOG_FACILITY_LOCAL0,
27 SYSLOG_FACILITY_LOCAL1,
28 SYSLOG_FACILITY_LOCAL2,
29 SYSLOG_FACILITY_LOCAL3,
30 SYSLOG_FACILITY_LOCAL4,
31 SYSLOG_FACILITY_LOCAL5,
32 SYSLOG_FACILITY_LOCAL6,
33 SYSLOG_FACILITY_LOCAL7
46 /* Initializes logging. */
47 void log_init(char *av0, LogLevel level, SyslogFacility facility, int on_stderr);
49 /* Logging implementation, depending on server or client */
50 void do_log(LogLevel level, const char *fmt, va_list args);
52 /* name to facility/level */
53 SyslogFacility log_facility_number(char *name);
54 LogLevel log_level_number(char *name);
56 /* Output a message to syslog or stderr */
57 void fatal(const char *fmt,...) __attribute__((format(printf, 1, 2)));
58 void error(const char *fmt,...) __attribute__((format(printf, 1, 2)));
59 void log(const char *fmt,...) __attribute__((format(printf, 1, 2)));
60 void verbose(const char *fmt,...) __attribute__((format(printf, 1, 2)));
61 void debug(const char *fmt,...) __attribute__((format(printf, 1, 2)));
62 void debug2(const char *fmt,...) __attribute__((format(printf, 1, 2)));
63 void debug3(const char *fmt,...) __attribute__((format(printf, 1, 2)));
65 /* same as fatal() but w/o logging */
66 void fatal_cleanup(void);
69 * Registers a cleanup function to be called by fatal()/fatal_cleanup()
70 * before exiting. It is permissible to call fatal_remove_cleanup for the
71 * function itself from the function.
73 void fatal_add_cleanup(void (*proc) (void *context), void *context);
75 /* Removes a cleanup function to be called at fatal(). */
76 void fatal_remove_cleanup(void (*proc) (void *context), void *context);