summaryrefslogtreecommitdiff
path: root/src/log.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2011-03-31 19:49:04 +0200
committerLennart Poettering <lennart@poettering.net>2011-03-31 19:49:04 +0200
commit29db583471f019ed9939a90966b3e194a9560e7e (patch)
treea96edbaf00e9a787df07a5e3ba791bfc9f0b450c /src/log.c
parent7602c46fe6c48792b5eb4d157233066c68be9c9a (diff)
log: don't strip facility when writing to kmsg
Diffstat (limited to 'src/log.c')
-rw-r--r--src/log.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/log.c b/src/log.c
index b6d4bf9c1b..4ec6b73888 100644
--- a/src/log.c
+++ b/src/log.c
@@ -289,7 +289,7 @@ static int write_to_syslog(
if (syslog_fd < 0)
return 0;
- snprintf(header_priority, sizeof(header_priority), "<%i>", LOG_MAKEPRI(LOG_DAEMON, LOG_PRI(level)));
+ snprintf(header_priority, sizeof(header_priority), "<%i>", level);
char_array_0(header_priority);
t = (time_t) (now(CLOCK_REALTIME) / USEC_PER_SEC);
@@ -346,7 +346,7 @@ static int write_to_kmsg(
if (kmsg_fd < 0)
return 0;
- snprintf(header_priority, sizeof(header_priority), "<%i>", LOG_PRI(level));
+ snprintf(header_priority, sizeof(header_priority), "<%i>", level);
char_array_0(header_priority);
snprintf(header_pid, sizeof(header_pid), "[%lu]: ", (unsigned long) getpid());
@@ -377,6 +377,10 @@ static int log_dispatch(
if (log_target == LOG_TARGET_NULL)
return 0;
+ /* Patch in LOG_DAEMON facility if necessary */
+ if (LOG_FAC(level) == 0)
+ level = LOG_MAKEPRI(LOG_DAEMON, LOG_PRI(level));
+
do {
char *e;
int k = 0;