diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-04-15 22:25:58 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-04-17 00:09:16 -0400 |
commit | e8e581bf256b8c0fbd430935af79fa0e8ee570a1 (patch) | |
tree | b203161b3797ff9df6444c0696e402448ffbda69 /src/login | |
parent | c1b6628d64e5340d905d974bb95d673a4aae60c1 (diff) |
Report about syntax errors with metadata
The information about the unit for which files are being parsed
is passed all the way down. This way messages land in the journal
with proper UNIT=... or USER_UNIT=... attribution.
'systemctl status' and 'journalctl -u' not displaying those messages
has been a source of confusion for users, since the journal entry for
a misspelt setting was often logged quite a bit earlier than the
failure to start a unit.
Based-on-a-patch-by: Oleksii Shevchuk <alxchk@gmail.com>
Diffstat (limited to 'src/login')
-rw-r--r-- | src/login/logind-action.c | 2 | ||||
-rw-r--r-- | src/login/logind-action.h | 2 | ||||
-rw-r--r-- | src/login/logind.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/login/logind-action.c b/src/login/logind-action.c index 1e529e1c98..4091e411b0 100644 --- a/src/login/logind-action.c +++ b/src/login/logind-action.c @@ -21,6 +21,8 @@ #include <unistd.h> +#include <systemd/sd-messages.h> + #include "conf-parser.h" #include "special.h" #include "dbus-common.h" diff --git a/src/login/logind-action.h b/src/login/logind-action.h index 7ab44644f2..df080d98ed 100644 --- a/src/login/logind-action.h +++ b/src/login/logind-action.h @@ -49,6 +49,6 @@ int manager_handle_action( const char* handle_action_to_string(HandleAction h); HandleAction handle_action_from_string(const char *s); -int config_parse_handle_action(const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); +int config_parse_handle_action(const char *unit, const char *filename, unsigned line, const char *section, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); #endif diff --git a/src/login/logind.c b/src/login/logind.c index caed149ad6..66a786a3f8 100644 --- a/src/login/logind.c +++ b/src/login/logind.c @@ -1689,7 +1689,7 @@ static int manager_parse_config_file(Manager *m) { return -errno; } - r = config_parse(fn, f, "Login\0", config_item_perf_lookup, (void*) logind_gperf_lookup, false, m); + r = config_parse(NULL, fn, f, "Login\0", config_item_perf_lookup, (void*) logind_gperf_lookup, false, m); if (r < 0) log_warning("Failed to parse configuration file: %s", strerror(-r)); |