2.2.1.1 Tunnel PDU Header (RDP_TUNNEL_HEADER)
The RDP_TUNNEL_HEADER structure is a common header included in every multitransport PDU specified in section 2.2.2.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Action |
Flags |
PayloadLength |
HeaderLength |
||||||||||||||||||||||||||||
SubHeaders (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
Action (4 bits): A 4-bit unsigned integer that indicates the type of PDU being transmitted.
-
Value
Meaning
RDPTUNNEL_ACTION_CREATEREQUEST
0x0
RDP_TUNNEL_CREATEREQUEST (section 2.2.2.1)
RDPTUNNEL_ACTION_CREATERESPONSE
0x1
RDP_TUNNEL_CREATERESPONSE (section 2.2.2.2)
RDPTUNNEL_ACTION_DATA
0x2
RDP_TUNNEL_DATA (section 2.2.2.3)
Flags (4 bits): A 4-bit unsigned integer that specifies tunnel flags. This field MUST be set to zero.
PayloadLength (2 bytes): A 16-bit unsigned integer that specifies the length, in bytes, of the payload following the header. This length MUST NOT include the length of the RDP_TUNNEL_HEADER structure.
HeaderLength (1 byte): An 8-bit unsigned integer that specifies the combined length, in bytes, of the Action, Flags, PayloadLength, HeaderLength, and SubHeaders fields. If the value in this field is larger than 4 bytes, then the SubHeaders field MUST be present.
SubHeaders (variable): An optional, variable-length array of RDP_TUNNEL_SUBHEADER structures (section 2.2.1.1.1). This field MUST be present if the value specified in the HeaderLength field is larger than 4 bytes.