Blame SOURCES/Fixed-missing-length-check-in-video-channel.patch

087af1
From bf28ea249de57acc6dfadbd778afef2093c1c283 Mon Sep 17 00:00:00 2001
087af1
From: akallabeth <akallabeth@posteo.net>
087af1
Date: Thu, 6 Oct 2022 09:15:40 +0200
087af1
Subject: [PATCH] Fixed missing length check in video channel
087af1
087af1
Data received in video redirection channel was not checked for
087af1
proper length.
087af1
087af1
(cherry picked from commit eeffd1050e9284d1464b58e049b2b4d88726632b)
087af1
---
087af1
 channels/video/client/video_main.c | 2 ++
087af1
 1 file changed, 2 insertions(+)
087af1
087af1
diff --git a/channels/video/client/video_main.c b/channels/video/client/video_main.c
087af1
index a21e7cdf2..a8031fc86 100644
087af1
--- a/channels/video/client/video_main.c
087af1
+++ b/channels/video/client/video_main.c
087af1
@@ -930,6 +930,8 @@ static UINT video_data_on_data_received(IWTSVirtualChannelCallback* pChannelCall
087af1
 	Stream_Read_UINT16(s, data.PacketsInSample);
087af1
 	Stream_Read_UINT32(s, data.SampleNumber);
087af1
 	Stream_Read_UINT32(s, data.cbSample);
087af1
+	if (!Stream_CheckAndLogRequiredLength(TAG, s, data.cbSample))
087af1
+		return ERROR_INVALID_DATA;
087af1
 	data.pSample = Stream_Pointer(s);
087af1
 
087af1
 	/*
087af1
-- 
087af1
2.37.1
087af1