1 /* $OpenBSD: log.h,v 1.3 2021/12/13 18:28:39 deraadt Exp $ */ 2 3 /* 4 * Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org> 5 * 6 * Permission to use, copy, modify, and distribute this software for any 7 * purpose with or without fee is hereby granted, provided that the above 8 * copyright notice and this permission notice appear in all copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 #ifndef LOG_H 20 #define LOG_H 21 22 #include <stdarg.h> 23 #include <stdlib.h> 24 25 #ifndef SMALL 26 void log_init(int, int); 27 void log_procinit(const char *); 28 void log_setverbose(int); 29 int log_getverbose(void); 30 void log_warn(const char *, ...) 31 __attribute__((__format__ (printf, 1, 2))); 32 void log_warnx(const char *, ...) 33 __attribute__((__format__ (printf, 1, 2))); 34 void log_info(const char *, ...) 35 __attribute__((__format__ (printf, 1, 2))); 36 void log_debug(const char *, ...) 37 __attribute__((__format__ (printf, 1, 2))); 38 void logit(int, const char *, ...) 39 __attribute__((__format__ (printf, 2, 3))); 40 void vlog(int, const char *, va_list) 41 __attribute__((__format__ (printf, 2, 0))); 42 __dead void fatal(const char *, ...) 43 __attribute__((__format__ (printf, 1, 2))); 44 __dead void fatalx(const char *, ...) 45 __attribute__((__format__ (printf, 1, 2))); 46 #else 47 #define log_init(x...) do {} while(0) 48 #define log_procinit(x...) do {} while(0) 49 #define log_setverbose(x...) do {} while(0) 50 #define log_getverbose(x...) (0) 51 #define log_warn(x...) do {} while(0) 52 #define log_warnx(x...) do {} while(0) 53 #define log_info(x...) do {} while(0) 54 #define log_debug(x...) do {} while(0) 55 #define logit(x...) do {} while(0) 56 #define vlog(x...) do {} while(0) 57 #define fatal(x...) exit(1) 58 #define fatalx(x...) exit(1) 59 #endif /* SMALL */ 60 61 #endif /* LOG_H */ 62