Пример #1
0
BOOL input_recv(rdpInput* input, wStream* s)
{
	UINT16 i, numberEvents;

	if (!input || !s)
		return FALSE;

	if (Stream_GetRemainingLength(s) < 4)
		return FALSE;

	Stream_Read_UINT16(s, numberEvents); /* numberEvents (2 bytes) */
	Stream_Seek(s, 2); /* pad2Octets (2 bytes) */

	/* Each input event uses 6 exactly bytes. */
	if (Stream_GetRemainingLength(s) < (size_t) (6 * numberEvents))
		return FALSE;

	for (i = 0; i < numberEvents; i++)
	{
		if (!input_recv_event(input, s))
			return FALSE;
	}

	return TRUE;
}
Пример #2
0
boolean input_recv(rdpInput* input, STREAM* s)
{
	uint16 i, numberEvents;

	if (stream_get_left(s) < 4)
		return false;

	stream_read_uint16(s, numberEvents); /* numberEvents (2 bytes) */
	stream_seek(s, 2); /* pad2Octets (2 bytes) */

	/* Each input event uses 6 exactly bytes. */
	if (stream_get_left(s) < 6 * numberEvents)
		return false;

	for (i = 0; i < numberEvents; i++)
	{
		if (!input_recv_event(input, s))
			return false;
	}

	return true;
}
Пример #3
0
BOOL input_recv(rdpInput* input, STREAM* s)
{
	UINT16 i, numberEvents;

	if (stream_get_left(s) < 4)
		return FALSE;

	stream_read_UINT16(s, numberEvents); /* numberEvents (2 bytes) */
	stream_seek(s, 2); /* pad2Octets (2 bytes) */

	/* Each input event uses 6 exactly bytes. */
	if (stream_get_left(s) < 6 * numberEvents)
		return FALSE;

	for (i = 0; i < numberEvents; i++)
	{
		if (!input_recv_event(input, s))
			return FALSE;
	}

	return TRUE;
}