parseLongHeaderType function
Implementation
LongPacketType parseLongHeaderType(Uint8List packet) {
final firstByte = packet[0];
// Bits 4–5 encode the long header packet type
final typeBits = (firstByte >> 4) & 0x03;
switch (typeBits) {
case 0x0:
return LongPacketType.initial;
case 0x1:
return LongPacketType.zeroRtt;
case 0x2:
return LongPacketType.handshake;
case 0x3:
return LongPacketType.retry;
default:
throw StateError('Invalid long header type bits: $typeBits');
}
}