)]}'
{
  "commit": "4cce955d1487b5bd2b3c03ead986558649cdaadf",
  "tree": "4961944cd076d1d5cb1fd018aef3b712abf04319",
  "parents": [
    "200fe6786b820414444615bb6c2bb09fce90b6c3"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Thu Dec 13 12:20:54 2018 -0600"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Thu Dec 13 19:30:49 2018 +0000"
  },
  "message": "Fix thread-safety bug in SSL_get_peer_cert_chain.\n\nhttps://boringssl-review.googlesource.com/12704 pushed it just too far\nto the edge. Once we have an established SSL_SESSION, any modifications\nneed to either be locked or done ahead of time. Do it ahead of time.\nsession-\u003eis_server gives a suitable place to check and X509s are\nref-counted so this should be cheap.\n\nAdd a regression test via TSan. Confirmed that TSan indeed catches this.\n\nChange-Id: I30ce7b757d3a44465b318af3c98961ff3667483e\nReviewed-on: https://boringssl-review.googlesource.com/c/33606\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "669f776dddd790a2aad04322db00dc355105dd79",
      "old_mode": 33188,
      "old_path": "ssl/ssl_asn1.cc",
      "new_id": "3fd7fb6a7bbc6d84689e0ee9d9db3aa18ce3def3",
      "new_mode": 33188,
      "new_path": "ssl/ssl_asn1.cc"
    },
    {
      "type": "modify",
      "old_id": "705528b3b7b5c669fdb0ed11e30d453eaeaa5c4f",
      "old_mode": 33188,
      "old_path": "ssl/ssl_test.cc",
      "new_id": "8d01c03a4d5d21ea0eb0ffb888710916723b9ddb",
      "new_mode": 33188,
      "new_path": "ssl/ssl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "ec203b224119453ff56a65f1636c9823e8b320f9",
      "old_mode": 33188,
      "old_path": "ssl/ssl_x509.cc",
      "new_id": "eb3a38b73b4b89dc5a54e526747cb05585e3109c",
      "new_mode": 33188,
      "new_path": "ssl/ssl_x509.cc"
    }
  ]
}
