uint32_t extra_logon_parameters,
uint8_t lm_key[8],
uint8_t user_session_key[16],
+ uint8_t *pauthoritative,
char **error_string,
char **unix_name)
{
struct winbindd_request request;
struct winbindd_response response;
+ *pauthoritative = 1;
+
if (!get_require_membership_sid()) {
return NT_STATUS_INVALID_PARAMETER;
}
if (!NT_STATUS_IS_OK(nt_status)) {
if (error_string)
*error_string = smb_xstrdup(response.data.auth.error_string);
+ *pauthoritative = response.data.auth.authoritative;
winbindd_free_response(&response);
return nt_status;
}
uint8_t lm_key[8];
uint8_t user_sess_key[16];
char *unix_name = NULL;
+ uint8_t authoritative = 0;
nt_status = contact_winbind_auth_crap(user_info->client.account_name, user_info->client.domain_name,
user_info->workstation_name,
WBFLAG_PAM_LMKEY | WBFLAG_PAM_USER_SESSION_KEY | WBFLAG_PAM_UNIX_NAME,
0,
lm_key, user_sess_key,
+ &authoritative,
&error_string, &unix_name);
if (NT_STATUS_IS_OK(nt_status)) {
TALLOC_FREE(mem_ctx);
} else {
+ uint8_t authoritative = 0;
+
if (!domain) {
domain = smb_xstrdup(get_winbind_domain());
}
flags, 0,
lm_key,
user_session_key,
+ &authoritative,
&error_string,
NULL);
}
char *hex_lm_key;
char *hex_user_session_key;
char *error_string;
+ uint8_t authoritative = 0;
setbuf(stdout, NULL);
flags, 0,
(unsigned char *)lm_key,
(unsigned char *)user_session_key,
+ &authoritative,
&error_string, NULL);
if (!NT_STATUS_IS_OK(nt_status)) {
DATA_BLOB lm_response = data_blob(NULL, 24);
DATA_BLOB nt_response = data_blob(NULL, 24);
DATA_BLOB session_key = data_blob(NULL, 16);
-
+ uint8_t authoritative = 0;
uchar lm_key[8];
uchar user_session_key[16];
uchar lm_hash[16];
flags, 0,
lm_key,
user_session_key,
+ &authoritative,
&error_string, NULL);
data_blob_free(&lm_response);
NTSTATUS nt_status;
uint32_t flags = 0;
DATA_BLOB nt_response = data_blob(NULL, 24);
-
+ uint8_t authoritative = 0;
uchar lm_key[8];
uchar lm_hash[16];
uchar user_session_key[16];
flags, 0,
lm_key,
user_session_key,
+ &authoritative,
&error_string, NULL);
data_blob_free(&nt_response);
uint32_t flags = 0;
DATA_BLOB nt_response = data_blob(NULL, 24);
DATA_BLOB session_key = data_blob(NULL, 16);
-
+ uint8_t authoritative = 0;
uint8_t lm_key[8];
uint8_t lm_hash[16];
uint8_t user_session_key[16];
flags, 0,
lm_key,
user_session_key,
+ &authoritative,
&error_string, NULL);
data_blob_free(&nt_response);
DATA_BLOB lmv2_response = data_blob_null;
DATA_BLOB ntlmv2_session_key = data_blob_null;
DATA_BLOB names_blob = NTLMv2_generate_names_blob(NULL, get_winbind_netbios_name(), get_winbind_domain());
-
+ uint8_t authoritative = 0;
uchar user_session_key[16];
DATA_BLOB chall = get_challenge();
char *error_string;
flags, 0,
NULL,
user_session_key,
+ &authoritative,
&error_string, NULL);
data_blob_free(&lmv2_response);
char *password;
smb_ucs2_t *nt_response_ucs2;
size_t converted_size;
-
+ uint8_t authoritative = 0;
uchar user_session_key[16];
uchar lm_key[16];
static const uchar zeros[8] = { 0, };
flags, MSV1_0_CLEARTEXT_PASSWORD_ALLOWED,
lm_key,
user_session_key,
+ &authoritative,
&error_string, NULL);
TALLOC_FREE(nt_response.data);