blob: 22e809442dccf712fd7ed22309b53230d07b33e3 [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package rdpclient.rdp;
import streamer.ByteBuffer;
import streamer.Link;
import streamer.OneTimeSwitch;
public class ServerLicenseErrorPDUValidClient extends OneTimeSwitch {
public ServerLicenseErrorPDUValidClient(String id) {
super(id);
}
@Override
protected void handleOneTimeData(ByteBuffer buf, Link link) {
if (buf == null)
return;
if (verbose)
System.out.println("[" + this + "] INFO: Data received: " + buf + ".");
// Ignore packet
buf.unref();
switchOff();
}
/* @formatter:off */
// * Server Error alert
//
//03 00 00 22 02 F0 80 68 00 01 03 EB 70 14 80 00 F1 BC FF 03 10 00 07 00 00 00 02 00 00 00 04 00 00 00
//
//
// Frame: Number = 30, Captured Frame Length = 91, MediaType = DecryptedPayloadHeader
//+ DecryptedPayloadHeader: FrameCount = 1, ErrorStatus = SUCCESS
// TLSSSLData: Transport Layer Security (TLS) Payload Data
//+ TLS: TLS Rec Layer-1 SSL Application Data
// ISOTS: TPKTCount = 1
//- TPKT: version: 3, Length: 34
// version: 3 (0x3)
// Reserved: 0 (0x0)
// PacketLength: 34 (0x22)
//- X224: Data
// Length: 2 (0x2)
// Type: Data
// EOT: 128 (0x80)
//- T125: Data Packet
// - MCSHeader: Type=Send Data Indication, UserID=1002, ChannelID=1003
// - Type: Send Data Indication
// - RootIndex: 26
// Value: (011010..) 0x1a
// - UserID: 0x3ea
// - UserID: 0x3ea
// - ChannelId: 1002
// - Align: No Padding
// Padding2: (00......) 0x0
// Value: 1 (0x1)
// - Channel: 0x3eb
// - ChannelId: 1003
// Align: No Padding
// Value: 1003 (0x3EB)
// - DataPriority: high
// - DataPriority: high
// - RootIndex: 1
// Value: (01......) 0x1
// - Segmentation: Begin End
// Begin: (1.......) Begin
// End: (.1......) End
// - Length: 20
// - Align: No Padding
// Padding4: (0000....) 0x0
// Length: 20
// RDP: RDPBCGR
//- RDPBCGR: RDPELE
// - SecurityHeader: License Packet
// - Flags: 128 (0x80)
// SecurityExchange: (...............0) Not Security Exchange PDU
// Reserved1: (.............00.) Reserved
// Encrypted: (............0...) Not Encrypted packet
// ResetSeqNumber: (...........0....) MUST be ignored.
// IgnoreSeqNumber: (..........0.....) MUST be ignored.
// InfoPacket: (.........0......) Not Client Info PDU
// LicensePacket: (........1.......) License Packet
// Reserved2: (.......0........) Reserved
// LicensePacketEncryption: (......0.........) Not License Packet Encryption
// ServerRedirectionPacket: (.....0..........) Not Standard Security Server Redirection PDU
// ImprovedChecksumForMACG: (....0...........) Not Improved Checksum for MAC Generation
// Reserved3: (.000............) Reserved
// FlagsHiValid: (0...............) FlagsHi should be ignored
// FlagsHi: Should be ignored
//- RDPELE: GM_ERROR_ALERT
// - TsPreambleHeader: Type = GM_ERROR_ALERT
// MsgType: GM_ERROR_ALERT
// - Flags: 3 (0x3)
// LicenseProtocolVersionMask: (....0011) RDP 5.0, 5.1, 5.2, 6.0, 6.1, and 7.0
// Unused: (.000....)
// ExtendedErrorMSGsupported: (0.......) that extended error information using the License Error Message is NOT supported.
// MsgSize: 16 (0x10)
// - TsLicenseErrorMessage: ErrorCode = STATUS_VALID_CLIENT
// ErrorCode: STATUS_VALID_CLIENT
// StateTransition: ST_NO_TRANSITION
// - LiceseBinaryBlob: Type = Not Available
// RandomData: This value should be ignored
// BlobLen: 0 (0x0)
//
}