diff options
author | Luca Lorenzetto <lorenzetto-luca@ubuntu-it.org> | 2012-09-11 18:35:42 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2012-09-21 09:44:44 +0200 |
commit | 5463fcf7dca60c902946f36437c034137d9078b0 (patch) | |
tree | ee5bf546199591027df2acb188109a3ef7350e1e | |
parent | f919d070b1dc9c210e9b402806372fd2f041b35a (diff) | |
download | samba-5463fcf7dca60c902946f36437c034137d9078b0.tar.gz |
nsswitch: fix crash on null pam change pw response
The function _pam_winbind_change_pwd crashes due to a null value passed
to the function strcasecmp and denies to login via graphical login
manager. Check for a null value before doing a strcasecmp.
Bug-Ubuntu: https://bugs.launchpad.net/bugs/1003296
Bug: https://bugzilla.samba.org/show_bug.cgi?id=9013
(Desktop Managers (xdm, gdm, lightdm...) crashes with SIGSEGV in
_pam_winbind_change_pwd() when password is expiring)
(cherry picked from commit 47f2211f137688a7c46c4a38571a9f94e59dbf6a)
(cherry picked from commit 25bf057288d5e77c07a5ed3d3c3fb7f5f33f62b6)
-rw-r--r-- | nsswitch/pam_winbind.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/nsswitch/pam_winbind.c b/nsswitch/pam_winbind.c index 81055c9f0ff..fdaf8074fcf 100644 --- a/nsswitch/pam_winbind.c +++ b/nsswitch/pam_winbind.c @@ -831,7 +831,7 @@ static bool _pam_winbind_change_pwd(struct pwb_context *ctx) } _pam_log(ctx, LOG_CRIT, "Received [%s] reply from application.\n", resp->resp); - if (strcasecmp(resp->resp, "yes") == 0) { + if ((resp->resp != NULL) && (strcasecmp(resp->resp, "yes") == 0)) { retval = true; } |