logind: log with AUTH facility

This commit is contained in:
Lennart Poettering 2012-04-03 19:25:29 +02:00
parent 3338b9595b
commit 3eff4208ff
5 changed files with 11 additions and 3 deletions

2
TODO
View file

@ -30,8 +30,6 @@ Features:
* dbus upstream still refers to dbus.target and shouldn't * dbus upstream still refers to dbus.target and shouldn't
* ensure that logind sets the syslog facility to AUTH when logging
* when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting * when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting
* add man page documenting all kernel cmdline options, including stuff like fsck.mode= * add man page documenting all kernel cmdline options, including stuff like fsck.mode=

View file

@ -2765,6 +2765,7 @@ int main(int argc, char *argv[]) {
} }
log_set_target(LOG_TARGET_CONSOLE); log_set_target(LOG_TARGET_CONSOLE);
log_set_facility(LOG_SYSLOG);
log_parse_environment(); log_parse_environment();
log_open(); log_open();

View file

@ -37,6 +37,7 @@
static LogTarget log_target = LOG_TARGET_CONSOLE; static LogTarget log_target = LOG_TARGET_CONSOLE;
static int log_max_level = LOG_INFO; static int log_max_level = LOG_INFO;
static int log_facility = LOG_DAEMON;
static int console_fd = STDERR_FILENO; static int console_fd = STDERR_FILENO;
static int syslog_fd = -1; static int syslog_fd = -1;
@ -310,6 +311,10 @@ void log_set_max_level(int level) {
log_max_level = level; log_max_level = level;
} }
void log_set_facility(int facility) {
log_facility = facility;
}
static int write_to_console( static int write_to_console(
int level, int level,
const char*file, const char*file,
@ -457,11 +462,13 @@ static int write_to_journal(
snprintf(header, sizeof(header), snprintf(header, sizeof(header),
"PRIORITY=%i\n" "PRIORITY=%i\n"
"SYSLOG_FACILITY=%i\n"
"CODE_FILE=%s\n" "CODE_FILE=%s\n"
"CODE_LINE=%i\n" "CODE_LINE=%i\n"
"CODE_FUNCTION=%s\n" "CODE_FUNCTION=%s\n"
"MESSAGE=", "MESSAGE=",
LOG_PRI(level), LOG_PRI(level),
LOG_FAC(level),
file, file,
line, line,
func); func);
@ -497,7 +504,7 @@ static int log_dispatch(
/* Patch in LOG_DAEMON facility if necessary */ /* Patch in LOG_DAEMON facility if necessary */
if ((level & LOG_FACMASK) == 0) if ((level & LOG_FACMASK) == 0)
level = LOG_DAEMON | LOG_PRI(level); level = log_facility | LOG_PRI(level);
do { do {
char *e; char *e;

View file

@ -43,6 +43,7 @@ typedef enum LogTarget{
void log_set_target(LogTarget target); void log_set_target(LogTarget target);
void log_set_max_level(int level); void log_set_max_level(int level);
void log_set_facility(int facility);
int log_set_target_from_string(const char *e); int log_set_target_from_string(const char *e);
int log_set_max_level_from_string(const char *e); int log_set_max_level_from_string(const char *e);

View file

@ -1240,6 +1240,7 @@ int main(int argc, char *argv[]) {
int r; int r;
log_set_target(LOG_TARGET_AUTO); log_set_target(LOG_TARGET_AUTO);
log_set_facility(LOG_AUTH);
log_parse_environment(); log_parse_environment();
log_open(); log_open();