298 |
time_t t = time(NULL); |
time_t t = time(NULL); |
299 |
time_t tzone; |
time_t tzone; |
300 |
|
|
|
#if 0 |
|
|
/* enable rdp compression */ |
|
|
/* some problems still exist with rdp5 */ |
|
|
flags |= RDP_COMPRESSION; |
|
|
#endif |
|
|
|
|
301 |
if (!g_use_rdp5 || 1 == g_server_rdp_version) |
if (!g_use_rdp5 || 1 == g_server_rdp_version) |
302 |
{ |
{ |
303 |
DEBUG_RDP5(("Sending RDP4-style Logon packet\n")); |
DEBUG_RDP5(("Sending RDP4-style Logon packet\n")); |
654 |
static void |
static void |
655 |
rdp_out_bmpcache2_caps(STREAM s) |
rdp_out_bmpcache2_caps(STREAM s) |
656 |
{ |
{ |
|
uint16 cellsize; |
|
|
|
|
657 |
out_uint16_le(s, RDP_CAPSET_BMPCACHE2); |
out_uint16_le(s, RDP_CAPSET_BMPCACHE2); |
658 |
out_uint16_le(s, RDP_CAPLEN_BMPCACHE2); |
out_uint16_le(s, RDP_CAPLEN_BMPCACHE2); |
659 |
|
|
660 |
out_uint16_le(s, g_bitmap_cache_persist_enable ? 2 : 0); /* version */ |
out_uint16_le(s, g_bitmap_cache_persist_enable ? 2 : 0); /* version */ |
661 |
|
|
662 |
/* Cellsize: |
out_uint16_be(s, 3); /* number of caches in this set */ |
|
01 = 16x16, 02 = 32x32, 03 = 64x64 |
|
|
log2(cell size) - 3 |
|
|
*/ |
|
|
|
|
|
cellsize = 0x03; |
|
|
|
|
|
if (g_rdp_compression) |
|
|
{ |
|
|
switch (g_server_bpp) |
|
|
{ |
|
|
case 24: |
|
|
case 16: |
|
|
case 15: |
|
|
cellsize = 0x02; |
|
|
break; |
|
|
} |
|
|
} |
|
|
|
|
|
out_uint16_le(s, (0x0000 | (cellsize << 8))); /* flags? number of caches? */ |
|
663 |
|
|
664 |
|
/* max cell size for cache 0 is 16x16, 1 = 32x32, 2 = 64x64, etc */ |
665 |
out_uint32_le(s, BMPCACHE2_C0_CELLS); |
out_uint32_le(s, BMPCACHE2_C0_CELLS); |
666 |
out_uint32_le(s, BMPCACHE2_C1_CELLS); |
out_uint32_le(s, BMPCACHE2_C1_CELLS); |
667 |
if (pstcache_init(2)) |
if (pstcache_init(2)) |