The TS_FONT_MAP_PDU structure contains information that is sent to the server for legacy reasons.
file:///C:/ts_dev/TestSuites/MS-RDPBCGR/TestSuite/Src/TD/latest_XMLS_16may/RDPBCGR/ _rfc_ms-rdpbcgr2_1_1_22_1.xml
        /// <summary>
        /// Parse TS_FONT_MAP_PDU
        /// (parser index is updated according to parsed length)
        /// </summary>
        /// <param name="data">data to be parsed</param>
        /// <param name="currentIndex">current parser index</param>
        /// <returns>TS_FONT_MAP_PDU</returns>
        private TS_FONT_MAP_PDU ParseTsFontMapPdu(byte[] data, ref int currentIndex)
        {
            TS_FONT_MAP_PDU pdu = new TS_FONT_MAP_PDU();

            // TS_FONT_MAP_PDU: shareDataHeader
            pdu.shareDataHeader = ParseTsShareDataHeader(data, ref currentIndex);

            // TS_FONT_MAP_PDU: numberEntries
            pdu.numberEntries = ParseUInt16(data, ref currentIndex, false);

            // TS_FONT_MAP_PDU: totalNumEntries
            pdu.totalNumEntries = ParseUInt16(data, ref currentIndex, false);

            // TS_FONT_MAP_PDU: mapFlags
            pdu.mapFlags = ParseUInt16(data, ref currentIndex, false);

            // TS_FONT_MAP_PDU: entrySize
            pdu.entrySize = ParseUInt16(data, ref currentIndex, false);

            return pdu;
        }
Пример #2
0
        /// <summary>
        /// Encode controlPduData field.
        /// </summary>
        /// <param name="fontListPduData">The data to be encoded.</param>
        /// <returns>The encoded data.</returns>
        private static byte[] EncodeFontMapData(TS_FONT_MAP_PDU fontMapPduData)
        {
            List<byte> dataBuffer = new List<byte>();

            RdpbcgrEncoder.EncodeStructure(dataBuffer, fontMapPduData.shareDataHeader);
            RdpbcgrEncoder.EncodeStructure(dataBuffer, fontMapPduData.numberEntries);
            RdpbcgrEncoder.EncodeStructure(dataBuffer, fontMapPduData.totalNumEntries);
            RdpbcgrEncoder.EncodeStructure(dataBuffer, fontMapPduData.mapFlags);
            RdpbcgrEncoder.EncodeStructure(dataBuffer, fontMapPduData.entrySize);

            return dataBuffer.ToArray();
        }