Updated RDP state machine

* More detailed states
* Better transition checks
* No more recursive calling of state machine functions
This commit is contained in:
akallabeth
2022-10-21 10:31:14 +02:00
committed by Martin Fleisz
parent 06c2ab76e0
commit 33827cb920
8 changed files with 777 additions and 299 deletions

View File

@@ -80,17 +80,32 @@ extern "C"
CONNECTION_STATE_INITIAL,
CONNECTION_STATE_NEGO,
CONNECTION_STATE_NLA,
CONNECTION_STATE_MCS_CONNECT,
CONNECTION_STATE_MCS_CREATE_REQUEST,
CONNECTION_STATE_MCS_CREATE_RESPONSE,
CONNECTION_STATE_MCS_ERECT_DOMAIN,
CONNECTION_STATE_MCS_ATTACH_USER,
CONNECTION_STATE_MCS_CHANNEL_JOIN,
CONNECTION_STATE_MCS_ATTACH_USER_CONFIRM,
CONNECTION_STATE_MCS_CHANNEL_JOIN_REQUEST,
CONNECTION_STATE_MCS_CHANNEL_JOIN_RESPONSE,
CONNECTION_STATE_RDP_SECURITY_COMMENCEMENT,
CONNECTION_STATE_SECURE_SETTINGS_EXCHANGE,
CONNECTION_STATE_CONNECT_TIME_AUTO_DETECT,
CONNECTION_STATE_CONNECT_TIME_AUTO_DETECT_REQUEST,
CONNECTION_STATE_CONNECT_TIME_AUTO_DETECT_RESPONSE,
CONNECTION_STATE_LICENSING,
CONNECTION_STATE_MULTITRANSPORT_BOOTSTRAPPING,
CONNECTION_STATE_CAPABILITIES_EXCHANGE,
CONNECTION_STATE_FINALIZATION,
CONNECTION_STATE_MULTITRANSPORT_BOOTSTRAPPING_REQUEST,
CONNECTION_STATE_MULTITRANSPORT_BOOTSTRAPPING_RESPONSE,
CONNECTION_STATE_CAPABILITIES_EXCHANGE_DEMAND_ACTIVE,
CONNECTION_STATE_CAPABILITIES_EXCHANGE_MONITOR_LAYOUT,
CONNECTION_STATE_CAPABILITIES_EXCHANGE_CONFIRM_ACTIVE,
CONNECTION_STATE_FINALIZATION_SYNC,
CONNECTION_STATE_FINALIZATION_COOPERATE,
CONNECTION_STATE_FINALIZATION_REQUEST_CONTROL,
CONNECTION_STATE_FINALIZATION_PERSISTENT_KEY_LIST,
CONNECTION_STATE_FINALIZATION_FONT_LIST,
CONNECTION_STATE_FINALIZATION_CLIENT_SYNC,
CONNECTION_STATE_FINALIZATION_CLIENT_COOPERATE,
CONNECTION_STATE_FINALIZATION_CLIENT_GRANTED_CONTROL,
CONNECTION_STATE_FINALIZATION_CLIENT_FONT_MAP,
CONNECTION_STATE_ACTIVE
} CONNECTION_STATE;