X-Git-Url: https://git.sesse.net/?p=rdpsrv;a=blobdiff_plain;f=mcs.c;fp=mcs.c;h=4190e49772d297ffd49ddd299645e82f6b22cae7;hp=10469d860b39a7c7b5c9ad06650e4613d211b279;hb=2d51356d04b722522a52a94594f3fd87632a02ec;hpb=acaf2723526aca308d403214ee19e9438b2fb433 diff --git a/mcs.c b/mcs.c index 10469d8..4190e49 100644 --- a/mcs.c +++ b/mcs.c @@ -303,22 +303,24 @@ mcs_send_connect_response() // crypto info out_uint16_le(s, SEC_TAG_SRV_CRYPT); - out_uint16_le(s, 160); // length - out_uint32_le(s, 1); // 40-bit - out_uint32_le(s, 1); // low + out_uint16_le(s, 156); // length + out_uint32_le(s, 2); // 128-bit + out_uint32_le(s, 3); // high out_uint32_le(s, SEC_RANDOM_SIZE); // random_len - out_uint32_le(s, 96); // rsa_info_len + out_uint32_le(s, 92); // rsa_info_len out_uint8s(s, SEC_RANDOM_SIZE); // server_random out_uint32_le(s, 1); // RDP4-style - out_uint8s(s, 8); // unknown + // unknown + out_uint32_le(s, 1); + out_uint32_le(s, 1); out_uint16_le(s, SEC_TAG_PUBKEY); - out_uint16_le(s, 88); + out_uint16_le(s, 92); out_uint32_le(s, SEC_RSA_MAGIC); out_uint32_le(s, SEC_MODULUS_SIZE + SEC_PADDING_SIZE); // modulus_len out_uint32_le(s, SEC_MODULUS_SIZE * 8); // modulus_bits - out_uint8s(s, 4); // unknown + out_uint32_le(s, 0x3f); // unknown out_uint8p(s, my_exponent, SEC_EXPONENT_SIZE); out_uint8p(s, my_modulus, SEC_MODULUS_SIZE); out_uint8s(s, SEC_PADDING_SIZE);