)]}'
{
  "commit": "7fa9e94d64af1f6f41c98d58718c08bbd29efa21",
  "tree": "0d075cee4b14a45ad4d85af7f0f9da01f138b331",
  "parents": [
    "b577d5d415acb5d700d600669934677cad0ab2ce"
  ],
  "author": {
    "name": "QUICHE team",
    "email": "quiche-dev@google.com",
    "time": "Wed May 13 11:32:14 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed May 13 11:32:52 2026 -0700"
  },
  "message": "Add support for handling client certificate requests in QUIC TLS.\n\nThis change introduces a mechanism for the QUIC client to respond to a server\u0027s request for a client certificate during the TLS handshake. When a CertificateRequest message is received, the handshake is suspended, and a new callback, OnCertificateRequested, is triggered on the ProofHandler. This allows the application to provide a client certificate before the handshake resumes.\n\nProtected by quic_restart_flag_quic_client_cert_support.\n\nPiperOrigin-RevId: 914968512\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "069549d37f0246ec6d99eafc716f82cf09345179",
      "old_mode": 33261,
      "old_path": "quiche/common/quiche_feature_flags_list.h",
      "new_id": "45b8b0e386dda0ad4a9e650f01562060c5583bbb",
      "new_mode": 33261,
      "new_path": "quiche/common/quiche_feature_flags_list.h"
    },
    {
      "type": "modify",
      "old_id": "d70737d3a601bfd0d7459e8993f521b8fe7fe180",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/crypto/tls_client_connection.cc",
      "new_id": "5f63f7861dc8ee8daaf03fa5fcd80e4bd12eb925",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/crypto/tls_client_connection.cc"
    },
    {
      "type": "modify",
      "old_id": "187da358d1539aa064db43af6ee0a98fc9b7a1be",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/crypto/tls_client_connection.h",
      "new_id": "153a1732d209d97e3c39eb3497041a594784bd0b",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/crypto/tls_client_connection.h"
    },
    {
      "type": "modify",
      "old_id": "71bfac62682f999bcc88d2e2755ad6aa8c233a21",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/http/quic_connection_migration_manager_test.cc",
      "new_id": "b4fe7d3c694e7d24f3e21c9695e13f5fd6b8e56b",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/http/quic_connection_migration_manager_test.cc"
    },
    {
      "type": "modify",
      "old_id": "740c0e9bb175b4b8b12ec346a915cad525a711bc",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/http/quic_spdy_client_session.cc",
      "new_id": "053536dd9ff39a8752c547015d2403180eee0198",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/http/quic_spdy_client_session.cc"
    },
    {
      "type": "modify",
      "old_id": "4d104d16bcddf43502c39530e744a2e381034f2f",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/http/quic_spdy_client_session.h",
      "new_id": "58701c2b216edbb01ba531c866d5163477bdc83f",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/http/quic_spdy_client_session.h"
    },
    {
      "type": "modify",
      "old_id": "fc42e01c755e25217d5952fd2a673e1a35c3eb43",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_crypto_client_handshaker_test.cc",
      "new_id": "40f40d411f91ccf97c3ab11a326ce290bd216d6b",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_crypto_client_handshaker_test.cc"
    },
    {
      "type": "modify",
      "old_id": "2aaa58c7ca29f63c18c9187b0a6497ed08342def",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_crypto_client_stream.h",
      "new_id": "b30c1996d126e7cc5cb24f72f9e7876b19f1c4e0",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_crypto_client_stream.h"
    },
    {
      "type": "modify",
      "old_id": "a592f1a9116bec95d579f84971c3346498ec09bd",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_generic_session.cc",
      "new_id": "8c2def665c7044a8e2e2fae6932f6956b0e5b019",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_generic_session.cc"
    },
    {
      "type": "modify",
      "old_id": "fb502416a81216b4c76e1669264efc9f0d424aa4",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/tls_client_handshaker.cc",
      "new_id": "5f00c09c3949f99b0ae53f069d15d36eb95d2a8d",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/tls_client_handshaker.cc"
    },
    {
      "type": "modify",
      "old_id": "447f7b6363d7f29f3d1b8d8ced23dc46cb88cb0d",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/tls_client_handshaker.h",
      "new_id": "aaa5311d71c861979b4d2a5759f89b72815f8bbd",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/tls_client_handshaker.h"
    },
    {
      "type": "modify",
      "old_id": "458707251a6484c267ff3c9774244b4c2273ce3b",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/tls_client_handshaker_test.cc",
      "new_id": "a5df77e9a1602ecf79e7d0646892c9883dd44381",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/tls_client_handshaker_test.cc"
    },
    {
      "type": "modify",
      "old_id": "96dcf00aef1515a3525dfd7d3e5d25f02e39bef7",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/tls_handshaker.cc",
      "new_id": "9eca933fe93d3051db6bd96dac7ea79a5fdd2441",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/tls_handshaker.cc"
    },
    {
      "type": "modify",
      "old_id": "fa88c170b5cf7e06bddc8655d574570d1528e6c6",
      "old_mode": 33188,
      "old_path": "quiche/quic/qbone/qbone_client_session.cc",
      "new_id": "9af33940ffacd614cf74444b179708d73209242c",
      "new_mode": 33188,
      "new_path": "quiche/quic/qbone/qbone_client_session.cc"
    },
    {
      "type": "modify",
      "old_id": "b0bd5cf5048fe51695dd668b95b30058bffc5fcd",
      "old_mode": 33188,
      "old_path": "quiche/quic/qbone/qbone_client_session.h",
      "new_id": "8a36c7ed46886e19f147d0c4eeaad7d8ec125fbb",
      "new_mode": 33188,
      "new_path": "quiche/quic/qbone/qbone_client_session.h"
    },
    {
      "type": "modify",
      "old_id": "390345ba744d7faa8ebe6046997a40bfa196935c",
      "old_mode": 33188,
      "old_path": "quiche/quic/test_tools/quic_test_utils.h",
      "new_id": "3ecd48789bbd713d24649ed33c0e39c48ec6c6bd",
      "new_mode": 33188,
      "new_path": "quiche/quic/test_tools/quic_test_utils.h"
    }
  ]
}
