3.2.5.7 Processing an RDPINPUT_PEN_EVENT_PDU Message

The structure and fields of the RDPINPUT_PEN_EVENT_PDU message are specified in section 2.2.3.7.

The header field MUST be processed as specified in section 3.1.5.1. If the message is valid, the server MUST iterate over each RDPINPUT_PEN_FRAME (section 2.2.3.7.1) structure encapsulated in the RDPINPUT_PEN_EVENT_PDU message, decode each RDPINPUT_PEN_CONTACT (section 2.2.3.7.1.1) structure in the frame, and then inject the frame contacts into the user session.

If any of the contacts does not conform to the finite state machine described in section 3.1.1.1, the pen transaction SHOULD be canceled in the session, and all subsequent frames associated with the transaction SHOULD be ignored until a new pen transaction is initiated at the client.