pam_winbind: match more return codes when wbcGetPwnam has failed.
authorGünther Deschner <gd@samba.org>
Wed, 19 Sep 2012 08:59:50 +0000 (10:59 +0200)
committerKarolin Seeger <kseeger@samba.org>
Tue, 9 Oct 2012 07:35:29 +0000 (09:35 +0200)
This is required to properly return PAM_USER_UNKNOWN in case winbind had a
problem.

Guenther

Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Wed Sep 19 15:06:10 CEST 2012 on sn-devel-104
(cherry picked from commit 98d90c02f0961d173bebb9901c7ad0819827f96e)

Fix bug #9177 - pam_winbind's pm_sm_acct_mgmt needs to return PAM_USER_UNKNOWN.

nsswitch/pam_winbind.c

index fb84985155ef7e7ca1853677d7b9b21bc3a043ec..83d7bb67da9e6f9c23716fe1f1dbf7e269098096 100644 (file)
@@ -2064,6 +2064,9 @@ static int valid_user(struct pwb_context *ctx,
 
        switch (wbc_status) {
                case WBC_ERR_UNKNOWN_USER:
+               /* match other insane libwbclient return codes */
+               case WBC_ERR_WINBIND_NOT_AVAILABLE:
+               case WBC_ERR_DOMAIN_NOT_FOUND:
                        return 1;
                case WBC_ERR_SUCCESS:
                        return 0;