[channels,rdpdr] fix #9610

windows RDP server randomly sends PAKID_CORE_SERVER_CAPABILITY to
reinitialize the rdpdr channel. Allow this message in all following
states.
This commit is contained in:
Armin Novak 2023-12-06 14:17:33 +01:00 committed by Martin Fleisz
parent 6f6c0248f0
commit 303c477c06

View File

@ -1666,8 +1666,11 @@ static BOOL rdpdr_check_channel_state(rdpdrPlugin* rdpdr, UINT16 packetid)
return rdpdr_state_check(rdpdr, packetid, RDPDR_CHANNEL_STATE_ANNOUNCE, 1,
RDPDR_CHANNEL_STATE_INITIAL);
case PAKID_CORE_SERVER_CAPABILITY:
return rdpdr_state_check(rdpdr, packetid, RDPDR_CHANNEL_STATE_SERVER_CAPS, 1,
RDPDR_CHANNEL_STATE_NAME_REQUEST);
return rdpdr_state_check(rdpdr, packetid, RDPDR_CHANNEL_STATE_SERVER_CAPS, 6,
RDPDR_CHANNEL_STATE_NAME_REQUEST,
RDPDR_CHANNEL_STATE_SERVER_CAPS, RDPDR_CHANNEL_STATE_READY,
RDPDR_CHANNEL_STATE_CLIENT_CAPS, PAKID_CORE_CLIENTID_CONFIRM,
PAKID_CORE_USER_LOGGEDON);
case PAKID_CORE_CLIENTID_CONFIRM:
return rdpdr_state_check(rdpdr, packetid, RDPDR_CHANNEL_STATE_CLIENTID_CONFIRM, 3,
RDPDR_CHANNEL_STATE_CLIENT_CAPS, RDPDR_CHANNEL_STATE_READY,