X-Git-Url: https://git.sesse.net/?p=rdpsrv;a=blobdiff_plain;f=mcs.c;h=24a2e767166ccd35b0630c376562ea7ac99cdad6;hp=a9fb3d261bd2955635e1f5bf3bf783fc57217fe7;hb=d3b814ac537b22ffabdd350332e819ad002b8924;hpb=48580be79f1c97788f7f3a92b9791056b9773058 diff --git a/mcs.c b/mcs.c index a9fb3d2..24a2e76 100644 --- a/mcs.c +++ b/mcs.c @@ -116,36 +116,6 @@ mcs_parse_domain_params(STREAM s) return s_check(s); } -/* Send an MCS_CONNECT_INITIAL message (ASN.1 BER) */ -static void -mcs_send_connect_initial(STREAM mcs_data) -{ - int datalen = mcs_data->end - mcs_data->data; - int length = 9 + 3 * 34 + 4 + datalen; - STREAM s; - - s = iso_init(length + 5); - - ber_out_header(s, MCS_CONNECT_INITIAL, length); - ber_out_header(s, BER_TAG_OCTET_STRING, 1); /* calling domain */ - out_uint8(s, 1); - ber_out_header(s, BER_TAG_OCTET_STRING, 1); /* called domain */ - out_uint8(s, 1); - - ber_out_header(s, BER_TAG_BOOLEAN, 1); - out_uint8(s, 0xff); /* upward flag */ - - mcs_out_domain_params(s, 34, 2, 0, 0xffff); /* target params */ - mcs_out_domain_params(s, 1, 1, 1, 0x420); /* min params */ - mcs_out_domain_params(s, 0xffff, 0xfc17, 0xffff, 0xffff); /* max params */ - - ber_out_header(s, BER_TAG_OCTET_STRING, datalen); - out_uint8p(s, mcs_data->data, datalen); - - s_mark_end(s); - iso_send(s); -} - /* Expect a MCS_CONNECT_RESPONSE message (ASN.1 BER) */ BOOL mcs_recv_connect_initial() @@ -181,6 +151,22 @@ mcs_recv_connect_initial() return s_check_end(s); } +void +mcs_send_connect_response() +{ + STREAM s; + + s = iso_init(2048); // FIXME + + ber_out_header(s, MCS_CONNECT_RESPONSE, 2048); + ber_out_header(s, BER_TAG_RESULT, 1); + out_uint8(s, 1); // success + + s_mark_end(s); + iso_send(s); + +} + /* Send an EDrq message (ASN.1 PER) */ static void mcs_send_edrq(void)