diff options
-rw-r--r-- | source3/winbindd/winbindd_pam.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c index 93034adb84..7163af2596 100644 --- a/source3/winbindd/winbindd_pam.c +++ b/source3/winbindd/winbindd_pam.c @@ -1110,6 +1110,7 @@ done: } static NTSTATUS winbindd_dual_auth_passdb(TALLOC_CTX *mem_ctx, + uint32_t logon_parameters, const char *domain, const char *user, const DATA_BLOB *challenge, const DATA_BLOB *lm_resp, @@ -1136,6 +1137,7 @@ static NTSTATUS winbindd_dual_auth_passdb(TALLOC_CTX *mem_ctx, DEBUG(10, ("make_user_info failed: %s\n", nt_errstr(status))); return status; } + user_info->logon_parameters = logon_parameters; /* We don't want any more mapping of the username */ user_info->mapped_state = True; @@ -1397,7 +1399,7 @@ static NTSTATUS winbindd_dual_pam_auth_samlogon(TALLOC_CTX *mem_ctx, DATA_BLOB chal_blob = data_blob_const(chal, sizeof(chal)); result = winbindd_dual_auth_passdb( - mem_ctx, name_domain, name_user, + mem_ctx, 0, name_domain, name_user, &chal_blob, &lm_resp, &nt_resp, info3); goto done; } @@ -1820,7 +1822,9 @@ enum winbindd_result winbindd_dual_pam_auth_crap(struct winbindd_domain *domain, sizeof(state->request->data.auth_crap.chal)); result = winbindd_dual_auth_passdb( - state->mem_ctx, name_domain, name_user, + state->mem_ctx, + state->request->data.auth_crap.logon_parameters, + name_domain, name_user, &chal_blob, &lm_resp, &nt_resp, &info3); goto process_result; } |