Deprecate gfe2_reloadable_flag_quic_send_timestamps.
PiperOrigin-RevId: 401730932
diff --git a/quic/core/crypto/crypto_protocol.h b/quic/core/crypto/crypto_protocol.h
index f0bcd7f..f50061e 100644
--- a/quic/core/crypto/crypto_protocol.h
+++ b/quic/core/crypto/crypto_protocol.h
@@ -209,7 +209,7 @@
// Retransmissions.
const QuicTag kLFAK = TAG('L', 'F', 'A', 'K'); // Don't invoke FACK on the
// first ack.
-const QuicTag kSTMP = TAG('S', 'T', 'M', 'P'); // Send and process timestamps
+const QuicTag kSTMP = TAG('S', 'T', 'M', 'P'); // DEPRECATED
const QuicTag kEACK = TAG('E', 'A', 'C', 'K'); // Bundle ack-eliciting frame
// with an ACK after PTO/RTO
diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index f152e6e..7588a96 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -625,12 +625,6 @@
if (config.HasReceivedAckDelayExponent()) {
framer_.set_peer_ack_delay_exponent(config.ReceivedAckDelayExponent());
}
- if (GetQuicReloadableFlag(quic_send_timestamps) &&
- config.HasClientSentConnectionOption(kSTMP, perspective_)) {
- QUIC_RELOADABLE_FLAG_COUNT(quic_send_timestamps);
- framer_.set_process_timestamps(true);
- uber_received_packet_manager_.set_save_timestamps(true);
- }
if (config.HasClientSentConnectionOption(kEACK, perspective_)) {
bundle_retransmittable_with_pto_ack_ = true;
}
diff --git a/quic/core/quic_flags_list.h b/quic/core/quic_flags_list.h
index 4399efa..4331652 100644
--- a/quic/core/quic_flags_list.h
+++ b/quic/core/quic_flags_list.h
@@ -117,8 +117,6 @@
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_server_reverse_validate_new_path3, true)
// When receiving STOP_SENDING, send a RESET_STREAM with a matching error code.
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_match_ietf_reset_code, false)
-// When the STMP connection option is sent by the client, timestamps in the QUIC ACK frame are sent and processed.
-QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_send_timestamps, false)
// When the flag is true, exit STARTUP after the same number of loss events as PROBE_UP.
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_bbr2_startup_probe_up_loss_events, true)
// When true, QuicDispatcher will silently drop incoming packets whose UDP source port is on the blocklist.
diff --git a/quic/core/quic_framer.h b/quic/core/quic_framer.h
index a6820ea..b1fe416 100644
--- a/quic/core/quic_framer.h
+++ b/quic/core/quic_framer.h
@@ -309,7 +309,9 @@
QuicErrorCode error() const { return error_; }
// Allows enabling or disabling of timestamp processing and serialization.
- void set_process_timestamps(bool process_timestamps) {
+ // TODO(ianswett): Remove the const once timestamps are negotiated via
+ // transport params.
+ void set_process_timestamps(bool process_timestamps) const {
process_timestamps_ = process_timestamps;
}
@@ -1124,7 +1126,8 @@
// The diversification nonce from the last received packet.
DiversificationNonce last_nonce_;
// If true, send and process timestamps in the ACK frame.
- bool process_timestamps_;
+ // TODO(ianswett): Remove the mutable once set_process_timestamps isn't const.
+ mutable bool process_timestamps_;
// The exponent to use when writing/reading ACK receive timestamps.
uint32_t receive_timestamps_exponent_;
// The creation time of the connection, used to calculate timestamps.