)]}'
{
  "commit": "8b353f389af49f667b4b10060f9f2b0abd5a05fe",
  "tree": "00d9ca8574e5930fe4735b4cad22633ad0c50e5b",
  "parents": [
    "66dea072431f94095dfc3dd2743cb94ef365f7ef"
  ],
  "author": {
    "name": "QUICHE team",
    "email": "quiche-dev@google.com",
    "time": "Tue Apr 09 13:49:10 2019 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Apr 09 16:20:43 2019 -0700"
  },
  "message": "Test QUIC behavior in the worst-case Leto fallback situation\n\nToday, the worst-case QUIC handshake involves sending three CHLO messages.  With Leto, that increases to four, since if GFE realizes that Leto is down, it will reject an otherwise-kosher CHLO in order to swap out the ServerConfig whose private key lives on Leto for one generated locally on the GFE.\n\nQUIC clients limit the number of CHLOs they\u0027re willing to send per handshake to three.  This CL\u0027s intent is to increase that limit to four.\n\nHowever, there is a bug in the QUIC client-side CHLO counting code, which means that the de facto limit was actually four all along.  In order to avoid confusion, this CL both increases the constant from three to four, and also fixes the conditional so that the actual limit remains four.\n\nThe CHLO-limiting constant is checked in one other spot, but since we\u0027re increasing it the change should have no observable effect there.\n\nThis CL also adds a test for this behavior, which creates a gigantic certificate to force a three-CHLO handshake, and then brings down Leto to force a four-CHLO handshake, and explicitly verifies the number of CHLOs.\n\ngfe-relnote: Test changes only in GFE code, no-op changes in QUIC code.\nPiperOrigin-RevId: 242732499\nChange-Id: I7e83ac37269ee5e8d541d058c3f851d0d9a7ff06\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f59e56cfdf7d3e017a256bab0049ff371cbfd3fe",
      "old_mode": 33188,
      "old_path": "quic/core/quic_crypto_client_handshaker.cc",
      "new_id": "013ab3f0549264133bedce6fd83f168261573cc3",
      "new_mode": 33188,
      "new_path": "quic/core/quic_crypto_client_handshaker.cc"
    },
    {
      "type": "modify",
      "old_id": "3518fa763ca4d092e3db609728941f2805ad5c72",
      "old_mode": 33188,
      "old_path": "quic/core/quic_crypto_client_stream.h",
      "new_id": "d0e4ee1e3b178afce5d318da4c83819590efd688",
      "new_mode": 33188,
      "new_path": "quic/core/quic_crypto_client_stream.h"
    }
  ]
}
