1 |
/* -*- c-basic-offset: 8 -*- |
/* -*- c-basic-offset: 8 -*- |
2 |
rdesktop: A Remote Desktop Protocol client. |
rdesktop: A Remote Desktop Protocol client. |
3 |
Protocol services - RDP layer |
Protocol services - RDP layer |
4 |
Copyright (C) Matthew Chapman 1999-2002 |
Copyright (C) Matthew Chapman 1999-2005 |
5 |
|
|
6 |
This program is free software; you can redistribute it and/or modify |
This program is free software; you can redistribute it and/or modify |
7 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
58 |
rdp_s = sec_recv(&rdpver); |
rdp_s = sec_recv(&rdpver); |
59 |
if (rdp_s == NULL) |
if (rdp_s == NULL) |
60 |
return NULL; |
return NULL; |
61 |
if (rdpver != 3) |
if (rdpver == 0xff) |
62 |
|
{ |
63 |
|
g_next_packet = rdp_s->end; |
64 |
|
*type = 0; |
65 |
|
return rdp_s; |
66 |
|
} |
67 |
|
else if (rdpver != 3) |
68 |
{ |
{ |
69 |
/* rdp5_process should move g_next_packet ok */ |
/* rdp5_process should move g_next_packet ok */ |
70 |
rdp5_process(rdp_s); |
rdp5_process(rdp_s); |
1091 |
|
|
1092 |
if (ctype & RDP_MPPC_COMPRESSED) |
if (ctype & RDP_MPPC_COMPRESSED) |
1093 |
{ |
{ |
1094 |
|
if (len > RDP_MPPC_DICT_SIZE) |
1095 |
|
error("error decompressed packet size exceeds max\n"); |
1096 |
if (mppc_expand(s->p, clen, ctype, &roff, &rlen) == -1) |
if (mppc_expand(s->p, clen, ctype, &roff, &rlen) == -1) |
1097 |
error("error while decompressing packet\n"); |
error("error while decompressing packet\n"); |
1098 |
|
|