winbind: Fix CID 1435598 Error handling issues (CHECKED_RETURN)
authorVolker Lendecke <vl@samba.org>
Tue, 15 May 2018 11:40:36 +0000 (13:40 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Tue, 15 May 2018 19:12:33 +0000 (21:12 +0200)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Tue May 15 21:12:33 CEST 2018 on sn-devel-144

source3/winbindd/winbindd_pam.c

index ff40ab54a70894700a354f3290c399bb70a2b686..a7e16815ec57c2e20c376d8c12244cfda3da8d5e 100644 (file)
@@ -989,6 +989,7 @@ static NTSTATUS winbindd_dual_pam_auth_cached(struct winbindd_domain *domain,
        struct netr_SamInfo3 *my_info3;
        time_t kickoff_time, must_change_time;
        bool password_good = false;
+       bool ok;
 #ifdef HAVE_KRB5
        struct winbindd_tdc_domain *tdc_domain = NULL;
 #endif
@@ -1001,11 +1002,14 @@ static NTSTATUS winbindd_dual_pam_auth_cached(struct winbindd_domain *domain,
 
        /* Parse domain and username */
 
-       parse_domain_user(state->request->data.auth.user,
-                         name_namespace,
-                         name_domain,
-                         name_user);
-
+       ok = parse_domain_user(state->request->data.auth.user,
+                              name_namespace,
+                              name_domain,
+                              name_user);
+       if (!ok) {
+               DBG_DEBUG("parse_domain_user failed\n");
+               return NT_STATUS_NO_SUCH_USER;
+       }
 
        if (!lookup_cached_name(name_namespace,
                                name_domain,