From 0e6a44faf3e13477e59131d299f4f9250625a6dc Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Wed, 19 Jul 2017 09:41:58 +0200 Subject: [PATCH] Mask out ignored bits from UnicodeFlag. --- channels/rdpdr/server/rdpdr_main.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/channels/rdpdr/server/rdpdr_main.c b/channels/rdpdr/server/rdpdr_main.c index 0e4abff86..cedd4433e 100644 --- a/channels/rdpdr/server/rdpdr_main.c +++ b/channels/rdpdr/server/rdpdr_main.c @@ -150,11 +150,9 @@ static UINT rdpdr_server_receive_client_name_request(RdpdrServerContext* Stream_Seek_UINT32(s); /* CodePage (4 bytes), MUST be set to zero */ Stream_Read_UINT32(s, ComputerNameLen); /* ComputerNameLen (4 bytes) */ - if (UnicodeFlag > 1) /* must be 0x00000000 or 0x00000001 */ - { - WLog_ERR(TAG, "invalid UnicodeFlag value: 0x%08"PRIX32"", UnicodeFlag); - return ERROR_INVALID_DATA; - } + /* UnicodeFlag is either 0 or 1, the other 31 bits must be ignored. + */ + UnicodeFlag = UnicodeFlag & 0x00000001; /** * Caution: ComputerNameLen is given *bytes*,