if (creds->negotiate_flags & NETLOGON_NEG_SUPPORTS_AES) {
netlogon_creds_aes_decrypt(creds, password_buf.data, 516);
} else {
- netlogon_creds_arcfour_crypt(creds, password_buf.data, 516);
+ nt_status = netlogon_creds_arcfour_crypt(creds,
+ password_buf.data,
+ 516);
+ if (!NT_STATUS_IS_OK(nt_status)) {
+ return nt_status;
+ }
}
switch (creds->secure_channel_type) {
if (creds->negotiate_flags & NETLOGON_NEG_SUPPORTS_AES) {
netlogon_creds_aes_decrypt(creds, r->in.opaque_buffer, r->in.buffer_len);
} else {
- netlogon_creds_arcfour_crypt(creds, r->in.opaque_buffer, r->in.buffer_len);
+ nt_status = netlogon_creds_arcfour_crypt(creds,
+ r->in.opaque_buffer,
+ r->in.buffer_len);
+ if (!NT_STATUS_IS_OK(nt_status)) {
+ return nt_status;
+ }
}
decrypted_blob.data = r->in.opaque_buffer;