| // 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; |
| |
| /** |
| * Once the basic server settings data blocks have been processed successfully, the client MUST send the MCS Attach User Request PDU to the server. |
| * |
| * @see http://msdn.microsoft.com/en-us/library/cc240682.aspx |
| */ |
| public class ServerMCSConnectResponse extends OneTimeSwitch { |
| |
| public ServerMCSConnectResponse(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 |
| * 03 00 00 64 02 F0 80 7F 66 5A 0A 01 00 02 01 00 30 1A 02 01 22 02 01 03 02 01 00 02 01 01 02 01 00 02 01 01 02 03 00 FF F8 02 01 02 04 36 00 05 00 14 7C 00 01 2A 14 76 0A 01 01 00 01 C0 00 4D 63 44 6E 20 01 0C 0C 00 04 00 08 00 01 00 00 00 03 0C 08 00 EB 03 00 00 02 0C 0C 00 00 00 00 00 00 00 00 00 |
| |
| Frame: Number = 12, Captured Frame Length = 157, 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: 100 |
| version: 3 (0x3) |
| Reserved: 0 (0x0) |
| PacketLength: 100 (0x64) |
| - X224: Data |
| Length: 2 (0x2) |
| Type: Data |
| EOT: 128 (0x80) |
| - T125: MCSConnect Response |
| - MCSConnectResponse: Result = rt-successful |
| - ConnectResponseHeader: |
| - AsnId: Application Constructed Tag (102) |
| - HighTag: |
| Class: (01......) Application (1) |
| Type: (..1.....) Constructed |
| TagNumber: (...11111) |
| TagValueEnd: 102 (0x66) |
| - AsnLen: Length = 90, LengthOfLength = 0 |
| Length: 90 bytes, LengthOfLength = 0 |
| - Result: rt-successful |
| - Value: 0 |
| - AsnIntegerHeader: |
| - AsnId: Enumerated type (Universal 10) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...01010) 10 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 0 (0x0) |
| - CalledConnectId: 0 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 0 (0x0) |
| - DomainParameters: Length = 26, LengthOfLength = 0 |
| - DomainParametersHeader: 0x1 |
| - AsnId: Sequence and SequenceOf types (Universal 16) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..1.....) Constructed |
| TagValue: (...10000) 16 |
| - AsnLen: Length = 26, LengthOfLength = 0 |
| Length: 26 bytes, LengthOfLength = 0 |
| - ChannelIds: 34 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 34 (0x22) |
| - UserIDs: 3 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 3 (0x3) |
| - TokenIds: 0 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 0 (0x0) |
| - NumPriorities: 1 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 1 (0x1) |
| - MinThroughput: 0 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 0 (0x0) |
| - Height: 1 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 1 (0x1) |
| - MCSPDUsize: 65528 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 3, LengthOfLength = 0 |
| Length: 3 bytes, LengthOfLength = 0 |
| AsnInt: 65528 (0xFFF8) |
| - protocolVersion: 2 |
| - AsnIntegerHeader: |
| - AsnId: Integer type (Universal 2) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00010) 2 |
| - AsnLen: Length = 1, LengthOfLength = 0 |
| Length: 1 bytes, LengthOfLength = 0 |
| AsnInt: 2 (0x2) |
| - UserData: Identifier = Generic Conference Contro (0.0.20.124.0.1) |
| - UserDataHeader: |
| - AsnId: OctetString type (Universal 4) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00100) 4 |
| - AsnLen: Length = 54, LengthOfLength = 0 |
| Length: 54 bytes, LengthOfLength = 0 |
| - AsnBerObjectIdentifier: Generic Conference Control (0.0.20.124.0.1) |
| - AsnObjectIdentifierHeader: |
| - AsnId: Reserved for use by the encoding rules (Universal 0) |
| - LowTag: |
| Class: (00......) Universal (0) |
| Type: (..0.....) Primitive |
| TagValue: (...00000) 0 |
| - AsnLen: Length = 5, LengthOfLength = 0 |
| Length: 5 bytes, LengthOfLength = 0 |
| First: 0 (0x0) |
| Final: 20 (0x14) |
| Final: 124 (0x7C) |
| Final: 0 (0x0) |
| Final: 1 (0x1) |
| - ConnectPDULength: 42 |
| Align: No Padding |
| Length: 42 |
| - ConnectGCCPDU: conferenceCreateResponse |
| ExtensionBit: 0 (0x0) |
| - ChoiceValue: conferenceCreateResponse |
| Value: (001.....) 0x1 |
| - conferenceCreateResponse: |
| ExtensionBit: 0 (0x0) |
| userDataPresent: 1 (0x1) |
| - nodeID: 0x79f3 |
| - UserID: 31219 |
| - Align: No Padding |
| Padding2: (00......) 0x0 |
| Value: 30218 (0x760A) |
| - tag: 1 (0x1) |
| - Length: 1 |
| Align: No Padding |
| Length: 1 |
| Value: 1 (0x1) |
| - result: success |
| ExtensionBit: 0 (0x0) |
| - RootIndex: 0 |
| Value: (000.....) 0x0 |
| - userData: |
| - Size: 1 |
| - Align: No Padding |
| Padding4: (0000....) 0x0 |
| Length: 1 |
| - UserData: 0x4d63446e |
| valuePresent: 1 (0x1) |
| - key: h221NonStandard |
| - ChoiceValue: h221NonStandard |
| Value: (1.......) 0x1 |
| - h221NonStandard: |
| - H221NonStandardIdentifier: length: 4 |
| - ConstrainedLength: 4 |
| Value: (00000000) 0x0 |
| - Align: No Padding |
| Padding6: (000000..) 0x0 |
| Value: Binary Large Object (4 Bytes) |
| - ServerMcsConnectResponsePdu: |
| - RDPGCCUserDataResponseLength: 32 |
| Align: No Padding |
| Length: 32 |
| - TsUd: SC_CORE |
| - TsUdHeader: Type = SC_CORE, Length = 12 |
| Type: SC_CORE |
| Length: 12 (0xC) |
| - TsUdScCore: |
| Version: RDP 5.0, 5.1, 5.2, 6.0, 6.1, and 7.0 |
| ClientRequestedProtocols: TLS 1.0 |
| - TsUd: SC_NET |
| - TsUdHeader: Type = SC_NET, Length = 8 |
| Type: SC_NET |
| Length: 8 (0x8) |
| - TsUdScNet: |
| MCSChannelID: 1003 (0x3EB) |
| ChannelCount: 0 (0x0) |
| Pad: 0 Bytes |
| - TsUd: SC_SECURITY |
| - TsUdHeader: Type = SC_SECURITY, Length = 12 |
| Type: SC_SECURITY |
| Length: 12 (0xC) |
| - TsUdSCSec1: |
| - EncryptionMethod: |
| Support40Bit: (...............................0) Not Support |
| Support128Bit: (..............................0.) Not Support 128-bit |
| Reserved1: (.............................0..) |
| Support56Bit: (............................0...) Not Support 56-bit |
| SupportFIPS: (...........................0....) Not Support FIPS Compliant |
| Reserved2: (000000000000000000000000000.....) |
| EncryptionLevel: TS_ENCRYPTION_NONE |
| */ |