)]}'
{
  "commit": "8cbb5f8f204d188211b340412cc0dd4d5b09649a",
  "tree": "8f1c06972eec8fb3e1cac4fcebbbd237a360233b",
  "parents": [
    "23dcf88e1875666f26bd0bf0a7fde9260eda7ee6"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Fri Jan 25 16:36:28 2019 -0600"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Fri Jan 25 23:08:12 2019 +0000"
  },
  "message": "Add a very roundabout EC keygen API.\n\nOpenSSL\u0027s EVP-level EC API involves a separate \"paramgen\" operation,\nwhich is ultimately just a roundabout way to go from a NID to an\nEC_GROUP. But Node uses this, and it\u0027s the pattern used within OpenSSL\nthese days, so this appears to be the official upstream recommendation.\n\nAlso add a #define for OPENSSL_EC_EXPLICIT_CURVE, because Node uses it,\nbut fail attempts to use it. Explicit curve encodings are forbidden by\nRFC 5480 and generally a bad idea. (Parsing such keys back into OpenSSL\nwill cause it to lose the optimized path.)\n\nChange-Id: I5e97080e77cf90fc149f6cf6f2cc4900f573fc64\nReviewed-on: https://boringssl-review.googlesource.com/c/34565\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3599f77838731147c4812e85fb8f6145835c77af",
      "old_mode": 33188,
      "old_path": "crypto/evp/evp_ctx.c",
      "new_id": "daa1954b5e1c2d377660eb6bb36769b84fa39ac5",
      "new_mode": 33188,
      "new_path": "crypto/evp/evp_ctx.c"
    },
    {
      "type": "modify",
      "old_id": "f12650ef11f15a4bcd2c4e3a1bc08fb7e3e07abc",
      "old_mode": 33188,
      "old_path": "crypto/evp/evp_extra_test.cc",
      "new_id": "1f6a61d35034bae1581277389d779b9f5404fe92",
      "new_mode": 33188,
      "new_path": "crypto/evp/evp_extra_test.cc"
    },
    {
      "type": "modify",
      "old_id": "4aefa3526235b499fe85f55fae4b0ab38ca44dbe",
      "old_mode": 33188,
      "old_path": "crypto/evp/internal.h",
      "new_id": "43847ea16655dac1061cbb9f4c9a4d18fc03e777",
      "new_mode": 33188,
      "new_path": "crypto/evp/internal.h"
    },
    {
      "type": "modify",
      "old_id": "d311d22091150b0f8fd381ba0b1c2b305c0e2f06",
      "old_mode": 33188,
      "old_path": "crypto/evp/p_ec.c",
      "new_id": "9c325ae0cf6683e1bff366e8cf6ed17b6132ca1d",
      "new_mode": 33188,
      "new_path": "crypto/evp/p_ec.c"
    },
    {
      "type": "modify",
      "old_id": "554a379c7501dae26b6047e65c061523c0372f08",
      "old_mode": 33188,
      "old_path": "crypto/evp/p_ed25519.c",
      "new_id": "062ea458819d0dca3e86d5c4d41abac9bb319a9b",
      "new_mode": 33188,
      "new_path": "crypto/evp/p_ed25519.c"
    },
    {
      "type": "modify",
      "old_id": "cfc6bea1e29d6b1d9ff1cd7337d07010e51af203",
      "old_mode": 33188,
      "old_path": "crypto/evp/p_rsa.c",
      "new_id": "eb59901e3c7fe85e89219d5698ce04325b984a2a",
      "new_mode": 33188,
      "new_path": "crypto/evp/p_rsa.c"
    },
    {
      "type": "modify",
      "old_id": "16dadf27a7b31da6ecacd573759d0da7b4ce1372",
      "old_mode": 33188,
      "old_path": "include/openssl/ec.h",
      "new_id": "fcecb62252a97ae5ea703ac16760863de8702316",
      "new_mode": 33188,
      "new_path": "include/openssl/ec.h"
    },
    {
      "type": "modify",
      "old_id": "cbe93d80f480d2816aaccbb7df02d80e9c1db678",
      "old_mode": 33188,
      "old_path": "include/openssl/evp.h",
      "new_id": "c4469841fd482527bf2ee5c8af1fafccb665af4c",
      "new_mode": 33188,
      "new_path": "include/openssl/evp.h"
    }
  ]
}
