From 281ceead2f551491550f2ea58cb7bf9fd64701fe Mon Sep 17 00:00:00 2001 From: Vic Lee Date: Sun, 21 Aug 2011 10:57:38 +0800 Subject: [PATCH] server: complete server capabilities. --- libfreerdp-core/capabilities.c | 8 ++++---- libfreerdp-core/settings.c | 6 ++++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/libfreerdp-core/capabilities.c b/libfreerdp-core/capabilities.c index c8748a448..d05fa47b8 100644 --- a/libfreerdp-core/capabilities.c +++ b/libfreerdp-core/capabilities.c @@ -203,7 +203,7 @@ void rdp_write_bitmap_capability_set(STREAM* s, rdpSettings* settings) header = rdp_capability_set_start(s); - drawingFlags = 1; + drawingFlags = 0; if (settings->rdp_version > 5) preferredBitsPerPixel = settings->color_depth; @@ -520,7 +520,7 @@ void rdp_write_share_capability_set(STREAM* s, rdpSettings* settings) header = rdp_capability_set_start(s); - stream_write_uint16(s, 0); /* nodeId (2 bytes) */ + stream_write_uint16(s, settings->server_mode ? 0x03EA : 0); /* nodeId (2 bytes) */ stream_write_uint16(s, 0); /* pad2Octets (2 bytes) */ rdp_capability_set_finish(s, header, CAPSET_TYPE_SHARE); @@ -960,8 +960,8 @@ void rdp_write_virtual_channel_capability_set(STREAM* s, rdpSettings* settings) header = rdp_capability_set_start(s); - stream_write_uint32(s, VCCAPS_COMPR_SC); /* flags (4 bytes) */ - stream_write_uint32(s, 0); /* VCChunkSize (4 bytes) */ + stream_write_uint32(s, settings->server_mode ? VCCAPS_COMPR_CS_8K : VCCAPS_COMPR_SC); /* flags (4 bytes) */ + stream_write_uint32(s, settings->vc_chunk_size); /* VCChunkSize (4 bytes) */ rdp_capability_set_finish(s, header, CAPSET_TYPE_VIRTUAL_CHANNEL); } diff --git a/libfreerdp-core/settings.c b/libfreerdp-core/settings.c index 4cb9256fd..dfa0a1352 100644 --- a/libfreerdp-core/settings.c +++ b/libfreerdp-core/settings.c @@ -67,7 +67,6 @@ rdpSettings* settings_new() settings->authentication = True; - /* settings->order_support[NEG_DSTBLT_INDEX] = True; settings->order_support[NEG_PATBLT_INDEX] = True; settings->order_support[NEG_SCRBLT_INDEX] = True; @@ -90,7 +89,6 @@ rdpSettings* settings_new() settings->order_support[NEG_POLYGON_CB_INDEX] = True; settings->order_support[NEG_ELLIPSE_SC_INDEX] = True; settings->order_support[NEG_ELLIPSE_CB_INDEX] = True; - */ settings->color_pointer = True; settings->large_pointer = True; @@ -115,6 +113,10 @@ rdpSettings* settings_new() settings->num_icon_caches = 3; settings->num_icon_cache_entries = 12; + settings->vc_chunk_size = CHANNEL_CHUNK_LENGTH; + + settings->multifrag_max_request_size = 0x200000; + settings->fastpath_input = True; settings->fastpath_output = True;