static NTSTATUS netlogon_creds_crypt_samlogon_logon(struct netlogon_creds_CredentialState *creds,
enum netr_LogonInfoClass level,
union netr_LogonLevel *logon,
+ enum dcerpc_AuthType auth_type,
+ enum dcerpc_AuthLevel auth_level,
bool do_encrypt)
{
NTSTATUS status;
NTSTATUS netlogon_creds_decrypt_samlogon_logon(struct netlogon_creds_CredentialState *creds,
enum netr_LogonInfoClass level,
- union netr_LogonLevel *logon)
+ union netr_LogonLevel *logon,
+ enum dcerpc_AuthType auth_type,
+ enum dcerpc_AuthLevel auth_level)
{
- return netlogon_creds_crypt_samlogon_logon(creds, level, logon, false);
+ return netlogon_creds_crypt_samlogon_logon(creds,
+ level,
+ logon,
+ auth_type,
+ auth_level,
+ false);
}
NTSTATUS netlogon_creds_encrypt_samlogon_logon(struct netlogon_creds_CredentialState *creds,
enum netr_LogonInfoClass level,
- union netr_LogonLevel *logon)
+ union netr_LogonLevel *logon,
+ enum dcerpc_AuthType auth_type,
+ enum dcerpc_AuthLevel auth_level)
{
- return netlogon_creds_crypt_samlogon_logon(creds, level, logon, true);
+ return netlogon_creds_crypt_samlogon_logon(creds,
+ level,
+ logon,
+ auth_type,
+ auth_level,
+ true);
}
union netr_LogonLevel *netlogon_creds_shallow_copy_logon(TALLOC_CTX *mem_ctx,
status = netlogon_creds_encrypt_samlogon_logon(state->ro_creds,
state->logon_level,
- state->logon);
+ state->logon,
+ auth_type,
+ auth_level);
if (!NT_STATUS_IS_OK(status)) {
status = NT_STATUS_ACCESS_DENIED;
tevent_req_nterror(req, status);
status = netlogon_creds_encrypt_samlogon_logon(&state->tmp_creds,
state->logon_level,
- state->logon);
+ state->logon,
+ auth_type,
+ auth_level);
if (tevent_req_nterror(req, status)) {
netlogon_creds_cli_LogonSamLogon_cleanup(req, status);
return;
enum dcerpc_AuthLevel auth_level);
NTSTATUS netlogon_creds_decrypt_samlogon_logon(struct netlogon_creds_CredentialState *creds,
enum netr_LogonInfoClass level,
- union netr_LogonLevel *logon);
+ union netr_LogonLevel *logon,
+ enum dcerpc_AuthType auth_type,
+ enum dcerpc_AuthLevel auth_level);
NTSTATUS netlogon_creds_encrypt_samlogon_logon(struct netlogon_creds_CredentialState *creds,
enum netr_LogonInfoClass level,
- union netr_LogonLevel *logon);
+ union netr_LogonLevel *logon,
+ enum dcerpc_AuthType auth_type,
+ enum dcerpc_AuthLevel auth_level);
union netr_LogonLevel *netlogon_creds_shallow_copy_logon(TALLOC_CTX *mem_ctx,
enum netr_LogonInfoClass level,
const union netr_LogonLevel *in);