)]}'
{
  "commit": "b159ab09b25b9049577899cd69f70f3b04a486c2",
  "tree": "ed779f259c0d24f5db3f8de0f221197637f13171",
  "parents": [
    "1fdac9bdbf85d27537e8ce47ca4f1eaa034f1ff5"
  ],
  "author": {
    "name": "danzh",
    "email": "danzh@google.com",
    "time": "Mon Jan 30 10:58:46 2023 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Mon Jan 30 10:59:32 2023 -0800"
  },
  "message": "Implement QUIC server preferred address (SPA) on server side. Basically advertising SPA and handling clients migrating to using SPA.\n\nCurrent implementation is a half-way SPA which advertises SPA in transport parameters and accepts packets received on SPA, but the server doesn\u0027t validate the migration nor does it switch to use SPA to send packets(go/quic_server_migration).\n\nThe behavior is behind config knobs QuicConfig::SetIPv(4|6)AlternateServerAddressToSend().\n\nPiperOrigin-RevId: 505741961\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4625ebb7526cba6aa3fb82b670cc4d295ccfe1ba",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/http/end_to_end_test.cc",
      "new_id": "1f8d6fe1968da12616bdb5e01460228dbfd5e24c",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/http/end_to_end_test.cc"
    },
    {
      "type": "modify",
      "old_id": "f8895b00b0be40a42a0afa6c289aa440d824587a",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_config.cc",
      "new_id": "43f4bbd9699489fbe90111c894af904096e754f6",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_config.cc"
    },
    {
      "type": "modify",
      "old_id": "52cc3b456e2c7f0488a03e930794f6281dd1b9c3",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_config.h",
      "new_id": "f60b4818d66da719aa0872e17f0d6bb17810dc5b",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_config.h"
    },
    {
      "type": "modify",
      "old_id": "495127c8717d01efd5067276e118a6646d3f70f0",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_config_test.cc",
      "new_id": "86e5a996d26b50a38515831400470b8e82b81294",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_config_test.cc"
    },
    {
      "type": "modify",
      "old_id": "de88ae68767433a172c729fc25aa6a46078dba59",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_connection.cc",
      "new_id": "9d4f882e0a39ea970d746a351b942eaf966a26ec",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_connection.cc"
    },
    {
      "type": "modify",
      "old_id": "7969a0ef1e3176276e09792258def55e13ae0eb7",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_connection.h",
      "new_id": "6d73f931da8a3784b0a658131045ac9d3a54cd56",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_connection.h"
    },
    {
      "type": "modify",
      "old_id": "c4fe88fd9508085385f47307576358bc9d54fe0c",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_connection_test.cc",
      "new_id": "84c8cdb100313031812370f7028aeb7ddc60384f",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_connection_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a58e572a9665a508e4e36b3f839be87fc37dee6d",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_session.cc",
      "new_id": "86ae879d65c018d0c5740736e0ed7f074ca3d9fa",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_session.cc"
    },
    {
      "type": "modify",
      "old_id": "1547f18942cf7deba4aff001b4c3037d94fc0b68",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_session_test.cc",
      "new_id": "c65ae1891612637268f59d29a8b0080a61434b87",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_session_test.cc"
    },
    {
      "type": "modify",
      "old_id": "9506f37576b383bcbdf74dc1f1b8e54d9128800c",
      "old_mode": 33188,
      "old_path": "quiche/quic/test_tools/quic_connection_peer.cc",
      "new_id": "f7a98c5e2eaa96f740511fe37898a2c32ec0ad9d",
      "new_mode": 33188,
      "new_path": "quiche/quic/test_tools/quic_connection_peer.cc"
    },
    {
      "type": "modify",
      "old_id": "330be035584e558591fb8f164d4fe7165b6b3430",
      "old_mode": 33188,
      "old_path": "quiche/quic/test_tools/quic_connection_peer.h",
      "new_id": "dbb787cd00cf341cf3672c6260cb248be0a5fa68",
      "new_mode": 33188,
      "new_path": "quiche/quic/test_tools/quic_connection_peer.h"
    }
  ]
}
