boringssl/ssl
David Benjamin fa65113400 Push an error if custom private keys fail.
The private key callback may not push one of its own (it's possible to
register a custom error library and whatnot, but this is tedious). If
the callback does not push any, we report SSL_ERROR_SYSCALL. This is not
completely wrong, as "syscall" really means "I don't know, something you
gave me, probably the BIO, failed so I assume you know what happened",
but most callers just check errno. And indeed cert_cb pushes its own
error, so this probably should as well.

Update-Note: Custom private key callbacks which push an error code on
    failure will report both that error followed by
    SSL_R_PRIVATE_KEY_OPERATION_FAILED. Callbacks which did not push any
    error will switch from SSL_ERROR_SYSCALL to SSL_ERROR_SSL with
    SSL_R_PRIVATE_KEY_OPERATION_FAILED.

Change-Id: I7e90cd327fe0cbcff395470381a3591364a82c74
Reviewed-on: https://boringssl-review.googlesource.com/25544
Reviewed-by: Adam Langley <agl@google.com>
2018-02-01 21:43:42 +00:00
..
test Fix fuzzer mode suppressions. 2018-01-31 22:57:51 +00:00
bio_ssl.cc
CMakeLists.txt Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
custom_extensions.cc Rename ssl3_send_alert and ssl3_protocol_version. 2017-10-12 16:24:35 +00:00
d1_both.cc Give DTLS1_STATE a destructor. 2017-10-25 03:23:26 +00:00
d1_lib.cc Give DTLS1_STATE a destructor. 2017-10-25 03:23:26 +00:00
d1_pkt.cc Make SSL3_BUFFER a proper C++ class. 2017-10-24 17:32:45 +00:00
d1_srtp.cc Clear a goto in d1_srtp.cc. 2017-09-22 15:15:48 +00:00
dtls_method.cc Remove supports_cipher hook. 2017-11-01 16:44:46 +00:00
dtls_record.cc Give DTLS1_STATE a destructor. 2017-10-25 03:23:26 +00:00
handoff.cc Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
handshake_client.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
handshake_server.cc Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
handshake.cc Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
internal.h Add tests for split handshakes. 2018-01-31 22:33:42 +00:00
s3_both.cc Revert "Pack encrypted handshake messages together." 2017-10-27 14:36:37 +00:00
s3_lib.cc Add a draft TLS 1.3 anti-downgrade signal. 2017-12-21 01:50:33 +00:00
s3_pkt.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
span_test.cc
ssl_aead_ctx.cc Remove deprecated TLS 1.3 variants. 2017-12-18 21:20:32 +00:00
ssl_asn1.cc Expose ssl_session_serialize to libssl. 2018-01-26 22:31:47 +00:00
ssl_buffer.cc Move init_buf and rwstate into SSL3_STATE. 2017-10-24 18:55:05 +00:00
ssl_cert.cc Adding support for draft 21 as a TLS 1.3 variant. 2017-11-01 21:32:36 +00:00
ssl_cipher.cc Move the SSL_eNULL special-case into the matching function. 2017-11-01 16:45:06 +00:00
ssl_file.cc Switch OPENSSL_VERSION_NUMBER to 1.1.0. 2017-09-29 04:51:27 +00:00
ssl_key_share.cc Support additional curve names. 2017-11-03 01:32:49 +00:00
ssl_lib.cc Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
ssl_privkey.cc Push an error if custom private keys fail. 2018-02-01 21:43:42 +00:00
ssl_session.cc Use more scopers. 2017-10-24 17:50:05 +00:00
ssl_stat.cc Use more scopers. 2017-10-24 17:50:05 +00:00
ssl_test.cc Add tests for split handshakes. 2018-01-31 22:33:42 +00:00
ssl_transcript.cc Adding support for draft 21 as a TLS 1.3 variant. 2017-11-01 21:32:36 +00:00
ssl_versions.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
ssl_x509.cc Map NOT_YET_VALID errors to |certificate_expired|. 2018-01-05 23:40:40 +00:00
t1_enc.cc Add initial, experimental support for split handshakes. 2018-01-31 22:24:17 +00:00
t1_lib.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
tls13_both.cc Add a draft TLS 1.3 anti-downgrade signal. 2017-12-21 01:50:33 +00:00
tls13_client.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
tls13_enc.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
tls13_server.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00
tls_method.cc Remove supports_cipher hook. 2017-11-01 16:44:46 +00:00
tls_record.cc Remove draft22 and experiment2. 2018-01-31 18:07:53 +00:00