X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flog.c;fp=src%2Flog.c;h=9fffc1dbc00ba2123cae35afbf3d4eb0156865eb;hb=3eff4208ffecedd778fec260f0d4b18e94dab443;hp=5b1721184e65362a5e2f119ee90d127ac98c0c9d;hpb=3338b9595b69a4a6de43bbd0f49b941eba7f6b0e;p=elogind.git diff --git a/src/log.c b/src/log.c index 5b1721184..9fffc1dbc 100644 --- a/src/log.c +++ b/src/log.c @@ -37,6 +37,7 @@ static LogTarget log_target = LOG_TARGET_CONSOLE; static int log_max_level = LOG_INFO; +static int log_facility = LOG_DAEMON; static int console_fd = STDERR_FILENO; static int syslog_fd = -1; @@ -310,6 +311,10 @@ void log_set_max_level(int level) { log_max_level = level; } +void log_set_facility(int facility) { + log_facility = facility; +} + static int write_to_console( int level, const char*file, @@ -457,11 +462,13 @@ static int write_to_journal( snprintf(header, sizeof(header), "PRIORITY=%i\n" + "SYSLOG_FACILITY=%i\n" "CODE_FILE=%s\n" "CODE_LINE=%i\n" "CODE_FUNCTION=%s\n" "MESSAGE=", LOG_PRI(level), + LOG_FAC(level), file, line, func); @@ -497,7 +504,7 @@ static int log_dispatch( /* Patch in LOG_DAEMON facility if necessary */ if ((level & LOG_FACMASK) == 0) - level = LOG_DAEMON | LOG_PRI(level); + level = log_facility | LOG_PRI(level); do { char *e;