diff options
author | Andre Albsmeier <mail@fbsd2.e4m.org> | 2024-05-27 06:31:34 +0000 |
---|---|---|
committer | Emmanuel Vadot <manu@FreeBSD.org> | 2024-05-27 06:33:14 +0000 |
commit | cca0ce62f367d03ed429bf99e41e6aca8cb7f2ac (patch) | |
tree | c40105143ac2337a6b4701370583b3d0c0eb56cc | |
parent | f5f40dd63bc7acbb5312b26ac1ea1103c12352a6 (diff) | |
download | src-cca0ce62f367d03ed429bf99e41e6aca8cb7f2ac.tar.gz src-cca0ce62f367d03ed429bf99e41e6aca8cb7f2ac.zip |
pam_xdg: pam_get_item can return NULL
Fix pam_xdg as pam_get_item can return NULL, this happens when pressing
control + C in xdm for example.
MFC after: 1 week
PR: 279268
-rw-r--r-- | lib/libpam/modules/pam_xdg/pam_xdg.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libpam/modules/pam_xdg/pam_xdg.c b/lib/libpam/modules/pam_xdg/pam_xdg.c index 4d586a21566a..2c80f0a0332f 100644 --- a/lib/libpam/modules/pam_xdg/pam_xdg.c +++ b/lib/libpam/modules/pam_xdg/pam_xdg.c @@ -67,7 +67,7 @@ _pam_xdg_open(pam_handle_t *pamh, int flags __unused, /* Get user info */ rv = pam_get_item(pamh, PAM_USER, (const void **)&user); - if (rv != PAM_SUCCESS) { + if (rv != PAM_SUCCESS || user == NULL) { PAM_VERBOSE_ERROR("Can't get user information"); goto out; } @@ -221,7 +221,7 @@ _pam_xdg_close(pam_handle_t *pamh __unused, int flags __unused, /* Get user info */ rv = pam_get_item(pamh, PAM_USER, (const void **)&user); - if (rv != PAM_SUCCESS) { + if (rv != PAM_SUCCESS || user == NULL) { PAM_VERBOSE_ERROR("Can't get user information"); goto out; } |