The Auto-Reconnect Status PDU contains error information after a failed auto-reconnection attempt has taken place.
file:///C:/ts_dev/TestSuites/MS-RDPBCGR/TestSuite/Src/TD/latest_XMLS_16may/RDPBCGR/ _rfc_ms-rdpbcgr2_1_4_1.xml
Inheritance: RdpbcgrServerPdu
        /// <summary>
        /// Decode Auto-Reconnect Status PDU
        /// </summary>
        /// <param name="data">data to be parsed</param>
        /// <param name="decryptedUserData">decrypted user data</param>
        /// <param name="type">security header type</param>
        /// <returns>decoded Auto-Reconnect Status PDU</returns>
        public StackPacket DecodeAutoReconnectStatusPDU(
            byte[] data,
            byte[] decryptedUserData,
            SecurityHeaderType type)
        {
            Server_Auto_Reconnect_Status_Pdu pdu = new Server_Auto_Reconnect_Status_Pdu();

            // data index
            int dataIndex = 0;

            // AutoReconnectStatusPDU: commonHeader
            pdu.commonHeader = ParseMcsCommonHeader(data, ref dataIndex, type);

            // user data index
            int userDataIndex = 0;

            // AutoReconnectStatusPDU: arcStatusPduData
            pdu.arcStatusPduData = ParseTsAutoReconnectStatusPdu(decryptedUserData, ref userDataIndex);

            // Check if data length exceeded expectation
            VerifyDataLength(decryptedUserData.Length, userDataIndex, ConstValue.ERROR_MESSAGE_DATA_LENGTH_EXCEEDED);
            return pdu;
        }
示例#2
0
        public override StackPacket Clone()
        {
            Server_Auto_Reconnect_Status_Pdu cloneAutoReconnectPdu = new Server_Auto_Reconnect_Status_Pdu();
            cloneAutoReconnectPdu.commonHeader = commonHeader.Clone();
            cloneAutoReconnectPdu.arcStatusPduData.shareDataHeader = arcStatusPduData.shareDataHeader;
            cloneAutoReconnectPdu.arcStatusPduData.arcStatus = arcStatusPduData.arcStatus;

            return cloneAutoReconnectPdu;
        }