4.1.11 Server License Error PDU - Valid Client
The following is an annotated dump of the License Error (Valid Client) PDU (section 2.2.1.12).
-
00000000 03 00 00 2a 02 f0 80 68 00 01 03 eb 70 1c 88 02 ...*...h....p... 00000010 02 03 8d 43 9a ab d5 2a 31 39 62 4d c1 ec 0d 99 ...C...*19bM.... 00000020 88 e6 da ab 2c 02 72 4d 49 90 ....,.rMI. 03 00 00 2a -> TPKT Header (length = 42 bytes) 02 f0 80 -> X.224 Data TPDU PER encoded (ALIGNED variant of BASIC-PER) SendDataIndication PDU: 68 00 01 03 eb 70 1c 0x68: 0 - --\ 1 - | 1 - | CHOICE: From DomainMCSPDU select sendDataIndication (26) of 0 - | type SendDataIndication 1 - | 0 - --/ 0 - padding 0 - padding 0x00: 0 - --\ 0 - | 0 - | 0 - | 0 - | 0 - | 0 - | 0 - | | SendDataIndication::initiator = 0x01 + 1001 = 1002 (0x03ea) 0x01: | 0 - | 0 - | 0 - | 0 - | 0 - | 0 - | 0 - | 1 - --/ 0x03: 0 - --\ 0 - | 0 - | 0 - | 0 - | 0 - | 1 - | 1 - | | SendDataIndication::channelId = 0x03eb = 1003 0xeb: | 1 - | 1 - | 1 - | 0 - | 1 - | 0 - | 1 - | 1 - --/ 0x70: 0 - --\ SendDataIndication::dataPriority = 0x01 = high 1 - --/ 1 - --\ SendDataIndication::segmentation = 0x03 = (0x02 | 0x01) = (begin | end) 1 - --/ 0 - padding 0 - padding 0 - padding 0 - padding 0x1c: 0 - --\ 0 - | 0 - | 1 - | SendDataIndication::userData length = 28 bytes 1 - | 1 - | 0 - | 0 - --/ 88 02 -> TS_SECURITY_HEADER::flags = 0x0288 0x0288 = 0x0008 | 0x0080 | 0x0200 = SEC_ENCRYPT | SEC_LICENSE_PKT | SEC_LICENSE_ENCRYPT_CS 02 03 -> TS_SECURITY_HEADER::flagsHi - ignored as flags field does not contain SEC_FLAGSHI_VALID (0x8000) 8d 43 9a ab d5 2a 31 39 -> TS_SECURITY_HEADER1::dataSignature 62 4d c1 ec 0d 99 88 e6 da ab 2c 02 72 4d 49 90 -> Encrypted Licensing Packet Decrypted Licensing Packet: 00000000 ff 03 10 00 07 00 00 00 02 00 00 00 04 00 00 00 ................ ff -> LICENSE_PREAMBLE::bMsgType = ERROR_ALERT 03 -> LICENSE_PREAMBLE::flags = 3 (RDP 5.0, 5.1, 5.2, 6.0, 6.1, 7.0, 7.1, 8.0, 8.1, 10.0, 10.1, 10.2, 10.3, 10.4, and 10.5) 10 00 -> LICENSE_PREAMBLE::wMsgSize = 0x10 = 16 bytes 07 00 00 00 -> LICENSE_ERROR_MESSAGE::dwErrorCode = STATUS_VALID_CLIENT 02 00 00 00 -> LICENSE_ERROR_MESSAGE::dwStateTransition = ST_NO_TRANSITION 04 00 -> LICENSE_ERROR_MESSAGE::bbErrorInfo::wBlobType = BB_ERROR_BLOB 00 00 -> LICENSE_ERROR_MESSAGE::bbErrorInfo::wBlobLen = 0