)]}'
{
  "commit": "06296a8d063967d452a34d06320236cc68bef7ed",
  "tree": "f80f2ca34a7a71608a5f4119d2e0ac4bc50803c3",
  "parents": [
    "26111abe5ba1546ed41a8940a609c58445b853c0"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Wed Aug 27 14:49:25 2025 -0400"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Sep 03 20:52:57 2025 -0700"
  },
  "message": "Make CBS/CBB-versions of crypto/asn1 types\n\nI had hoped to do this incrementally, but X509_ALGOR contains an\nASN1_TYPE, so all types get imported at once. For now, these functions\nare just wired up to tasn_dec.cc, but subsequent changes will read them\none-by-one.\n\nFor the parse convention, I opted for a caller-supplied output variable,\neven though we\u0027ve generally tried to avoid object reuse in the\ncaller-exposed d2i functions. At the level of core ASN.1 types, the\nobject reuse is hopefully manageable (and in practice I expect they\u0027ll\nalways be in the empty state). The motivation here is to let us\ninternally embed types into the X509, etc., structs and avoid the layers\nof tiny allocations.\n\nThis does mean that the dispatch code inside ASN1_TYPE and the dispatch\ncode in tasn_dec.cc is no longer shared, but that sharing wasn\u0027t valid\nby strict aliasing anyway. (Nothing in tasn_dec.cc is valid by strict\naliasing.)\n\nBug: 42290417\nChange-Id: Idb6910e23f4fa4d01ee39ebcbf2ae09df14e87e3\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/81772\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f3b2faec7716da2a0f06240ca6ca500bbf894c30",
      "old_mode": 33188,
      "old_path": "crypto/asn1/a_gentm.cc",
      "new_id": "7596a1fdc6e4965045ab40404a98122d53ce458e",
      "new_mode": 33188,
      "new_path": "crypto/asn1/a_gentm.cc"
    },
    {
      "type": "modify",
      "old_id": "e6417055a6653e1b74e86654b34913e3b4fb606a",
      "old_mode": 33188,
      "old_path": "crypto/asn1/a_int.cc",
      "new_id": "3f2bc24c5d10fca6502b993f05936a3bc751f09e",
      "new_mode": 33188,
      "new_path": "crypto/asn1/a_int.cc"
    },
    {
      "type": "modify",
      "old_id": "a4ede8a6c0f329348090daa0428b8516a4be07cc",
      "old_mode": 33188,
      "old_path": "crypto/asn1/a_object.cc",
      "new_id": "bb4bc4ad79ccbd5ad84ab618c653987b41dbbfd3",
      "new_mode": 33188,
      "new_path": "crypto/asn1/a_object.cc"
    },
    {
      "type": "modify",
      "old_id": "92e9ede52e53f571bf6857d169e1068386f3f1b8",
      "old_mode": 33188,
      "old_path": "crypto/asn1/a_type.cc",
      "new_id": "23629e0711c02dd6c9be6e7ce82b12a7a19e6aa8",
      "new_mode": 33188,
      "new_path": "crypto/asn1/a_type.cc"
    },
    {
      "type": "modify",
      "old_id": "5c9e3598759fe427ad29d743e1d3200801d90a77",
      "old_mode": 33188,
      "old_path": "crypto/asn1/a_utctm.cc",
      "new_id": "a0298a257c830805efea918a9edcf0f6ad4c2b46",
      "new_mode": 33188,
      "new_path": "crypto/asn1/a_utctm.cc"
    },
    {
      "type": "modify",
      "old_id": "ad8c822f11b01ac6e7dab10132f5d8923678e86d",
      "old_mode": 33188,
      "old_path": "crypto/asn1/asn1_lib.cc",
      "new_id": "ececcdcad9ee3389c38b95a67fa9bf9ce24d6a3b",
      "new_mode": 33188,
      "new_path": "crypto/asn1/asn1_lib.cc"
    },
    {
      "type": "modify",
      "old_id": "54d2cb4d53be089bb15eeb5d5d311e6feabf1b0a",
      "old_mode": 33188,
      "old_path": "crypto/asn1/asn1_test.cc",
      "new_id": "be865ce9dfbe78f631d9af6054dc4a1bc831c32b",
      "new_mode": 33188,
      "new_path": "crypto/asn1/asn1_test.cc"
    },
    {
      "type": "modify",
      "old_id": "b64e55e402e512bc24bc46c13b2e921a92c8591c",
      "old_mode": 33188,
      "old_path": "crypto/asn1/internal.h",
      "new_id": "74657e000188c8f0f1c11e32d0ebd4303c7eca43",
      "new_mode": 33188,
      "new_path": "crypto/asn1/internal.h"
    },
    {
      "type": "modify",
      "old_id": "627c13588f4cf6df2025c9f4dcb9dc8d12247fce",
      "old_mode": 33188,
      "old_path": "crypto/asn1/tasn_dec.cc",
      "new_id": "1d2b34b46aa0608b1dc96863e16293799212592f",
      "new_mode": 33188,
      "new_path": "crypto/asn1/tasn_dec.cc"
    },
    {
      "type": "modify",
      "old_id": "1d11ae890ac677c3711c30ef56abe9820ad67705",
      "old_mode": 33188,
      "old_path": "crypto/asn1/tasn_typ.cc",
      "new_id": "3c1e13fd6a4016f05d564a46bbc49142bbb5c858",
      "new_mode": 33188,
      "new_path": "crypto/asn1/tasn_typ.cc"
    }
  ]
}
