Add LengthPrefixedConnectionId support to QuicDataReader and Writer
This is currently only used in v99 NEW_CONNECTION_ID frames but will soon be used to parse the new connection ID invariants
gfe-relnote: n/a, protected by disabled v99 flag
PiperOrigin-RevId: 258684056
Change-Id: I666d150b9392e195a073272d2c5e79bd970d5862
diff --git a/quic/core/quic_data_reader.h b/quic/core/quic_data_reader.h
index a03b927..72e2d13 100644
--- a/quic/core/quic_data_reader.h
+++ b/quic/core/quic_data_reader.h
@@ -83,6 +83,11 @@
// Returns true on success, false otherwise.
bool ReadConnectionId(QuicConnectionId* connection_id, uint8_t length);
+ // Reads 8-bit connection ID length followed by connection ID of that length.
+ // Forwards the internal iterator on success.
+ // Returns true on success, false otherwise.
+ bool ReadLengthPrefixedConnectionId(QuicConnectionId* connection_id);
+
// Reads tag represented as 32-bit unsigned integer into given output
// parameter. Tags are in big endian on the wire (e.g., CHLO is
// 'C','H','L','O') and are read in byte order, so tags in memory are in big