private static byte[] EncodeConfirmData(TS_CONFIRM_ACTIVE_PDU confirmActivePduData)
{
List<byte> confirmBuffer = new List<byte>();
if (confirmActivePduData != null)
{
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.shareControlHeader);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.shareId);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, (ushort)confirmActivePduData.originatorId);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.lengthSourceDescriptor);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.lengthCombinedCapabilities);
RdpbcgrEncoder.EncodeBytes(confirmBuffer, confirmActivePduData.sourceDescriptor);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.numberCapabilities);
RdpbcgrEncoder.EncodeStructure(confirmBuffer, confirmActivePduData.pad2Octets);
for (int i = 0; i < confirmActivePduData.numberCapabilities; ++i)
{
ITsCapsSet capability = confirmActivePduData.capabilitySets[i];
RdpbcgrEncoder.EncodeBytes(confirmBuffer, capability.ToBytes());
}
}
return confirmBuffer.ToArray();
}