forked from quic-go/quic-go
add support for QUIC v1, RFC 9000
This commit is contained in:
@@ -18,7 +18,7 @@ const (
|
||||
|
||||
// The version numbers, making grepping easier
|
||||
const (
|
||||
VersionTLS VersionNumber = 0x51474fff
|
||||
VersionTLS VersionNumber = 0x1
|
||||
VersionWhatever VersionNumber = math.MaxUint32 - 1 // for when the version doesn't matter
|
||||
VersionUnknown VersionNumber = math.MaxUint32
|
||||
VersionDraft29 VersionNumber = 0xff00001d
|
||||
@@ -29,7 +29,7 @@ const (
|
||||
|
||||
// SupportedVersions lists the versions that the server supports
|
||||
// must be in sorted descending order
|
||||
var SupportedVersions = []VersionNumber{VersionTLS}
|
||||
var SupportedVersions = []VersionNumber{Version1, VersionDraft34, VersionDraft32, VersionDraft29}
|
||||
|
||||
// IsValidVersion says if the version is known to quic-go
|
||||
func IsValidVersion(v VersionNumber) bool {
|
||||
|
||||
@@ -14,10 +14,10 @@ var _ = Describe("Version", func() {
|
||||
Expect(IsValidVersion(VersionTLS)).To(BeTrue())
|
||||
Expect(IsValidVersion(VersionWhatever)).To(BeFalse())
|
||||
Expect(IsValidVersion(VersionUnknown)).To(BeFalse())
|
||||
Expect(IsValidVersion(VersionDraft29)).To(BeFalse())
|
||||
Expect(IsValidVersion(VersionDraft32)).To(BeFalse())
|
||||
Expect(IsValidVersion(VersionDraft34)).To(BeFalse())
|
||||
Expect(IsValidVersion(Version1)).To(BeFalse())
|
||||
Expect(IsValidVersion(VersionDraft29)).To(BeTrue())
|
||||
Expect(IsValidVersion(VersionDraft32)).To(BeTrue())
|
||||
Expect(IsValidVersion(VersionDraft34)).To(BeTrue())
|
||||
Expect(IsValidVersion(Version1)).To(BeTrue())
|
||||
Expect(IsValidVersion(1234)).To(BeFalse())
|
||||
})
|
||||
|
||||
@@ -47,6 +47,7 @@ var _ = Describe("Version", func() {
|
||||
})
|
||||
|
||||
It("has supported versions in sorted order", func() {
|
||||
Expect(SupportedVersions[0]).To(Equal(Version1))
|
||||
for i := 1; i < len(SupportedVersions)-1; i++ {
|
||||
Expect(SupportedVersions[i]).To(BeNumerically(">", SupportedVersions[i+1]))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user