Add client side support to tls_choose_sigalg.
authorDr. Stephen Henson <steve@openssl.org>
Wed, 15 Feb 2017 16:19:43 +0000 (16:19 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Thu, 16 Feb 2017 16:43:44 +0000 (16:43 +0000)
commit717a265aa5f618fb30f857f240f6b2b0ab7ad4c7
tree244ba35e0eaa01f66fb962b8e8b0764545f41cba
parent0cb8c9d85e9d5690670d6f1f02e8ccc756520210
Add client side support to tls_choose_sigalg.

Select appropriate signature algorithm and certificate for client
authentication using tls_choose_sigalg.

A lot of selection logic is very similar except not finding a
certificate is not a fatal error: we just do not present a
certificate.

For TLS 1.2 and earlier we only check the current certificate
is suitable (for compatibility with previous logic) for TLS 1.3
(where there are no compatibility issues) we support multiple
client certificates for different algorithms.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2643)
ssl/t1_lib.c