示例#1
0
 internal TlsRecord(byte[] data, TlsRecordType record_type,
                    int major_version, int minor_version, byte[] record_data)
 {
     Type    = record_type;
     Version = new Version(major_version, minor_version);
     Data    = record_data;
 }
示例#2
0
 internal static bool TryParse(BinaryReader reader, out TlsRecord record)
 {
     record = null;
     try
     {
         TlsRecordType type          = (TlsRecordType)reader.ReadByte();
         int           major_version = reader.ReadByte();
         int           minor_version = reader.ReadByte();
         int           length        = reader.ReadByte() << 8 | reader.ReadByte();
         byte[]        data          = reader.ReadAllBytes(length);
         record = new TlsRecord(data, type, major_version, minor_version, data);
         return(true);
     }
     catch (EndOfStreamException)
     {
         return(false);
     }
 }
示例#3
0
 public abstract void Encrypt(IBufferWriter <byte> pipeWriter, ReadOnlySequence <byte> plainText, TlsRecordType recordType);
示例#4
0
 public abstract void Decrypt(IBufferWriter <byte> pipeWriter, ReadOnlySequence <byte> cipherText, TlsRecordType recordType, TlsProtocolVersion tlsVersion);