struct winbindd_domain *domain;
NTSTATUS status;
DATA_BLOB lm_response, nt_response;
+ uint32_t flags;
+
domain = wb_child_domain();
if (domain == NULL) {
return NT_STATUS_REQUEST_NOT_ACCEPTED;
r->in.logon.network->identity_info.domain_name.string,
r->in.logon.network->identity_info.workstation.string,
r->in.logon.network->challenge,
- lm_response, nt_response, &r->out.validation.sam3);
+ lm_response, nt_response,
+ &r->out.authoritative, &flags,
+ &r->out.validation.sam3);
return status;
}
const uint8_t chal[8],
DATA_BLOB lm_response,
DATA_BLOB nt_response,
+ uint8_t *authoritative,
+ uint32_t *flags,
struct netr_SamInfo3 **info3)
{
- uint8_t authoritative = 0;
- uint32_t flags = 0;
NTSTATUS result;
if (strequal(name_domain, get_global_sam_name())) {
* We need to try the remote NETLOGON server if this is NOT_IMPLEMENTED
*/
if (!NT_STATUS_EQUAL(result, NT_STATUS_NOT_IMPLEMENTED)) {
+ *authoritative = 1;
+ *flags = 0;
goto process_result;
}
}
lm_response,
nt_response,
false, /* interactive */
- &authoritative,
- &flags,
+ authoritative,
+ flags,
info3);
if (!NT_STATUS_IS_OK(result)) {
goto done;
const char *name_user = NULL;
const char *name_domain = NULL;
const char *workstation;
+ uint8_t authoritative;
+ uint32_t flags;
DATA_BLOB lm_resp, nt_resp;
state->request->data.auth_crap.chal,
lm_resp,
nt_resp,
+ &authoritative,
+ &flags,
&info3);
if (!NT_STATUS_IS_OK(result)) {
goto done;
const uint8_t chal[8],
DATA_BLOB lm_response,
DATA_BLOB nt_response,
+ uint8_t *authoritative,
+ uint32_t *flags,
struct netr_SamInfo3 **info3);
/* The following definitions come from winbindd/winbindd_util.c */