)]}'
{
  "commit": "adc7507d2def246f5f4823fa5bd29c12f654d710",
  "tree": "3cf87b3a632d4f555529cc145dec6ea57c166a8d",
  "parents": [
    "83161e4529919be48c5554e72a0640413020450a"
  ],
  "author": {
    "name": "dschinazi",
    "email": "dschinazi@google.com",
    "time": "Mon Aug 19 10:54:45 2019 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Mon Aug 19 18:07:32 2019 -0700"
  },
  "message": "Use deterministic replacement connection IDs\n\nThis CL removes a DoS attack vector where an attacker could grow QuicDispatcher::connection_id_map_ unboundedly. It does so by no longer using random connection IDs that are saved in connection_id_map_; instead we now generate deterministic replacement connection IDs, removing the need for a map. It should not impact the GFE because the GFE overrides QuicDispatcher::GenerateNewServerConnectionId with an already deterministic method, but is still flag protected just in case.\n\ngfe-relnote: use deterministic replacement connection IDs, protected by new disabled flag gfe2_restart_flag_quic_deterministic_replacement_connection_ids\nPiperOrigin-RevId: 264192278\nChange-Id: I843bf0d846830d4b13e0bb1b470a71b2428ad7c8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b659bdacc73ad5943962aeef22133ff40a496dad",
      "old_mode": 33188,
      "old_path": "quic/core/quic_dispatcher.cc",
      "new_id": "553fcd45b3a837cc82eaa8ab5c6f3e8cd0349ae5",
      "new_mode": 33188,
      "new_path": "quic/core/quic_dispatcher.cc"
    },
    {
      "type": "modify",
      "old_id": "f7b0450661912d1cccbadea13d895d90acda873a",
      "old_mode": 33188,
      "old_path": "quic/core/quic_dispatcher.h",
      "new_id": "566d3bc846aad7c071bf39ed70e51b835245140a",
      "new_mode": 33188,
      "new_path": "quic/core/quic_dispatcher.h"
    },
    {
      "type": "modify",
      "old_id": "b41c57f0ec3b93fdbbd046fb8ad9c9a53d37b140",
      "old_mode": 33188,
      "old_path": "quic/core/quic_dispatcher_test.cc",
      "new_id": "b8cc4709c116e1f9e85607a25c8fffa445df647f",
      "new_mode": 33188,
      "new_path": "quic/core/quic_dispatcher_test.cc"
    },
    {
      "type": "modify",
      "old_id": "1e2c5fcaf1812892aa5d927335a68adc901fbb7e",
      "old_mode": 33188,
      "old_path": "quic/core/quic_utils.cc",
      "new_id": "a3366da5a0368d32df2cdcbdd25431e88ed4ef2b",
      "new_mode": 33188,
      "new_path": "quic/core/quic_utils.cc"
    },
    {
      "type": "modify",
      "old_id": "11154a5dab472d8d33117697f3b44ff2a025e503",
      "old_mode": 33188,
      "old_path": "quic/core/quic_utils.h",
      "new_id": "de855a0cad8fbcc8d01d203c2dbced1664eda80d",
      "new_mode": 33188,
      "new_path": "quic/core/quic_utils.h"
    },
    {
      "type": "modify",
      "old_id": "d0ce7e80a6f953a92513f774ba05bbf65198649e",
      "old_mode": 33188,
      "old_path": "quic/core/quic_utils_test.cc",
      "new_id": "dc46133f0838c595a83b34982a0d2c1a41e8aa16",
      "new_mode": 33188,
      "new_path": "quic/core/quic_utils_test.cc"
    }
  ]
}
