diff options
author | des <des@FreeBSD.org> | 2003-04-30 00:44:05 +0000 |
---|---|---|
committer | des <des@FreeBSD.org> | 2003-04-30 00:44:05 +0000 |
commit | 4f251ebb977bb8290036b334a92ab0ad273a972d (patch) | |
tree | ddfe4bbdabb2f5dcd1eb53956ec434e9c1decf19 /lib/libpam/modules | |
parent | 668955a3c5893b64f588c8be729010bc97bd313e (diff) | |
download | FreeBSD-src-4f251ebb977bb8290036b334a92ab0ad273a972d.zip FreeBSD-src-4f251ebb977bb8290036b334a92ab0ad273a972d.tar.gz |
Treat an empty PAM_RHOST the same as a NULL one.
PR: bin/51508
Diffstat (limited to 'lib/libpam/modules')
-rw-r--r-- | lib/libpam/modules/pam_lastlog/pam_lastlog.c | 4 | ||||
-rw-r--r-- | lib/libpam/modules/pam_login_access/pam_login_access.c | 2 | ||||
-rw-r--r-- | lib/libpam/modules/pam_opieaccess/pam_opieaccess.c | 2 | ||||
-rw-r--r-- | lib/libpam/modules/pam_unix/pam_unix.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/lib/libpam/modules/pam_lastlog/pam_lastlog.c b/lib/libpam/modules/pam_lastlog/pam_lastlog.c index 66f61d3..200f489 100644 --- a/lib/libpam/modules/pam_lastlog/pam_lastlog.c +++ b/lib/libpam/modules/pam_lastlog/pam_lastlog.c @@ -129,7 +129,7 @@ pam_sm_open_session(pam_handle_t *pamh, int flags, /* note: does not need to be NUL-terminated */ strncpy(ll.ll_line, tty, sizeof(ll.ll_line)); - if (rhost != NULL) + if (rhost != NULL && *rhost != '\0') /* note: does not need to be NUL-terminated */ strncpy(ll.ll_host, rhost, sizeof(ll.ll_host)); @@ -145,7 +145,7 @@ pam_sm_open_session(pam_handle_t *pamh, int flags, utmp.ut_time = time(NULL); /* note: does not need to be NUL-terminated */ strncpy(utmp.ut_name, user, sizeof(utmp.ut_name)); - if (rhost != NULL) + if (rhost != NULL && *rhost != '\0') strncpy(utmp.ut_host, rhost, sizeof(utmp.ut_host)); (void)strncpy(utmp.ut_line, tty, sizeof(utmp.ut_line)); login(&utmp); diff --git a/lib/libpam/modules/pam_login_access/pam_login_access.c b/lib/libpam/modules/pam_login_access/pam_login_access.c index 8f8ac54..f41326b 100644 --- a/lib/libpam/modules/pam_login_access/pam_login_access.c +++ b/lib/libpam/modules/pam_login_access/pam_login_access.c @@ -79,7 +79,7 @@ pam_sm_acct_mgmt(pam_handle_t *pamh, int flags __unused, gethostname(hostname, sizeof hostname); - if (rhost == NULL) { + if (rhost == NULL || *rhost == '\0') { PAM_LOG("Checking login.access for user %s on tty %s", user, tty); if (login_access(user, tty) != 0) diff --git a/lib/libpam/modules/pam_opieaccess/pam_opieaccess.c b/lib/libpam/modules/pam_opieaccess/pam_opieaccess.c index 66ad399..61a97bf 100644 --- a/lib/libpam/modules/pam_opieaccess/pam_opieaccess.c +++ b/lib/libpam/modules/pam_opieaccess/pam_opieaccess.c @@ -73,7 +73,7 @@ pam_sm_authenticate(pam_handle_t *pamh, int flags __unused, r = pam_get_item(pamh, PAM_RHOST, (const void **)&rhost); if (r != PAM_SUCCESS) return (r); - if (rhost == NULL) + if (rhost == NULL || *rhost == '\0') rhost = openpam_get_option(pamh, "allow_local") ? "" : "localhost"; diff --git a/lib/libpam/modules/pam_unix/pam_unix.c b/lib/libpam/modules/pam_unix/pam_unix.c index afceb0e..28b9c17 100644 --- a/lib/libpam/modules/pam_unix/pam_unix.c +++ b/lib/libpam/modules/pam_unix/pam_unix.c @@ -246,7 +246,7 @@ pam_sm_acct_mgmt(pam_handle_t *pamh, int flags __unused, * PAM_NEW_AUTHTOK_REQD. */ - if (rhost) { + if (rhost && *rhost) { memset(&hints, 0, sizeof(hints)); hints.ai_family = AF_UNSPEC; if (getaddrinfo(rhost, NULL, &hints, &res) == 0) { |