]> git.ipfire.org Git - thirdparty/lldpd.git/blob - src/log.h
3f9598e0470eb5a2bc8a3dd91ab060fbf7275789
[thirdparty/lldpd.git] / src / log.h
1 /* -*- mode: c; c-file-style: "openbsd" -*- */
2 /*
3 * Copyright (c) 2012 Vincent Bernat <bernat@luffy.cx>
4 *
5 * Permission to use, copy, modify, and/or distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the above
7 * copyright notice and this permission notice appear in all copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 */
17
18 #ifndef _LOG_H
19 #define _LOG_H
20
21 /* log.c */
22 #include <string.h>
23 #define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
24
25 void log_init(int, const char *);
26 void log_warn(const char *, const char *, ...) __attribute__ ((format (printf, 2, 3)));
27 #define LLOG_WARN(x,...) log_warn(__FILENAME__, x, ## __VA_ARGS__)
28 void log_warnx(const char *, const char *, ...) __attribute__ ((format (printf, 2, 3)));
29 #define LLOG_WARNX(x,...) log_warnx(__FILENAME__, x, ## __VA_ARGS__)
30 void log_info(const char *, const char *, ...) __attribute__ ((format (printf, 2, 3)));
31 #define LLOG_INFO(x,...) log_info(__FILENAME__, x, ## __VA_ARGS__)
32 void log_debug(const char *, const char *, ...) __attribute__ ((format (printf, 2, 3)));
33 #define LLOG_DEBUG(x,...) log_debug(__FILENAME__, x, ## __VA_ARGS__)
34 void fatal(const char *);
35 void fatalx(const char *);
36
37 void log_register(void (*cb)(int, const char*));
38
39 #endif