// Copyright 2018 The GoPacket Authors. All rights reserved. // // Use of this source code is governed by a BSD-style license // that can be found in the LICENSE file in the root of the source // tree. package layers import ( "errors" "github.com/google/gopacket" ) // TLSAppDataRecord contains all the information that each AppData Record types should have type TLSAppDataRecord struct { TLSRecordHeader Payload []byte } // DecodeFromBytes decodes the slice into the TLS struct. func (t *TLSAppDataRecord) decodeFromBytes(h TLSRecordHeader, data []byte, df gopacket.DecodeFeedback) error { // TLS Record Header t.ContentType = h.ContentType t.Version = h.Version t.Length = h.Length if len(data) != int(t.Length) { return errors.New("TLS Application Data length mismatch") } t.Payload = data return nil }