From 11db6fd23dee9cf400a260b371edbd6091a96171 Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Fri, 4 Mar 2016 14:19:01 +0100 Subject: Add checks for localtime() returning NULL. * modules/pam_lastlog/pam_lastlog.c (last_login_read): Check for localtime_r returning NULL. * modules/pam_tally2/pam_tally2.c (print_one): Check for localtime returning NULL. --- modules/pam_tally2/pam_tally2.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'modules/pam_tally2/pam_tally2.c') diff --git a/modules/pam_tally2/pam_tally2.c b/modules/pam_tally2/pam_tally2.c index e513f64c..9187cbfd 100644 --- a/modules/pam_tally2/pam_tally2.c +++ b/modules/pam_tally2/pam_tally2.c @@ -924,7 +924,7 @@ static void print_one(const struct tallylog *tally, uid_t uid) { static int once; - char *cp; + char *cp = "[UNKNOWN]"; time_t fail_time; struct tm *tm; struct passwd *pwent; @@ -933,9 +933,10 @@ print_one(const struct tallylog *tally, uid_t uid) pwent = getpwuid(uid); fail_time = tally->fail_time; - tm = localtime(&fail_time); - strftime (ptime, sizeof (ptime), "%D %H:%M:%S", tm); - cp = ptime; + if ((tm = localtime(&fail_time)) != NULL) { + strftime (ptime, sizeof (ptime), "%D %H:%M:%S", tm); + cp = ptime; + } if (pwent) { username = pwent->pw_name; } -- cgit v1.2.3