]> git.ipfire.org Git - thirdparty/systemd.git/blame - log.c
license: add GPLv2+ license blurbs everwhere
[thirdparty/systemd.git] / log.c
CommitLineData
5899f3b7
LP
1/*-*- Mode: C; c-basic-offset: 8 -*-*/
2
a7334b09
LP
3/***
4 This file is part of systemd.
5
6 Copyright 2010 Lennart Poettering
7
8 systemd is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
12
13 systemd is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with systemd; If not, see <http://www.gnu.org/licenses/>.
20***/
21
5899f3b7
LP
22#ifdef HAVE_CONFIG_H
23#include <config.h>
24#endif
25
26#include <stdarg.h>
27#include <stdio.h>
c9b97d2a 28#include <errno.h>
5899f3b7
LP
29
30#include "log.h"
31
32void log_meta(
33 int level,
34 const char*file,
35 int line,
36 const char *func,
37 const char *format, ...) {
38
39 const char *prefix, *suffix;
40 va_list ap;
c9b97d2a 41 int saved_errno = errno;
5899f3b7
LP
42
43 if (LOG_PRI(level) <= LOG_ERR) {
44 prefix = "\x1B[1;31m";
45 suffix = "\x1B[0m";
46 } else {
47 prefix = "";
48 suffix = "";
49 }
50
51 va_start(ap, format);
52
53 fprintf(stderr, "(%s:%u) %s", file, line, prefix);
54 vfprintf(stderr, format, ap);
55 fprintf(stderr, "%s\n", suffix);
56
57 va_end(ap);
58
c9b97d2a 59 errno = saved_errno;
5899f3b7 60}