)]}'
{
  "commit": "94fddaedb3f0c8e0ef6bf3926e20be7bdba1925a",
  "tree": "f73bff8f6234c211b13727b6eed99abf20d67dbd",
  "parents": [
    "0226f30467f540a3f62ef48d453f93927da199b6"
  ],
  "author": {
    "name": "Lily Chen",
    "email": "chlily@google.com",
    "time": "Tue Sep 09 17:34:19 2025 -0400"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Sep 09 14:51:46 2025 -0700"
  },
  "message": "Require configured groups for key exchange to be unique\n\nThere is no reason for the list of supported groups for key exchange to\ncontain duplicates, because a group is either supported or not, and\nspecifying it multiple times has no additional effect. Also it is a\nsyntax error on the wire. Allowing duplicates in the SSL_CTX and\nSSL_CONFIG members that track this list would create problems because we\nwill soon require other inputs (explicitly configured client key shares)\nto be a subset of the supported groups. This CL requires the groups\nconfigured via SSL_{,CTX_}set1_{groups,group_ids,groups_list} to be\nunique.\n\nUpdate-Note: The setters for supported groups,\nSSL_{,CTX_}set1_{groups,group_ids,groups_list} will now fail if the\nprovided list of groups contains duplicates.\n\nChange-Id: I67aa3bac811da6239e8f89fe501218a7a60dba11\nBug: 437414371\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/81467\nAuto-Submit: Lily Chen \u003cchlily@google.com\u003e\nReviewed-by: David Benjamin \u003cdavidben@google.com\u003e\nCommit-Queue: Lily Chen \u003cchlily@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7d77cfdcd5586f4cc1315c0594e34c504e328236",
      "old_mode": 33188,
      "old_path": "crypto/err/ssl.errordata",
      "new_id": "01c4ca616f4fc19df058940ed261cedb38520d13",
      "new_mode": 33188,
      "new_path": "crypto/err/ssl.errordata"
    },
    {
      "type": "modify",
      "old_id": "00b3216670996e6261e6677ad3fe8eae74c2dc15",
      "old_mode": 33188,
      "old_path": "gen/crypto/err_data.cc",
      "new_id": "6048a69a5f3ee2e2a39915976a979a9ac9cb7469",
      "new_mode": 33188,
      "new_path": "gen/crypto/err_data.cc"
    },
    {
      "type": "modify",
      "old_id": "9ee7ec1b887426db2a2fb0091fa1843cd3494716",
      "old_mode": 33188,
      "old_path": "include/openssl/ssl.h",
      "new_id": "cef9884f4c844b965f9613873f8952d2fdcc512d",
      "new_mode": 33188,
      "new_path": "include/openssl/ssl.h"
    },
    {
      "type": "modify",
      "old_id": "24c0d496f9d655f0f32634430e9c31d5592be939",
      "old_mode": 33188,
      "old_path": "ssl/ssl_lib.cc",
      "new_id": "3188317d2274148a5e8eee1047b86dd4b240cd8e",
      "new_mode": 33188,
      "new_path": "ssl/ssl_lib.cc"
    },
    {
      "type": "modify",
      "old_id": "35711a77a4d52b362aea97467a33e8b84533bf85",
      "old_mode": 33188,
      "old_path": "ssl/ssl_test.cc",
      "new_id": "84385fbd3874d9ac664d3bb3ffc6c0d12b856dc1",
      "new_mode": 33188,
      "new_path": "ssl/ssl_test.cc"
    }
  ]
}
