)]}'
{
  "commit": "6965d25602754bc419c5f757d008ba1f4da49ae4",
  "tree": "5c9f42531382832c859d4c7101f03131b5257443",
  "parents": [
    "4f746a9073333d35db49173a8dbdc076004fa7d1"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Mon Nov 19 15:49:56 2018 -0600"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Wed Nov 21 18:22:57 2018 +0000"
  },
  "message": "Work around a JDK 11 TLS 1.3 bug.\n\nJDK 11 shipped with a TLS 1.3 implementation enabled by default.\nUnfortunately, that implementation does not work and fails to send the\nSNI extension on resumption. See\nhttps://bugs.openjdk.java.net/browse/JDK-8211806.\n\nThis means servers which enable TLS 1.3 will see JDK 11 clients work on\nthe first connection and then fail on all subsequent connections. Add\nSSL_set_jdk11_workaround which configures a workaround to fingerprint\nJDK 11 and disable TLS 1.3 with the faulty clients.\n\nJDK 11 also implemented the downgrade signal, which means that\nconnections that trigger the workaround also must not send the downgrade\nsignal. Unfortunately, the downgrade signal\u0027s security properties are\nsensitive to the existence of any unmarked TLS 1.2 ServerHello paths. To\nsalvage this, pick a new random downgrade marker for this scenario and\nmodify the client to treat it as an alias of the standard one.\n\nPer the link above, JDK 11.0.2 will fix this bug. Hopefully the\nworkaround can be retired sometime after it is released.\n\nChange-Id: I0627609a8cadf7cc214073eb7f1e880acdf613ef\nReviewed-on: https://boringssl-review.googlesource.com/c/33284\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cecf78fa1f35fe7dc215d9ccc76cbe86dd63c378",
      "old_mode": 33188,
      "old_path": "include/openssl/ssl.h",
      "new_id": "17c5592592f534e03cf113737d1bf7b81d311b32",
      "new_mode": 33188,
      "new_path": "include/openssl/ssl.h"
    },
    {
      "type": "modify",
      "old_id": "b1da056e5f6bb430d8ec2ca7a2a9d6eff9c0797d",
      "old_mode": 33188,
      "old_path": "ssl/handshake.cc",
      "new_id": "058a793503c542c89c2c28b2b5867ec370032486",
      "new_mode": 33188,
      "new_path": "ssl/handshake.cc"
    },
    {
      "type": "modify",
      "old_id": "a41eb62068a3727455ab8e1630f7e97c832220fa",
      "old_mode": 33188,
      "old_path": "ssl/handshake_client.cc",
      "new_id": "c1d54bd8fccebde31e5f6ec963a363ff13f2c413",
      "new_mode": 33188,
      "new_path": "ssl/handshake_client.cc"
    },
    {
      "type": "modify",
      "old_id": "c5460886b545e3079742246d827192f94656ea67",
      "old_mode": 33188,
      "old_path": "ssl/handshake_server.cc",
      "new_id": "c4f3b75e5bdfff53bf4c1772ebce474124646231",
      "new_mode": 33188,
      "new_path": "ssl/handshake_server.cc"
    },
    {
      "type": "modify",
      "old_id": "fa86bda3605bdb1cde8008a9b924eb9161661be8",
      "old_mode": 33188,
      "old_path": "ssl/internal.h",
      "new_id": "f8a2ea70a8a53f4f585ed5ac6b423b12085caac3",
      "new_mode": 33188,
      "new_path": "ssl/internal.h"
    },
    {
      "type": "modify",
      "old_id": "01d64ed8749d37098d030abc75c0458a0de11f82",
      "old_mode": 33188,
      "old_path": "ssl/ssl_lib.cc",
      "new_id": "b9c823d951551cf5c054ae6555472ebaca663bdb",
      "new_mode": 33188,
      "new_path": "ssl/ssl_lib.cc"
    },
    {
      "type": "modify",
      "old_id": "7df7fe762139e0ed57f4a6c537d46c8ecc103b34",
      "old_mode": 33188,
      "old_path": "ssl/ssl_versions.cc",
      "new_id": "861696762c5ab1eceddde83d2e7062e57677f8b5",
      "new_mode": 33188,
      "new_path": "ssl/ssl_versions.cc"
    },
    {
      "type": "modify",
      "old_id": "38c4b70fb96fadfb28d7b284615c709bceee0baf",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/chacha20_poly1305_test.go",
      "new_id": "b59bb02beb37d1da60ac9bc524bdfc7b4fe4f89e",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/chacha20_poly1305_test.go"
    },
    {
      "type": "modify",
      "old_id": "702814ddfb6e31347c03a6e50a105667af12cbb9",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/common.go",
      "new_id": "73b8889e953f584de7f4d64bfdcebfc22b644f03",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/common.go"
    },
    {
      "type": "modify",
      "old_id": "4dfa46994dc3a757957d7745464094c8f88872cd",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_client.go",
      "new_id": "d25bbabbe46de390cd2db3c8c64f1d13fa7d5289",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_client.go"
    },
    {
      "type": "modify",
      "old_id": "edc5a925be6e4d94649d361d77a60ec27751b80f",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_messages.go",
      "new_id": "e0867a51888005bc7e81236a28951d91ad91f2c1",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_messages.go"
    },
    {
      "type": "modify",
      "old_id": "4950a4fe446c3b37d55ff783f80a30b67723903b",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/handshake_server.go",
      "new_id": "6a7524214f91fb4656201507c6cd01cf1ecfc5f9",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/handshake_server.go"
    },
    {
      "type": "modify",
      "old_id": "ab46557910263bef686f0449002480045558e0cc",
      "old_mode": 33188,
      "old_path": "ssl/test/runner/runner.go",
      "new_id": "fadc890fda0b5200a90378b87a02ca4e226130ec",
      "new_mode": 33188,
      "new_path": "ssl/test/runner/runner.go"
    },
    {
      "type": "modify",
      "old_id": "52e6cf76d37691c93379e34653d2adb34bbed2f9",
      "old_mode": 33188,
      "old_path": "ssl/test/test_config.cc",
      "new_id": "7447d5ad64c2f6124e755cf5415319a40f8b29f1",
      "new_mode": 33188,
      "new_path": "ssl/test/test_config.cc"
    },
    {
      "type": "modify",
      "old_id": "b65ca4246ae60a2355ff95e974f01b17cf75d397",
      "old_mode": 33188,
      "old_path": "ssl/test/test_config.h",
      "new_id": "bffe911856359e328d89231195acefc2e2188284",
      "new_mode": 33188,
      "new_path": "ssl/test/test_config.h"
    },
    {
      "type": "modify",
      "old_id": "299fc14cccde098abc95581e041a3f5f40a9e720",
      "old_mode": 33188,
      "old_path": "ssl/tls13_both.cc",
      "new_id": "6baeaf717df50407a7be71b46c3303a895845ed4",
      "new_mode": 33188,
      "new_path": "ssl/tls13_both.cc"
    },
    {
      "type": "modify",
      "old_id": "c4b23bf7f23fb6a83e4cba0e548718b512a2bcfb",
      "old_mode": 33188,
      "old_path": "tool/server.cc",
      "new_id": "a655db52f0aa3f0cdc99258302dfbdb6f83618f7",
      "new_mode": 33188,
      "new_path": "tool/server.cc"
    }
  ]
}
