use a uint8 to represent the key phase bit

This commit is contained in:
Marten Seemann
2020-10-06 15:25:31 +07:00
parent 93e3873141
commit d5a30225ce
4 changed files with 29 additions and 19 deletions

View File

@@ -38,7 +38,6 @@ type packetHeader struct {
SrcConnectionID logging.ConnectionID
DestConnectionID logging.ConnectionID
hasKeyPhase bool
KeyPhaseBit logging.KeyPhaseBit
}
@@ -55,10 +54,7 @@ func transformHeader(hdr *wire.Header) *packetHeader {
func transformExtendedHeader(hdr *wire.ExtendedHeader) *packetHeader {
h := transformHeader(&hdr.Header)
h.PacketNumber = hdr.PacketNumber
if !hdr.IsLongHeader {
h.hasKeyPhase = true
h.KeyPhaseBit = hdr.KeyPhase
}
h.KeyPhaseBit = hdr.KeyPhase
return h
}
@@ -81,12 +77,7 @@ func (h packetHeader) MarshalJSONObject(enc *gojay.Encoder) {
if h.DestConnectionID.Len() > 0 {
enc.StringKey("dcid", connectionID(h.DestConnectionID).String())
}
if h.hasKeyPhase {
switch h.KeyPhaseBit {
case logging.KeyPhaseZero:
enc.StringKey("key_phase_bit", "0")
case logging.KeyPhaseOne:
enc.StringKey("key_phase_bit", "1")
}
if h.KeyPhaseBit == logging.KeyPhaseZero || h.KeyPhaseBit == logging.KeyPhaseOne {
enc.StringKey("key_phase_bit", h.KeyPhaseBit.String())
}
}