)]}'
{
  "commit": "361e3e0aba458b0e91bb80b88adf84986dfa45b0",
  "tree": "9aa6fd2a066ddbd16129b51b24b6d8245f73dba5",
  "parents": [
    "91e0b11eba517d83b910b20fe3740eeb39ecb37e"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Sun Sep 11 13:58:38 2022 -0400"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Sep 14 20:58:16 2022 +0000"
  },
  "message": "Move the DTLS cookie to SSL_HANDSHAKE.\n\nThe cookie is only needed in SSL_HANDSHAKE, so there\u0027s no need to retain\nit for the lifetime of the connection. (SSL_HANDSHAKE is released after\nthe handshake completes.)\n\nBack when DTLS1_COOKIE_LENGTH was 32, storing it inline made some sense.\nNow that RFC 6347 increased the maximum to 255 bytes, just indirect it\nwith an Array\u003cuint8_t\u003e. Along the way, remove the DTLS1_COOKIE_LENGTH\nchecks. The new limit is the largest that fits in the length prefix, so\nit\u0027s always redundant. In fact, the constant was one higher was allowed\nanyway. Add some tests for the maximum length, as well as zero-length\ncookies.\n\nI considered just repurposing the plain cookie field, used in\nHelloRetryRequest (as opposed to HelloVerifyRequest), as they\u0027re\nmutually exclusive, even in DTLS 1.3. But, when we get to DTLS 1.3,\nthat\u0027ll get a little hairy because ssl_write_client_hello will need\nextra checks to know whether hs-\u003ecookie is meant to go in the\nClientHello directly or in extensions.\n\nChange-Id: I1afedc7ce31414879545701bf8fe4658657ba66f\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/54466\nReviewed-by: Bob Beck \u003cbbe@google.com\u003e\nAuto-Submit: David Benjamin \u003cdavidben@google.com\u003e\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "157d19f35071b7931bc70d9ec15c2f4642db95bb",
      "old_mode": 33188,
      "old_path": "ssl/extensions.cc",
      "new_id": "53a3e3cd94a26eaa3c7c88d899d5090477f1badd",
      "new_mode": 33188,
      "new_path": "ssl/extensions.cc"
    },
    {
      "type": "modify",
      "old_id": "636d1664293c2a15e969eba6bcab65680af409ab",
      "old_mode": 33188,
      "old_path": "ssl/handshake_client.cc",
      "new_id": "0a41ffeb6293e315c4516970f264ca5363a53963",
      "new_mode": 33188,
      "new_path": "ssl/handshake_client.cc"
    },
    {
      "type": "modify",
      "old_id": "153c9ca32619ced0ac39641eaca9acd4790ab3f6",
      "old_mode": 33188,
      "old_path": "ssl/internal.h",
      "new_id": "d8df2abccf4285a73bff8c041f7906cda8e5ecd6",
      "new_mode": 33188,
      "new_path": "ssl/internal.h"
    },
    {
      "type": "modify",
      "old_id": "bf6a3d170e5d3afce9399e13110b0945f23e0992",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/common.go",
      "new_id": "07562dfef1953d30ea41af9c3312cad3ddf7fef6",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/common.go"
    },
    {
      "type": "modify",
      "old_id": "f2ef2fc89ae1eb380ddfc5149bc5ba548e23256e",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_messages.go",
      "new_id": "fbfbdd9563b2a31055fca041dbad9f0800ea2bca",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_messages.go"
    },
    {
      "type": "modify",
      "old_id": "4f411844a239cfe693a217826eee9cc3df29a1d6",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_server.go",
      "new_id": "5ae7d936524beba2003b3b4ac0c326e46b0c4ca8",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_server.go"
    },
    {
      "type": "modify",
      "old_id": "2b5d0e0668fd4aba8a53a195a140bf1a57b6c98a",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/runner.go",
      "new_id": "5c6ef4f1d644d25aab3fb11cef2d1d0f52de4508",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/runner.go"
    }
  ]
}
