兼容tls1.2握手

增加稳定性
This commit is contained in:
wenyifan
2022-09-01 17:23:45 +08:00
parent 7213e64b89
commit 0b338de152
5 changed files with 50 additions and 120 deletions

View File

@ -22,10 +22,11 @@ const (
)
type TLSHeader struct {
Type uint8
Version uint16
Length int
HandshakeType uint8
Type uint8
Version uint16
Length int
HandshakeType uint8
ChangeCipherSpecNext uint8
}
func (t *TLSHeader) toString() string {
@ -47,6 +48,14 @@ func (t *TLSHeader) toString() string {
break
case ChangeCipherSpec:
desc += "Type=ChangeCipherSpec;"
switch t.ChangeCipherSpecNext {
case Handshake:
desc += "ChangeCipherSpecNext=Handshake;"
break
case AppData:
desc += "ChangeCipherSpecNext=AppData;"
break
}
break
case EncryptedAlert:
desc += "Type=EncryptedAlert;"
@ -83,5 +92,8 @@ func ParseAndVerifyTLSHeader(data []byte) *TLSHeader {
return nil
}
}
if header.Type == ChangeCipherSpec {
header.ChangeCipherSpecNext = data[6]
}
return header
}