2.2.7.1.1 General Capability Set (TS_GENERAL_CAPABILITYSET)
The TS_GENERAL_CAPABILITYSET structure is used to advertise general characteristics and is based on the capability set specified in [T128] section 8.2.3. This capability is sent by both client and server.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
capabilitySetType |
lengthCapability |
||||||||||||||||||||||||||||||
osMajorType |
osMinorType |
||||||||||||||||||||||||||||||
protocolVersion |
pad2octetsA |
||||||||||||||||||||||||||||||
compressionTypes |
extraFlags |
||||||||||||||||||||||||||||||
updateCapabilityFlag |
remoteUnshareFlag |
||||||||||||||||||||||||||||||
compressionLevel |
refreshRectSupport |
suppressOutputSupport |
capabilitySetType (2 bytes): A 16-bit, unsigned integer. The type of the capability set. This field MUST be set to CAPSTYPE_GENERAL (1).
lengthCapability (2 bytes): A 16-bit, unsigned integer. The length in bytes of the capability data, including the size of the capabilitySetType and lengthCapability fields.
osMajorType (2 bytes): A 16-bit, unsigned integer. The type of platform.
-
Value
Meaning
OSMAJORTYPE_UNSPECIFIED
0x0000
Unspecified platform
OSMAJORTYPE_WINDOWS
0x0001
Windows platform
OSMAJORTYPE_OS2
0x0002
OS/2 platform
OSMAJORTYPE_MACINTOSH
0x0003
Macintosh platform
OSMAJORTYPE_UNIX
0x0004
UNIX platform
OSMAJORTYPE_IOS
0x0005
iOS platform
OSMAJORTYPE_OSX
0x0006
OS X platform
OSMAJORTYPE_ANDROID
0x0007
Android platform
OSMAJORTYPE_CHROME_OS
0x0008
Chrome OS platform
osMinorType (2 bytes): A 16-bit, unsigned integer. The version of the platform specified in the osMajorType field.
-
Value
Meaning
OSMINORTYPE_UNSPECIFIED
0x0000
Unspecified version
OSMINORTYPE_WINDOWS_31X
0x0001
Windows 3.1x
OSMINORTYPE_WINDOWS_95
0x0002
Windows 95
OSMINORTYPE_WINDOWS_NT
0x0003
Windows NT
OSMINORTYPE_OS2_V21
0x0004
OS/2 2.1
OSMINORTYPE_POWER_PC
0x0005
PowerPC
OSMINORTYPE_MACINTOSH
0x0006
Macintosh
OSMINORTYPE_NATIVE_XSERVER
0x0007
Native X Server
OSMINORTYPE_PSEUDO_XSERVER
0x0008
Pseudo X Server
OSMINORTYPE_WINDOWS RT
0x0009
Windows RT
protocolVersion (2 bytes): A 16-bit, unsigned integer. The protocol version. This field MUST be set to TS_CAPS_PROTOCOLVERSION (0x0200).
pad2octetsA (2 bytes): A 16-bit, unsigned integer. Padding. Values in this field MUST be ignored.
compressionTypes (2 bytes): A 16-bit, unsigned integer. General compression types. This field MUST be set to zero.
extraFlags (2 bytes): A 16-bit, unsigned integer. General capability information.
-
All RDP versions, except for RDP 4.0, support the following flags.
-
Flag
Meaning
FASTPATH_OUTPUT_SUPPORTED
0x0001
Advertiser supports fast-path output.<24>
NO_BITMAP_COMPRESSION_HDR
0x0400
Advertiser supports excluding the 8-byte Compressed Data Header (section 2.2.9.1.1.3.1.2.3) from the Bitmap Data (section 2.2.9.1.1.3.1.2.2) structure or the Cache Bitmap (Revision 2) Secondary Drawing Order ([MS-RDPEGDI] section 2.2.2.2.1.2.3).
-
All RDP versions, except for RDP 4.0 and 5.0, support the following additional flags.
-
Flag
Meaning
LONG_CREDENTIALS_SUPPORTED
0x0004
Advertiser supports long-length credentials for the user name, password, or domain name in the Save Session Info PDU (section 2.2.10.1).<25>
-
All RDP versions, except for RDP 4.0, 5.0 and 5.1, support the following additional flags.
-
Flag
Meaning
AUTORECONNECT_SUPPORTED
0x0008
Advertiser supports auto-reconnection (section 5.5).
ENC_SALTED_CHECKSUM
0x0010
Advertiser supports salted MAC generation (section 5.3.6.1.1).
updateCapabilityFlag (2 bytes): A 16-bit, unsigned integer. Support for update capability. This field MUST be set to zero.
remoteUnshareFlag (2 bytes): A 16-bit, unsigned integer. Support for remote unsharing. This field MUST be set to zero.
compressionLevel (2 bytes): A 16-bit, unsigned integer. General compression level. This field MUST be set to zero.
refreshRectSupport (1 byte): An 8-bit, unsigned integer. Server-only flag that indicates whether the Refresh Rect PDU (section 2.2.11.2) is supported.
-
Value
Meaning
FALSE
0x00
Server does not support Refresh Rect PDU.
TRUE
0x01
Server supports Refresh Rect PDU.
suppressOutputSupport (1 byte): An 8-bit, unsigned integer. Server-only flag that indicates whether the Suppress Output PDU (section 2.2.11.3) is supported.
-
Value
Meaning
FALSE
0x00
Server does not support Suppress Output PDU.
TRUE
0x01
Server supports Suppress Output PDU.