boringssl/ssl
David Benjamin b4d65fda70 Implement asynchronous private key operations for client auth.
This adds a new API, SSL_set_private_key_method, which allows the consumer to
customize private key operations. For simplicity, it is incompatible with the
multiple slots feature (which will hopefully go away) but does not, for now,
break it.

The new method is only routed up for the client for now. The server will
require a decrypt hook as well for the plain RSA key exchange.

BUG=347404

Change-Id: I35d69095c29134c34c2af88c613ad557d6957614
Reviewed-on: https://boringssl-review.googlesource.com/5049
Reviewed-by: Adam Langley <agl@google.com>
2015-06-18 22:14:51 +00:00
..
pqueue Fix some malloc test crashs. 2015-05-21 18:00:10 +00:00
test Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
CMakeLists.txt Add malloc test support to unit tests. 2015-05-21 17:59:48 +00:00
d1_both.c DTLS fragments may not be split across two records. 2015-06-16 18:20:56 +00:00
d1_clnt.c Prune ssl3_check_cert_and_algorithm. 2015-06-08 22:27:12 +00:00
d1_lib.c Further tidy up cipher logic. 2015-06-01 22:48:30 +00:00
d1_meth.c Further tidy up cipher logic. 2015-06-01 22:48:30 +00:00
d1_pkt.c Split ssl_read_bytes hook into app_data and close_notify hooks. 2015-06-01 22:27:55 +00:00
d1_srtp.c Fix STACK_OF pointer style. 2015-05-06 22:55:16 +00:00
d1_srvr.c Decide whether or not to request client certificates early. 2015-05-27 21:53:16 +00:00
internal.h Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
s3_both.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
s3_clnt.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
s3_enc.c Remove unnecessary NULL checks, part 5. 2015-05-04 23:16:19 +00:00
s3_lib.c Further tidy up cipher logic. 2015-06-01 22:48:30 +00:00
s3_meth.c Further tidy up cipher logic. 2015-06-01 22:48:30 +00:00
s3_pkt.c Limit the number of warning alerts silently consumed. 2015-06-08 22:16:14 +00:00
s3_srvr.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
ssl_aead_ctx.c Factor SSL_AEAD_CTX into a dedicated type. 2015-05-21 17:59:15 +00:00
ssl_algs.c Rename ssl_locl.h to internal.h 2015-04-10 22:14:09 +00:00
ssl_asn1.c Duplicate SSL_SESSIONs when renewing them. 2015-06-16 18:15:12 +00:00
ssl_cert.c Preserve session->sess_cert on ticket renewal. 2015-06-18 17:53:57 +00:00
ssl_cipher.c Add ECDHE-PSK-AES{128,256}-SHA cipher suites. 2015-06-09 18:10:42 +00:00
ssl_lib.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
ssl_rsa.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
ssl_sess.c Remove remaining calls to the old lock functions. 2015-05-20 19:18:13 +00:00
ssl_stat.c Remove SSL_in_before and SSL_ST_BEFORE. 2015-05-21 20:51:06 +00:00
ssl_test.cc Add SSL_SESSION_from_bytes. 2015-06-16 18:12:39 +00:00
ssl_txt.c Rename ssl_locl.h to internal.h 2015-04-10 22:14:09 +00:00
t1_enc.c Fold TLS1_PRF_* into SSL_HANDSHAKE_MAC_* 2015-06-01 22:43:06 +00:00
t1_lib.c Implement asynchronous private key operations for client auth. 2015-06-18 22:14:51 +00:00
t1_reneg.c Include-what-you-use ssl/internal.h. 2015-04-10 22:15:02 +00:00