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 26void log_init(int, int); 27void log_procinit(const char *); 28void log_setverbose(int); 29int log_getverbose(void); 30void log_warn(const char *, ...) 31 __attribute__((__format__ (printf, 1, 2))); 32void log_warnx(const char *, ...) 33 __attribute__((__format__ (printf, 1, 2))); 34void log_info(const char *, ...) 35 __attribute__((__format__ (printf, 1, 2))); 36void log_debug(const char *, ...) 37 __attribute__((__format__ (printf, 1, 2))); 38void logit(int, const char *, ...) 39 __attribute__((__format__ (printf, 2, 3))); 40void 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