summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/nsswitch/winbindd_pam.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/source3/nsswitch/winbindd_pam.c b/source3/nsswitch/winbindd_pam.c
index a2ebe0ddbc..c5c9ca6322 100644
--- a/source3/nsswitch/winbindd_pam.c
+++ b/source3/nsswitch/winbindd_pam.c
@@ -274,8 +274,12 @@ enum winbindd_result winbindd_pam_auth(struct winbindd_cli_state *state)
}
} while ( (attempts < 2) && retry );
-
- clnt_deal_with_creds(cli->sess_key, &(cli->clnt_cred), &ret_creds);
+
+ if (cli != NULL) {
+ /* We might have come out of the loop above with cli == NULL,
+ so don't dereference that. */
+ clnt_deal_with_creds(cli->sess_key, &(cli->clnt_cred), &ret_creds);
+ }
if (NT_STATUS_IS_OK(result)) {
netsamlogon_cache_store( cli->mem_ctx, &info3 );