Always enable session tickets in IETF QUIC

Protected by quic_restart_flag_quic_session_tickets_always_enabled.

PiperOrigin-RevId: 338501945
Change-Id: Ic4c3601efb9764ec3ca1482a9ae5a2ad75144ddc
diff --git a/quic/core/crypto/tls_server_connection.cc b/quic/core/crypto/tls_server_connection.cc
index 1809c9e..9619ee7 100644
--- a/quic/core/crypto/tls_server_connection.cc
+++ b/quic/core/crypto/tls_server_connection.cc
@@ -25,13 +25,19 @@
   // We don't actually need the TicketCrypter here, but we need to know
   // whether it's set.
   if (proof_source->GetTicketCrypter()) {
+    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 1, 3);
     SSL_CTX_set_ticket_aead_method(ssl_ctx.get(),
                                    &TlsServerConnection::kSessionTicketMethod);
-    if (GetQuicRestartFlag(quic_enable_zero_rtt_for_tls_v2)) {
-      SSL_CTX_set_early_data_enabled(ssl_ctx.get(), 1);
-    }
-  } else {
+  } else if (!GetQuicRestartFlag(quic_session_tickets_always_enabled)) {
+    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 2, 3);
     SSL_CTX_set_options(ssl_ctx.get(), SSL_OP_NO_TICKET);
+  } else {
+    QUIC_RESTART_FLAG_COUNT_N(quic_session_tickets_always_enabled, 3, 3);
+  }
+  if (GetQuicRestartFlag(quic_enable_zero_rtt_for_tls_v2) &&
+      (proof_source->GetTicketCrypter() ||
+       GetQuicRestartFlag(quic_session_tickets_always_enabled))) {
+    SSL_CTX_set_early_data_enabled(ssl_ctx.get(), 1);
   }
   return ssl_ctx;
 }