From 1e2c6cecf81dcaeea0c2c9d37bc35eea120cd77d Mon Sep 17 00:00:00 2001 From: Tobias Stoeckmann Date: Wed, 7 Feb 2024 19:16:03 +0100 Subject: pam_limits: print line number in warning The line itself is modified while parsing its content. Print the line number and file name instead so an administrator can investigate it. Signed-off-by: Tobias Stoeckmann --- modules/pam_limits/pam_limits.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules/pam_limits') diff --git a/modules/pam_limits/pam_limits.c b/modules/pam_limits/pam_limits.c index c2ca7abb..8c7f7654 100644 --- a/modules/pam_limits/pam_limits.c +++ b/modules/pam_limits/pam_limits.c @@ -882,6 +882,7 @@ parse_config_file(pam_handle_t *pamh, const char *uname, uid_t uid, gid_t gid, FILE *fil; char *buf = NULL; size_t n = 0; + unsigned long long lineno = 0; /* check for the conf_file */ if (ctrl & PAM_DEBUG_ARG) @@ -905,6 +906,8 @@ parse_config_file(pam_handle_t *pamh, const char *uname, uid_t uid, gid_t gid, size_t j; uid_t min_uid = (uid_t)-1, max_uid = (uid_t)-1; + lineno++; + line = buf; /* skip the leading white space */ while (*line && isspace((unsigned char)*line)) @@ -1073,7 +1076,8 @@ parse_config_file(pam_handle_t *pamh, const char *uname, uid_t uid, gid_t gid, fclose(fil); return PAM_IGNORE; } else { - pam_syslog(pamh, LOG_WARNING, "invalid line '%s' - skipped", line); + pam_syslog(pamh, LOG_WARNING, "invalid line %llu in '%s' - skipped", + lineno, pl->conf_file); } } free(buf); -- cgit v1.2.3