)]}'
{
  "commit": "656874fd46a65a97eac94003e0eb8751be4403d0",
  "tree": "147ea8b2ac833cab675c871db2140b2052eab3b4",
  "parents": [
    "a818e160ee8fbf01b12286ff806fab82f0ed764f"
  ],
  "author": {
    "name": "Damien Neil",
    "email": "dneil@google.com",
    "time": "Thu Sep 10 16:03:26 2026 -0700"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Tue Sep 15 13:55:17 2026 -0700"
  },
  "message": "quic: determine local address for connections\n\nProperly handling path migration requires QUIC connections to know\nboth the address they are sending from and the address they are\nsending to.\n\nDetermine the local address for a path by creating a temporary UDP\nsocket bound to the path; this sends no packets but lets us see\nwhat address the kernel thinks should be used on the path.\n(When using a non-*net.UDPConn connection, we don\u0027t attempt to do\nthis on the theory that our PacketConn likely doesn\u0027t use the real\nnetwork.)\n\nUpdate fake-network tests to use valid source/destination addresses\nfor all datagrams.\n\nChange-Id: Ia89f7daf479b10df4c1d23f3e64ad3726a6a6964\nReviewed-on: https://go-review.googlesource.com/c/net/+/832365\nReviewed-by: Nicholas Husin \u003cnsh@golang.org\u003e\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nAuto-Submit: Damien Neil \u003cdneil@google.com\u003e\nReviewed-by: Nicholas Husin \u003chusin@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ca94999d32dd10ae1039481a9e570234c5ef7d6a",
      "old_mode": 33188,
      "old_path": "quic/conn.go",
      "new_id": "33512378ba45aadb5625774224c44dc1308a2739",
      "new_mode": 33188,
      "new_path": "quic/conn.go"
    },
    {
      "type": "modify",
      "old_id": "f2094ea8f5e3b015fc1af0398546f793da7e3c72",
      "old_mode": 33188,
      "old_path": "quic/conn_id_test.go",
      "new_id": "bb1ddb2765525469c02fc6cc0df347680439635f",
      "new_mode": 33188,
      "new_path": "quic/conn_id_test.go"
    },
    {
      "type": "modify",
      "old_id": "81ed5fae21a321b41c73c580809ac1ba547dadcb",
      "old_mode": 33188,
      "old_path": "quic/conn_recv.go",
      "new_id": "fc6cc8961b3898f56a4b106f6d2a45e77d6ee539",
      "new_mode": 33188,
      "new_path": "quic/conn_recv.go"
    },
    {
      "type": "modify",
      "old_id": "ec76fe9eaed4bf14c245a888ba1cbf8ea077d16e",
      "old_mode": 33188,
      "old_path": "quic/conn_send_test.go",
      "new_id": "a21640c9cb4fabab47d0dd6abc5ca2c1d22ff618",
      "new_mode": 33188,
      "new_path": "quic/conn_send_test.go"
    },
    {
      "type": "modify",
      "old_id": "ccf5b66ca7f1ca5b6573d1fcf7ad4ca84adc0b5e",
      "old_mode": 33188,
      "old_path": "quic/conn_test.go",
      "new_id": "b7d8a78d56f6a34188fbfd917b6cdac9b64e7c73",
      "new_mode": 33188,
      "new_path": "quic/conn_test.go"
    },
    {
      "type": "modify",
      "old_id": "e1e3dca0ac2535462287a8051b8f110e5a68a9fb",
      "old_mode": 33188,
      "old_path": "quic/endpoint.go",
      "new_id": "a68beed11eec7a9d5e10c744525df68d983ddfde",
      "new_mode": 33188,
      "new_path": "quic/endpoint.go"
    },
    {
      "type": "modify",
      "old_id": "192782309c68ad58091ad2f35abb263eb95f8eee",
      "old_mode": 33188,
      "old_path": "quic/endpoint_test.go",
      "new_id": "253fe797a24eda11cfe50602f2a0c8a5f5fa195e",
      "new_mode": 33188,
      "new_path": "quic/endpoint_test.go"
    },
    {
      "type": "modify",
      "old_id": "fb120d23d4e33e8d0fc2cd9870f61dc616db63ab",
      "old_mode": 33188,
      "old_path": "quic/qlog_test.go",
      "new_id": "58600cddfcaa9bd74b426f8a1ad1327d65ce3f9e",
      "new_mode": 33188,
      "new_path": "quic/qlog_test.go"
    },
    {
      "type": "modify",
      "old_id": "6a0bccd601e85c5a65fa2f58103c4d8a79be3dce",
      "old_mode": 33188,
      "old_path": "quic/retry_test.go",
      "new_id": "452edc1f0ea0a117663e45770ec03875f41d732e",
      "new_mode": 33188,
      "new_path": "quic/retry_test.go"
    },
    {
      "type": "modify",
      "old_id": "c7aff0dc2d6a7dc3c6f6916658ea85d762286f84",
      "old_mode": 33188,
      "old_path": "quic/stateless_reset_test.go",
      "new_id": "3b02cc3e2c89dc3fdaf43d86edf50885b24d5eb3",
      "new_mode": 33188,
      "new_path": "quic/stateless_reset_test.go"
    },
    {
      "type": "modify",
      "old_id": "3d03b06f2d25cec01754bf3a2335df833f749731",
      "old_mode": 33188,
      "old_path": "quic/tls_test.go",
      "new_id": "4989d8b95bbb329923b72ac33fb3e299446480db",
      "new_mode": 33188,
      "new_path": "quic/tls_test.go"
    },
    {
      "type": "modify",
      "old_id": "cf23c5ce88c3f0cd044fa442f0e0037783029ac8",
      "old_mode": 33188,
      "old_path": "quic/udp.go",
      "new_id": "ec30a73c9359c48c0ee58015f57158af512b92bf",
      "new_mode": 33188,
      "new_path": "quic/udp.go"
    },
    {
      "type": "modify",
      "old_id": "cf8167f5d7468ae75c4305aa24fa2a5ebc468953",
      "old_mode": 33188,
      "old_path": "quic/udp_msg.go",
      "new_id": "9467d30164eebbc3c9fa1fd869ede67aff5cb491",
      "new_mode": 33188,
      "new_path": "quic/udp_msg.go"
    },
    {
      "type": "modify",
      "old_id": "3c9852e4192c7cce9035c2a9922755b32f61bcbd",
      "old_mode": 33188,
      "old_path": "quic/udp_other.go",
      "new_id": "363f74ac3c39e222b7f9a331a1ce1755a6d9990e",
      "new_mode": 33188,
      "new_path": "quic/udp_other.go"
    },
    {
      "type": "modify",
      "old_id": "51ad477d69af40a8faa510c76a74cc2f345be8e7",
      "old_mode": 33188,
      "old_path": "quic/udp_packetconn.go",
      "new_id": "5b2062adbb5c83b2ee217d92c289ce533a081eef",
      "new_mode": 33188,
      "new_path": "quic/udp_packetconn.go"
    },
    {
      "type": "modify",
      "old_id": "fc5c97e8b7086434efebe70a4ab71b8daff2903c",
      "old_mode": 33188,
      "old_path": "quic/version_test.go",
      "new_id": "d7240ccb76679185f5da74c9ca0932b0ae9b17c6",
      "new_mode": 33188,
      "new_path": "quic/version_test.go"
    }
  ]
}
