s3-winbindd: pass logon parmeters down to check_sam_security()
authorAndrew Bartlett <abartlet@samba.org>
Sun, 19 Feb 2012 00:15:38 +0000 (11:15 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Sun, 19 Feb 2012 23:50:47 +0000 (10:50 +1100)
This allows ntlm_auth --diagnostics to work against the local DC, just
as it works against a member server.

Andrew Bartlett

source3/winbindd/winbindd_pam.c

index 93034adb84f9ac4e715dca95f2fbf8129fa9c1ad..7163af2596bf792ff07866706161f591f183ce97 100644 (file)
@@ -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;
        }