)]}'
{
  "commit": "cfafcd454fd01ebc40f1a7f43537dd306b7b64c3",
  "tree": "edac01afe40951a93a8df47bf0fbc56ed3495b94",
  "parents": [
    "f6ef1c560ae5af51e2df5d8d2175bed207b28b8f"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Thu Oct 14 17:22:23 2021 -0400"
  },
  "committer": {
    "name": "Adam Langley",
    "email": "agl@google.com",
    "time": "Fri Oct 15 20:35:42 2021 +0000"
  },
  "message": "Deduplicate d2i and i2d documentation.\n\nThere are a lot of d2i and i2d functions, and there will be even more\nonce asn1.h and x509.h are properly documented. We currently replicate\nthe text in each, but as a result a miss a few points:\n\n- The i2d outp !\u003d NULL, *outp \u003d\u003d NULL case isn\u0027t documented at all.\n\n- We should call out what to do with *inp after d2i.\n\n- Unlike our rewritten functions, object reuse is still quite rampant\n  with the asn1.h functions. I hope we can get rid of that but, until we\n  can, it would be nice to describe it in one place.\n\nWhile I\u0027m here, update a few references to the latest PKCS#1 RFC, and\ntry to align how we reference ASN.1 structures a bit. The d2i/i2d\nfunctions say \"ASN.1, DER-encoded RSA private key\" while the CBS/CBB\nfunctions say \"DER-encoded RSAPrivateKey structure\".\n\nBug: 426\nChange-Id: I8d9a7b0aef3d6d9c8240136053c3b1704b09fd41\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/49906\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2f3e115ec7365a6530a0d6ffdded05ec44f47a6c",
      "old_mode": 33188,
      "old_path": "crypto/evp/evp_asn1.c",
      "new_id": "da0998168f42bd781c58a07d22b3812c61dc32ea",
      "new_mode": 33188,
      "new_path": "crypto/evp/evp_asn1.c"
    },
    {
      "type": "modify",
      "old_id": "5ef3742019ddae0273c075e94076713bcf8b35cc",
      "old_mode": 33188,
      "old_path": "include/openssl/bytestring.h",
      "new_id": "923e3d31058799c188f9c563b60f802b6ddd4daf",
      "new_mode": 33188,
      "new_path": "include/openssl/bytestring.h"
    },
    {
      "type": "modify",
      "old_id": "9a86e9e7c33856774f12564eaf00b159d6d4bd4f",
      "old_mode": 33188,
      "old_path": "include/openssl/dh.h",
      "new_id": "21c962324c46076d4c237c27ec8cfcfa2411ea2a",
      "new_mode": 33188,
      "new_path": "include/openssl/dh.h"
    },
    {
      "type": "modify",
      "old_id": "e8ae88a0f86325bf3b8511fce15085a7bdae9b28",
      "old_mode": 33188,
      "old_path": "include/openssl/dsa.h",
      "new_id": "166525119f6fd1b90526d58250b045cd51a0fc96",
      "new_mode": 33188,
      "new_path": "include/openssl/dsa.h"
    },
    {
      "type": "modify",
      "old_id": "932ad8e6c7f56589b98d4285d174cc8abc38b2d7",
      "old_mode": 33188,
      "old_path": "include/openssl/ec_key.h",
      "new_id": "3a408566060f8195a74b49ad1583bc40e30758bf",
      "new_mode": 33188,
      "new_path": "include/openssl/ec_key.h"
    },
    {
      "type": "modify",
      "old_id": "5443ef54c56af2284f3fd2745ac7c3287f5b1b80",
      "old_mode": 33188,
      "old_path": "include/openssl/ecdsa.h",
      "new_id": "bc0dba56244587bb4e5badcee1cf34ae35534b08",
      "new_mode": 33188,
      "new_path": "include/openssl/ecdsa.h"
    },
    {
      "type": "modify",
      "old_id": "c5678754cb343b977c3d31c5ee02c57492c18369",
      "old_mode": 33188,
      "old_path": "include/openssl/evp.h",
      "new_id": "e195907a201528a35e6ffa564464e7ca40f2fbde",
      "new_mode": 33188,
      "new_path": "include/openssl/evp.h"
    },
    {
      "type": "modify",
      "old_id": "77e13d7c707f683aeebcb93ba1ffb5e8a965f498",
      "old_mode": 33188,
      "old_path": "include/openssl/pkcs7.h",
      "new_id": "429e91c89312eb53f25702cfaf8922f4dc3804b5",
      "new_mode": 33188,
      "new_path": "include/openssl/pkcs7.h"
    },
    {
      "type": "modify",
      "old_id": "95a478a35675465f98ff18950427fce6eb73e618",
      "old_mode": 33188,
      "old_path": "include/openssl/rsa.h",
      "new_id": "b1336dd15e569269e0b4c0b575c8dea688d3250c",
      "new_mode": 33188,
      "new_path": "include/openssl/rsa.h"
    },
    {
      "type": "modify",
      "old_id": "f42153882ce3b412ee67000ff05972af4e245f74",
      "old_mode": 33188,
      "old_path": "include/openssl/ssl.h",
      "new_id": "f731f8fc4832837f9477f7f6254fe0c2d79bead2",
      "new_mode": 33188,
      "new_path": "include/openssl/ssl.h"
    },
    {
      "type": "modify",
      "old_id": "db6eddea87c8202876e6d632f333a010aaa226c7",
      "old_mode": 33188,
      "old_path": "include/openssl/x509.h",
      "new_id": "59f2adfa90fc5083299b41b7d14cbdf89d6e3504",
      "new_mode": 33188,
      "new_path": "include/openssl/x509.h"
    }
  ]
}
