1 /* $OpenBSD: log.h,v 1.2 2021/06/18 11:44:48 florian 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 <sys/cdefs.h> 23 #include <stdarg.h> 24 #include <stdlib.h> 25 26 #ifndef SMALL 27 void log_init(int, int); 28 void log_procinit(const char *); 29 void log_setverbose(int); 30 int log_getverbose(void); 31 void log_warn(const char *, ...) 32 __attribute__((__format__ (printf, 1, 2))); 33 void log_warnx(const char *, ...) 34 __attribute__((__format__ (printf, 1, 2))); 35 void log_info(const char *, ...) 36 __attribute__((__format__ (printf, 1, 2))); 37 void log_debug(const char *, ...) 38 __attribute__((__format__ (printf, 1, 2))); 39 void logit(int, const char *, ...) 40 __attribute__((__format__ (printf, 2, 3))); 41 void vlog(int, const char *, va_list) 42 __attribute__((__format__ (printf, 2, 0))); 43 __dead void fatal(const char *, ...) 44 __attribute__((__format__ (printf, 1, 2))); 45 __dead void fatalx(const char *, ...) 46 __attribute__((__format__ (printf, 1, 2))); 47 #else 48 #define log_init(x...) do {} while(0) 49 #define log_procinit(x...) do {} while(0) 50 #define log_setverbose(x...) do {} while(0) 51 #define log_getverbose(x...) (0) 52 #define log_warn(x...) do {} while(0) 53 #define log_warnx(x...) do {} while(0) 54 #define log_info(x...) do {} while(0) 55 #define log_debug(x...) do {} while(0) 56 #define logit(x...) do {} while(0) 57 #define vlog(x...) do {} while(0) 58 #define fatal(x...) exit(1) 59 #define fatalx(x...) exit(1) 60 #endif /* SMALL */ 61 62 #endif /* LOG_H */ 63