2.2.2.2.3 HandshakeEx PDU (TS_RAIL_ORDER_HANDSHAKE_EX)
The HandshakeEx PDU (instead of the Handshake PDU) is sent from the server to the client if both the client and the server specified support for it by including the TS_RAIL_LEVEL_HANDSHAKE_EX_SUPPORTED flag in the Remote Programs Capability Set (section 2.2.1.1.1). This PDU is also sent by the server in an Enhanced RemoteApp session to signal that it is ready to begin Enhanced RemoteApp mode. The server sends the HandshakeEx PDU, and the client responds with the Handshake PDU (section 2.2.2.2.1).
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
header |
|||||||||||||||||||||||||||||||
buildNumber |
|||||||||||||||||||||||||||||||
railHandshakeFlags |
header (4 bytes): A TS_RAIL_PDU_HEADER (section 2.2.2.1) structure. The orderType field of the header MUST be set to 0x0013 (TS_RAIL_ORDER_HANDSHAKE_EX).
buildNumber (4 bytes): An unsigned 32-bit integer. The build or version of the sending party.
railHandshakeFlags (4 bytes): An unsigned 32-bit integer. Flags for setting up RAIL session parameters.
-
Flag
Meaning
TS_RAIL_ORDER_HANDSHAKEEX_FLAGS_HIDEF
0x00000001
Indicates that Enhanced RemoteApp (section 1.3.3) is supported. This implies support for the Remote Desktop Protocol: Graphics Pipeline Extension ([MS-RDPEGFX] section 1.5), specifically the RDPGFX_MAP_SURFACE_TO_WINDOW_PDU ([MS-RDPEGFX] section 2.2.2.20) message.
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_
EXTENDED_SPI_SUPPORTED
0x00000002
Indicates that additional system parameter flags are supported in the Client System Parameters Update PDU (section 2.2.2.4.1).
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_SNAP_ARRANGE_SUPPORTED
0x00000004
Indicates that the server supports the Client Window Snap PDU (section 2.2.2.7.5).
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_TEXT_SCALE_SUPPORTED
0x00000008
Indicates that the server supports the Text Scale Information PDU (section 2.2.2.15.1).
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_CARET_BLINK_SUPPORTED
0x00000010
Indicates that the server supports the Caret Blink Information PDU (section 2.2.2.15.2).
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_EXTENDED_SPI_2_SUPPORTED
0x00000020
Indicates that more additional system parameter flags are supported in the Client System Parameters Update PDU (section 2.2.2.4.1).
TS_RAIL_ORDER_HANDSHAKE_EX_FLAGS_EXTENDED_SPI_3_SUPPORTED
0x00000040
Indicates that more additional system parameter flags are supported in the Client System Parameters Update PDU (section 2.2.2.4.1).