From e20fd652eff8adefc55bba8f3149e5c7d512a774 Mon Sep 17 00:00:00 2001 From: Jan Christoph Terasa Date: Mon, 18 Feb 2019 22:24:52 +0100 Subject: [PATCH] Show new user page if user is not in password file. --- src/elogd.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/elogd.c b/src/elogd.c index ea2b82b0..c29034d1 100755 --- a/src/elogd.c +++ b/src/elogd.c @@ -27479,6 +27479,12 @@ void interprete(char *lbook, char *path) /* check if user in password file */ if (get_user_line(NULL, uname, NULL, full_name, NULL, NULL, NULL, NULL) == 2) { + /* show new user page if username is not in password file */ + getcfg(NULL, "Authentication", str, sizeof(str)); + if (stristr(str, "PAM")) { + show_new_user_page(NULL, uname); + return; + } /* if self registering not allowed, go back to login screen */ if (!getcfg(group, "Self register", str, sizeof(str)) || atoi(str) == 0) { show_login_page(NULL, str, 1); @@ -27616,6 +27622,12 @@ void interprete(char *lbook, char *path) /* check if user in password file */ if (get_user_line(lbs, uname, NULL, full_name, NULL, NULL, NULL, &inactive) == 2) { + /* show new user page if username is not in password file */ + getcfg(lbs->name, "Authentication", str, sizeof(str)); + if (stristr(str, "PAM")) { + show_new_user_page(lbs, uname); + return; + } /* if self registering not allowed, go back to login screen */ if (!getcfg(lbs->name, "Self register", str, sizeof(str)) || atoi(str) == 0) { show_login_page(lbs, str, 1);