)]}'
{
  "commit": "a972b78d1b11009cd07852fb4be2cc938489e031",
  "tree": "121eedb6c5ff03d0823c7a5666fc837f8c2407c7",
  "parents": [
    "b1c6f45f1fe6d808555d04a41bb44b322e4f4c1d"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Fri May 05 10:22:43 2023 -0400"
  },
  "committer": {
    "name": "Adam Langley",
    "email": "agl@google.com",
    "time": "Mon May 08 17:49:32 2023 +0000"
  },
  "message": "Add APIs to query a list of possible strings for TLS features\n\nEnvoy needs to have the possible cipher, etc., strings predeclared to\nreduce synchronization needs in the steady state. It currently does this\nby (1) iterating over SSL_CTX_get_ciphers at SSL_CTX creation time and\n(2) hard-coding a lists of known TLS 1.3 ciphers, TLS versions,\nNamedGroups, etc.\n\n(1) would work for some applications, but it breaks any applications\nthat configure ciphers on the SSL on a certificate callback, etc. If the\ncallback configures a cipher that wasn\u0027t configured on the SSL_CTX (e.g.\nif the SSL_CTX were left at defaults), Envoy\u0027s logging breaks and we hit\nan ENVOY_BUG assertion.\n\n(2) breaks whenever BoringSSL adds a new feature. In principle, we could\nupdate Envoy when updating BoringSSL, but this is an unresasonable\ndevelopment overhead for just one of many BoringSSL consumers to impose.\nSuch costs are particularly high when considering needing to coordinate\nupdates to Envoy and BoringSSL across different repositories.\n\nAdd APIs to enumerate the possible strings these functions can return.\nThese string lists are a superset of those that any one application may\ncare about (e.g. we may have a deprecated cipher that Envoy no longer\nneeds, or an experimental cipher that\u0027s not yet ready for Envoy\u0027s\nstability goals), but this is fine provided this is just used to\ninitialize the table. In particular, they are *not* intended to\nenumerate supported features.\n\nBump BORINGSSL_API_VERSION to aid in patching these into Envoy.\n\nBug: b:280350955\nChange-Id: I4d11db980eebed5620d3657778c09dbec004653c\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/59667\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nAuto-Submit: David Benjamin \u003cdavidben@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ee266274471080015f10fd90d2938b7ebdbe2b8e",
      "old_mode": 33188,
      "old_path": "include/openssl/base.h",
      "new_id": "67429c099d9d895292f5a5622e2e5c3c0a3c6d9a",
      "new_mode": 33188,
      "new_path": "include/openssl/base.h"
    },
    {
      "type": "modify",
      "old_id": "911f2f01f187b2298d84051ea3de5cac0e8c5543",
      "old_mode": 33188,
      "old_path": "include/openssl/ssl.h",
      "new_id": "53aa9b4532b9ea76dfa80cf16bbc802262fd76d3",
      "new_mode": 33188,
      "new_path": "include/openssl/ssl.h"
    },
    {
      "type": "modify",
      "old_id": "0d4206c58c36b205158b838910b556ff6c3d7b36",
      "old_mode": 33188,
      "old_path": "ssl/ssl_cipher.cc",
      "new_id": "ebb075351ee62d674028dbb1d9ea199521d369db",
      "new_mode": 33188,
      "new_path": "ssl/ssl_cipher.cc"
    },
    {
      "type": "modify",
      "old_id": "1b01c4614b3ce2dc7e3a09658f56f47354d59ce1",
      "old_mode": 33188,
      "old_path": "ssl/ssl_key_share.cc",
      "new_id": "09a9ad3803b70ea881780ae5f9f9b3154e593c80",
      "new_mode": 33188,
      "new_path": "ssl/ssl_key_share.cc"
    },
    {
      "type": "modify",
      "old_id": "5a75b5e5172868743c68f4fd1b78bb7b3ab9341e",
      "old_mode": 33188,
      "old_path": "ssl/ssl_privkey.cc",
      "new_id": "46bef32e89b5b88772e0b8059dc436aa9f7d68e2",
      "new_mode": 33188,
      "new_path": "ssl/ssl_privkey.cc"
    },
    {
      "type": "modify",
      "old_id": "a665ced9346ec714515c9908fec198a867029242",
      "old_mode": 33188,
      "old_path": "ssl/ssl_test.cc",
      "new_id": "ef43a9e98ccee16b77d2ab1b8da64229fa51c467",
      "new_mode": 33188,
      "new_path": "ssl/ssl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "964f7c93ef319d8207a6f03a828f3a091d08cc89",
      "old_mode": 33188,
      "old_path": "ssl/ssl_versions.cc",
      "new_id": "a836606d0973f78e25e41a3dd4f1f3f4a0978f25",
      "new_mode": 33188,
      "new_path": "ssl/ssl_versions.cc"
    },
    {
      "type": "modify",
      "old_id": "c64bb167fee45f9adbc2cf2492f22cc6c75d1ceb",
      "old_mode": 33188,
      "old_path": "ssl/test/bssl_shim.cc",
      "new_id": "2640de7a70850c87e3cf0f2872dbb3efe94a2d4f",
      "new_mode": 33188,
      "new_path": "ssl/test/bssl_shim.cc"
    }
  ]
}
