diff --git a/quic/api/test/QuicTransportBaseTest.cpp b/quic/api/test/QuicTransportBaseTest.cpp index 3e9d3b619..63d424de5 100644 --- a/quic/api/test/QuicTransportBaseTest.cpp +++ b/quic/api/test/QuicTransportBaseTest.cpp @@ -538,7 +538,10 @@ class TestQuicTransport } void enableDatagram() { - conn_->datagramState.maxReadFrameSize = 65535; + // Note: the RFC says to use 65535 to enable the datagram extension. + // We are using +1 in tests to make sure that we avoid representing this + // value with an uint16 + conn_->datagramState.maxReadFrameSize = 65536; conn_->datagramState.maxReadBufferSize = 10; } diff --git a/quic/state/StateData.h b/quic/state/StateData.h index 851f201ec..b53456086 100644 --- a/quic/state/StateData.h +++ b/quic/state/StateData.h @@ -695,8 +695,8 @@ struct QuicConnectionStateBase : public folly::DelayedDestruction { uint64_t numProbesWritableBytesLimited{0}; struct DatagramState { - uint16_t maxReadFrameSize{kDefaultMaxDatagramFrameSize}; - uint16_t maxWriteFrameSize{kDefaultMaxDatagramFrameSize}; + uint32_t maxReadFrameSize{kDefaultMaxDatagramFrameSize}; + uint32_t maxWriteFrameSize{kDefaultMaxDatagramFrameSize}; uint32_t maxReadBufferSize{kDefaultMaxDatagramsBuffered}; uint32_t maxWriteBufferSize{kDefaultMaxDatagramsBuffered}; // Buffers Incoming Datagrams