3.3.5 Processing Events and Sequencing Rules

The client processes all messages by parsing headers that identify the message type. All messages received by the client through the transport are connection control messages. The type of connection control message is specified by the first four bytes of the message. If the server specifies a message type that is not one of the messages in section 2.2.5, the server has issued an invalid message and the client MUST close the connection. For all messages that MUST contain a payload composed of other messages, the server MUST specify valid message types. That is, if the client cannot correctly identify one of the enclosed messages, the server has issued an invalid message packet and the client MUST close the connection. Connection messages received over a dynamic virtual channel as specified by [MS-RDPEDC] belong to the same connection.