)]}'
{
  "commit": "8e2236eff8e38109a57347c8ad795040b380c936",
  "tree": "22f926a2a915e28f23f673d75e342aa829093d65",
  "parents": [
    "694c9180d7f082b896692048052413fc5dc4e467"
  ],
  "author": {
    "name": "Benjamin Kaduk",
    "email": "bkaduk@akamai.com",
    "time": "Mon Feb 13 15:10:54 2017 -0600"
  },
  "committer": {
    "name": "Richard Levitte",
    "email": "levitte@openssl.org",
    "time": "Thu Feb 23 19:40:27 2017 +0100"
  },
  "message": "Let test handshakes stop on certain errors\n\nCertain callback APIs allow the callback to request async processing\nby trickling a particular error value up the stack to the application\nas an error return from the handshake function.  In those cases,\nSSL_want() returns a code specific to the type of async processing\nneeded.\n\nThe create_ssl_connection() helper function for the tests is very\nhelpful for several things, including creating API tests.  However,\nit does not currently let us test the async processing functionality\nof these callback interfaces, because the special SSL error codes\nare treated as generic errors and the helper continues to loop until\nit reaches its maximum iteration count.\n\nAdd a new parameter, \u0027want\u0027, that indicates an expected/desired\nspecial SSL error code, so that the helper will terminate when\neither side reports that error, giving control back to the calling\nfunction and allowing the test to proceed.\n\nReviewed-by: Matt Caswell \u003cmatt@openssl.org\u003e\nReviewed-by: Richard Levitte \u003clevitte@openssl.org\u003e\n(Merged from https://github.com/openssl/openssl/pull/2279)",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d4edd949362ca85f79399ca9bc7181c5934367dd",
      "old_mode": 33188,
      "old_path": "test/asynciotest.c",
      "new_id": "f418bbeb2c6169b0e67550c1d12f9b4ab1537bef",
      "new_mode": 33188,
      "new_path": "test/asynciotest.c"
    },
    {
      "type": "modify",
      "old_id": "1a05c541f7d66efb04970c696da51ef45945b763",
      "old_mode": 33188,
      "old_path": "test/dtls_mtu_test.c",
      "new_id": "24d4ccc552c2169a1d43b22c2eefce5392536cf5",
      "new_mode": 33188,
      "new_path": "test/dtls_mtu_test.c"
    },
    {
      "type": "modify",
      "old_id": "b4a756f83d4290926ffeb551d2392eaa900dc6cb",
      "old_mode": 33188,
      "old_path": "test/dtlstest.c",
      "new_id": "bc22d3254c2075b712cab9b44f870887970331ad",
      "new_mode": 33188,
      "new_path": "test/dtlstest.c"
    },
    {
      "type": "modify",
      "old_id": "47f008a711c9122ef8f60d8c37282b2b461d9752",
      "old_mode": 33188,
      "old_path": "test/sslapitest.c",
      "new_id": "cc852952e7cf45b56653c87c7452e2477a9c6870",
      "new_mode": 33188,
      "new_path": "test/sslapitest.c"
    },
    {
      "type": "modify",
      "old_id": "c1f074b11d4cb40e4bb04ce8ec0bfa5bb98d1872",
      "old_mode": 33188,
      "old_path": "test/sslcorrupttest.c",
      "new_id": "8ccad16f28f492d12b46c76cbe0381d652f12344",
      "new_mode": 33188,
      "new_path": "test/sslcorrupttest.c"
    },
    {
      "type": "modify",
      "old_id": "8a4dd49d5c7eff624ef76029c1b56fab0fdd9260",
      "old_mode": 33188,
      "old_path": "test/ssltestlib.c",
      "new_id": "64aa9169b692e2c0e16f14b02dd22264629ba200",
      "new_mode": 33188,
      "new_path": "test/ssltestlib.c"
    },
    {
      "type": "modify",
      "old_id": "bd9272f1dcbbb2aeb25d70d7d46c8510db8b0584",
      "old_mode": 33188,
      "old_path": "test/ssltestlib.h",
      "new_id": "e74a5ccab280ca32344f2616a00dbea002624950",
      "new_mode": 33188,
      "new_path": "test/ssltestlib.h"
    }
  ]
}
