forked from quic-go/quic-go
move the version field in front of the packet number in the long header
This was recently changed in the IETF draft.
This commit is contained in:
@@ -26,11 +26,11 @@ func parseLongHeader(b *bytes.Reader, sentBy protocol.Perspective, typeByte byte
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pn, err := utils.BigEndian.ReadUint32(b)
|
||||
v, err := utils.BigEndian.ReadUint32(b)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
v, err := utils.BigEndian.ReadUint32(b)
|
||||
pn, err := utils.BigEndian.ReadUint32(b)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -104,8 +104,8 @@ func (h *Header) writeHeader(b *bytes.Buffer) error {
|
||||
func (h *Header) writeLongHeader(b *bytes.Buffer) error {
|
||||
b.WriteByte(byte(0x80 ^ h.Type))
|
||||
utils.BigEndian.WriteUint64(b, uint64(h.ConnectionID))
|
||||
utils.BigEndian.WriteUint32(b, uint32(h.PacketNumber))
|
||||
utils.BigEndian.WriteUint32(b, uint32(h.Version))
|
||||
utils.BigEndian.WriteUint32(b, uint32(h.PacketNumber))
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -22,8 +22,8 @@ var _ = Describe("IETF draft Header", func() {
|
||||
return []byte{
|
||||
0x80 ^ uint8(t),
|
||||
0xde, 0xad, 0xbe, 0xef, 0xca, 0xfe, 0x13, 0x37, // connection ID
|
||||
0xde, 0xca, 0xfb, 0xad, // packet number
|
||||
0x1, 0x2, 0x3, 0x4, // version number
|
||||
0xde, 0xca, 0xfb, 0xad, // packet number
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,8 +222,8 @@ var _ = Describe("IETF draft Header", func() {
|
||||
Expect(buf.Bytes()).To(Equal([]byte{
|
||||
0x80 ^ 0x5,
|
||||
0xde, 0xad, 0xbe, 0xef, 0xca, 0xfe, 0x13, 0x37, // connection ID
|
||||
0xde, 0xca, 0xfb, 0xad, // packet number
|
||||
0x1, 0x2, 0x3, 0x4, // version number
|
||||
0xde, 0xca, 0xfb, 0xad, // packet number
|
||||
}))
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user