forked from quic-go/quic-go
implement parsing of sample CHLO crypto stream
This commit is contained in:
36
crypto_stream_test.go
Normal file
36
crypto_stream_test.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package quic
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
. "github.com/onsi/ginkgo"
|
||||
. "github.com/onsi/gomega"
|
||||
)
|
||||
|
||||
var _ = Describe("CryptoStream", func() {
|
||||
Context("when parsing", func() {
|
||||
It("parses sample CHLO message", func() {
|
||||
tag, msg, err := ParseCryptoMessage(sampleCHLO)
|
||||
Expect(err).ToNot(HaveOccurred())
|
||||
Expect(tag).To(Equal(TagCHLO))
|
||||
Expect(msg).To(Equal(map[Tag][]byte{
|
||||
TagPAD: []byte(strings.Repeat("-", 1016)),
|
||||
TagSNI: []byte("www.example.org"),
|
||||
TagVER: []byte("Q030"),
|
||||
TagCCS: []byte("{&\xe9\xe7\xe4\\q\xff\x01\xe8\x81`\x92\x92\x1a\xe8"),
|
||||
TagMSPC: []byte("d\x00\x00\x00"),
|
||||
TagUAID: []byte("dev Chrome/51.0.2700.0 Intel Mac OS X 10_11_4"),
|
||||
TagTCID: []byte("\x00\x00\x00\x00"),
|
||||
TagSRBF: []byte("\x00\x00\x10\x00"),
|
||||
TagICSL: []byte("\x1e\x00\x00\x00"),
|
||||
TagNONP: []byte("\xe1\x84T\x1b\xe3\xd6|\x1fi\xb2N\x9eF\xf4Fݫ\xe5\xdef\x94\xf6\xb2\xee\x01ĥw\xfe\xc9\v\xa3"),
|
||||
TagSCLS: []byte("\x01\x00\x00\x00"),
|
||||
TagCSCT: []byte{},
|
||||
TagCOPT: []byte("FIXD"),
|
||||
TagSFCW: []byte("\x00\x00`\x00"),
|
||||
TagCFCW: []byte("\x00\x00\xf0\x00"),
|
||||
TagPDMD: []byte("X509"),
|
||||
}))
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user