)]}'
{
  "commit": "65ac997f20cb83eb6c7edd6712be63fe1d0f466f",
  "tree": "0e6e9e307027dcb6c2f80a8a55c21885e101a13e",
  "parents": [
    "0c0a94d07bedf2db47bcc93dacd1e33e6b17855e"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Fri Sep 02 21:35:25 2016 -0400"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Fri Sep 23 21:11:15 2016 +0000"
  },
  "message": "Implement draft-davidben-tls-grease-01.\n\nThis GREASEs cipher suites, groups, and extensions. For now, we\u0027ll\nalways place them in a hard-coded position. We can experiment with more\ninteresting strategies later.\n\nIf we add new ciphers and curves, presumably we prefer them over current\nones, so place GREASE values at the front. This prevents implementations\nfrom parsing only the first value and ignoring the rest.\n\nAdd two new extensions, one empty and one non-empty. Place the empty one\nin front (IBM WebSphere can\u0027t handle trailing empty extensions) and the\nnon-empty one at the end.\n\nChange-Id: If2e009936bc298cedf2a7a593ce7d5d5ddbb841a\nReviewed-on: https://boringssl-review.googlesource.com/11241\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nCQ-Verified: CQ bot account: commit-bot@chromium.org \u003ccommit-bot@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8454c3070a05a1b27714d2062ed53b57b6ee2d49",
      "old_mode": 33188,
      "old_path": "include/openssl/ssl.h",
      "new_id": "3cf4e03b1c2a90ba9c8efb482a70ebc98daea651",
      "new_mode": 33188,
      "new_path": "include/openssl/ssl.h"
    },
    {
      "type": "modify",
      "old_id": "d78d0a4f7a1a8190304d35888782c6aba7ab77bc",
      "old_mode": 33188,
      "old_path": "ssl/handshake_client.c",
      "new_id": "584e9ea71cccfc17fde7611586c9bf53de0a3a23",
      "new_mode": 33188,
      "new_path": "ssl/handshake_client.c"
    },
    {
      "type": "modify",
      "old_id": "232364ee5227071f7c6a0b83c22b0118597ea67b",
      "old_mode": 33188,
      "old_path": "ssl/internal.h",
      "new_id": "fca2dda7932d11060032be524f0fa9358ab5e357",
      "new_mode": 33188,
      "new_path": "ssl/internal.h"
    },
    {
      "type": "modify",
      "old_id": "a51688decc847aa04b3137cd9b841679874a7116",
      "old_mode": 33188,
      "old_path": "ssl/ssl_lib.c",
      "new_id": "51c16f08ed72c05cfe5ad314576947c93ccffc4b",
      "new_mode": 33188,
      "new_path": "ssl/ssl_lib.c"
    },
    {
      "type": "modify",
      "old_id": "8db132f0ae422acd30ff8460f6d6754d8ed1ad82",
      "old_mode": 33188,
      "old_path": "ssl/t1_lib.c",
      "new_id": "baa2d45e7bab52ca7d0ef373c57b6825204fca04",
      "new_mode": 33188,
      "new_path": "ssl/t1_lib.c"
    },
    {
      "type": "modify",
      "old_id": "533e7b27b8212ce6d71a5722a072334851c34a69",
      "old_mode": 33188,
      "old_path": "ssl/test/bssl_shim.cc",
      "new_id": "0064e40abdfa9effc2fe7ca9c9e8b086c843790e",
      "new_mode": 33188,
      "new_path": "ssl/test/bssl_shim.cc"
    },
    {
      "type": "modify",
      "old_id": "3300d33d05dbda87c0c79ff66559c5162de6336b",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/common.go",
      "new_id": "02ab23b049071a981f0ddbc2938ed0056112c771",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/common.go"
    },
    {
      "type": "modify",
      "old_id": "63290fb4ac87567a0b442bfb2420234c9062b76b",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_messages.go",
      "new_id": "8cec98b1157907d3af1aede6c2eed858ebc46759",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_messages.go"
    },
    {
      "type": "modify",
      "old_id": "e04075cdb9558b3673c7ef304aae515e1007dbf2",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_server.go",
      "new_id": "604fa140bb71671ff755cfb828523b64ebd8dbaa",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_server.go"
    },
    {
      "type": "modify",
      "old_id": "0d2e6eff8e3e51fa927ee58e5723880e94632ee8",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/runner.go",
      "new_id": "ea660abe98372876f4831972b6cef4a9b86dcb5e",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/runner.go"
    },
    {
      "type": "modify",
      "old_id": "b7dc511b19599d56f6a19915f70cca48dadb0c8c",
      "old_mode": 33188,
      "old_path": "ssl/test/test_config.cc",
      "new_id": "bca194ea4e0404feffe81795645ba6821cde3bc1",
      "new_mode": 33188,
      "new_path": "ssl/test/test_config.cc"
    },
    {
      "type": "modify",
      "old_id": "e0029a5b75e279e60a3b1f27ae2f3c0e484ac670",
      "old_mode": 33188,
      "old_path": "ssl/test/test_config.h",
      "new_id": "d20d1c6a2df732f242513ac1251be1f9e08e5b31",
      "new_mode": 33188,
      "new_path": "ssl/test/test_config.h"
    },
    {
      "type": "modify",
      "old_id": "04a217a7198b1de1ad31ca93c2dc4854c163870b",
      "old_mode": 33188,
      "old_path": "tool/client.cc",
      "new_id": "b9f1c13be057a54792cc43b035047d6e2eb2c1fc",
      "new_mode": 33188,
      "new_path": "tool/client.cc"
    }
  ]
}
