void ntlm_populate_server_av_pairs(NTLM_CONTEXT* context) { int length; AV_PAIRS* av_pairs = context->av_pairs; av_pairs->NbDomainName.length = strlen(test_NbDomainName) * 2; av_pairs->NbDomainName.value = (BYTE*) malloc(av_pairs->NbDomainName.length); MultiByteToWideChar(CP_ACP, 0, test_NbDomainName, strlen(test_NbDomainName), (LPWSTR) av_pairs->NbDomainName.value, av_pairs->NbDomainName.length / 2); av_pairs->NbComputerName.length = strlen(test_NbDomainName) * 2; av_pairs->NbComputerName.value = (BYTE*) malloc(av_pairs->NbComputerName.length); MultiByteToWideChar(CP_ACP, 0, test_NbComputerName, strlen(test_NbComputerName), (LPWSTR) av_pairs->NbComputerName.value, av_pairs->NbComputerName.length / 2); av_pairs->DnsDomainName.length = strlen(test_DnsDomainName) * 2; av_pairs->DnsDomainName.value = (BYTE*) malloc(av_pairs->DnsDomainName.length); MultiByteToWideChar(CP_ACP, 0, test_DnsDomainName, strlen(test_DnsDomainName), (LPWSTR) av_pairs->DnsDomainName.value, av_pairs->DnsDomainName.length / 2); av_pairs->DnsComputerName.length = strlen(test_DnsComputerName) * 2; av_pairs->DnsComputerName.value = (BYTE*) malloc(av_pairs->DnsComputerName.length); MultiByteToWideChar(CP_ACP, 0, test_DnsComputerName, strlen(test_DnsComputerName), (LPWSTR) av_pairs->DnsComputerName.value, av_pairs->DnsComputerName.length / 2); length = ntlm_compute_av_pairs_length(context) + 4; sspi_SecBufferAlloc(&context->TargetInfo, length); ntlm_output_av_pairs(context, &context->TargetInfo); }
void ntlm_populate_av_pairs(NTLM_CONTEXT* context) { int length; AV_PAIRS* av_pairs = context->av_pairs; /* MsvAvFlags */ av_pairs->Flags = 0x00000002; /* Indicates the present of a Message Integrity Check (MIC) */ /* Restriction_Encoding */ ntlm_output_restriction_encoding(context); /* TargetName */ ntlm_output_target_name(context); /* ChannelBindings */ ntlm_output_channel_bindings(context); length = ntlm_compute_av_pairs_length(context); sspi_SecBufferAlloc(&context->TargetInfo, length); ntlm_output_av_pairs(context, &context->TargetInfo); }
void ntlm_populate_server_av_pairs(NTLM_CONTEXT* context) { int length; size_t size; AV_PAIRS* av_pairs = context->av_pairs; av_pairs->NbDomainName.value = (uint8*) freerdp_uniconv_out(context->uniconv, test_NbDomainName, &size); av_pairs->NbDomainName.length = (uint16) size; av_pairs->NbComputerName.value = (uint8*) freerdp_uniconv_out(context->uniconv, test_NbComputerName, &size); av_pairs->NbComputerName.length = (uint16) size; av_pairs->DnsDomainName.value = (uint8*) freerdp_uniconv_out(context->uniconv, test_DnsDomainName, &size); av_pairs->DnsDomainName.length = (uint16) size; av_pairs->DnsComputerName.value = (uint8*) freerdp_uniconv_out(context->uniconv, test_DnsComputerName, &size); av_pairs->DnsComputerName.length = (uint16) size; length = ntlm_compute_av_pairs_length(context) + 4; sspi_SecBufferAlloc(&context->TargetInfo, length); ntlm_output_av_pairs(context, &context->TargetInfo); }