send a reserved version number in the EncryptedExtensions message

This commit is contained in:
Marten Seemann
2017-11-30 12:45:55 +07:00
parent be29963637
commit 1a3852aec6
2 changed files with 12 additions and 6 deletions

View File

@@ -45,7 +45,8 @@ var _ = Describe("TLS Extension Handler, for the server", func() {
It("adds TransportParameters to the EncryptedExtensions message", func() {
handler.version = 666
handler.supportedVersions = []protocol.VersionNumber{13, 37, 42}
versions := []protocol.VersionNumber{13, 37, 42}
handler.supportedVersions = versions
err := handler.Send(mint.HandshakeTypeEncryptedExtensions, &el)
Expect(err).ToNot(HaveOccurred())
Expect(el).To(HaveLen(1))
@@ -55,8 +56,12 @@ var _ = Describe("TLS Extension Handler, for the server", func() {
eetp := &encryptedExtensionsTransportParameters{}
_, err = syntax.Unmarshal(ext.data, eetp)
Expect(err).ToNot(HaveOccurred())
Expect(eetp.SupportedVersions).To(Equal([]uint32{13, 37, 42}))
Expect(eetp.NegotiatedVersion).To(BeEquivalentTo(666))
// the SupportedVersions will contain one reserved version number
Expect(eetp.SupportedVersions).To(HaveLen(len(versions) + 1))
for _, version := range versions {
Expect(eetp.SupportedVersions).To(ContainElement(uint32(version)))
}
})
})