)]}'
{
  "commit": "f83f98788b63d7b50e5c9a26fe5b97d0dd82ac8c",
  "tree": "3d681b8b9269d6d48d2fd577917a0e6fa3964332",
  "parents": [
    "6be2f31b1381e094d4f806787fc0b08e6c82c678"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Mon Apr 28 17:18:38 2025 -0400"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Apr 29 11:51:38 2025 -0700"
  },
  "message": "Remove STACK_OF(BIGNUM) from BN_CTX\n\nWith C++, we have better tools for containers than STACK_OF(T). We can\nalso just declare constructors and destructors for our types.\n\nThis also fixes a FIPS + CFI incompatibility. STACK_OF(BIGNUM), as part\nof the mess type erasure tricks it used, needed to pass a function\npointer taken from BCM, out of BCM. (This doesn\u0027t fix all the issues.\nThere are still two more.)\n\nIt would really be nice to take BN_CTX out of BCM altogether, but that\nwill take a lot more work. Either way, it can be the first guinea pig\nfor a destructor-managed libcrypto type.\n\nUpdate-Note: With something in libcrypto using crypto/mem_internal.h, we\nnow depend on quite a bit more of an STL in libcrypto. But we already\ndepended on \u003cmemory\u003e for std::unique_ptr before.\n\nBug: 394340436, 413519751\nChange-Id: Ia26ea9cd6b01542d569d6ef6f41f528b3cc72c14\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/78890\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\nAuto-Submit: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7cc7c9bd6bac817000cf61e5a1eb319f8de79533",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/bn/ctx.cc.inc",
      "new_id": "a862ac29f20faba8de6fe7bdb6c11a69250e60bb",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/bn/ctx.cc.inc"
    }
  ]
}
