GUACAMOLE-1059: Move rdpsnd body size check to correct location.
This commit is contained in:
parent
ce28575b3a
commit
8560ff9718
@ -44,14 +44,6 @@ void guac_rdpsnd_process_receive(guac_rdp_common_svc* svc,
|
|||||||
Stream_Seek_UINT8(input_stream);
|
Stream_Seek_UINT8(input_stream);
|
||||||
Stream_Read_UINT16(input_stream, header.body_size);
|
Stream_Read_UINT16(input_stream, header.body_size);
|
||||||
|
|
||||||
if (Stream_GetRemainingLength(input_stream) < header.body_size) {
|
|
||||||
guac_client_log(svc->client, GUAC_LOG_DEBUG, "Not enough bytes in stream."
|
|
||||||
" Remaining: %d, Body size: %d",
|
|
||||||
Stream_GetRemainingLength(input_stream),
|
|
||||||
header.body_size);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If next PDU is SNDWAVE (due to receiving WaveInfo PDU previously),
|
* If next PDU is SNDWAVE (due to receiving WaveInfo PDU previously),
|
||||||
* ignore the header and parse as a Wave PDU.
|
* ignore the header and parse as a Wave PDU.
|
||||||
@ -60,6 +52,10 @@ void guac_rdpsnd_process_receive(guac_rdp_common_svc* svc,
|
|||||||
guac_rdpsnd_wave_handler(svc, input_stream, &header);
|
guac_rdpsnd_wave_handler(svc, input_stream, &header);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Check body size */
|
||||||
|
if (Stream_GetRemainingLength(input_stream) < header.body_size)
|
||||||
|
return;
|
||||||
|
|
||||||
/* Dispatch message to standard handlers */
|
/* Dispatch message to standard handlers */
|
||||||
switch (header.message_type) {
|
switch (header.message_type) {
|
||||||
|
Loading…
Reference in New Issue
Block a user