diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2015-11-13 14:37:24 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2015-11-14 00:06:32 +0000 |
commit | 2b573382f8e54aa03a1d8ffd48fa9d0a04609184 (patch) | |
tree | e509f3bb087dbdbf11ab5ef2e5d134e82e68387a /ssl/t1_lib.c | |
parent | 5e3d21fef150f020e2d33439401da8f7e311aa24 (diff) |
Don't alow TLS v1.0 ciphersuites for SSLv3
This disables some ciphersuites which aren't supported in SSL v3:
specifically PSK ciphersuites which use SHA256 or SHA384 for the MAC.
Thanks to the Open Crypto Audit Project for identifying this issue.
Reviewed-by: Matt Caswell <matt@openssl.org>
Diffstat (limited to 'ssl/t1_lib.c')
-rw-r--r-- | ssl/t1_lib.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 943d4733f4..ffc95d848b 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1094,6 +1094,9 @@ void ssl_set_client_disabled(SSL *s) s->s3->tmp.mask_ssl = SSL_TLSV1_2; else s->s3->tmp.mask_ssl = 0; + /* Disable TLS 1.0 ciphers if using SSL v3 */ + if (s->client_version == SSL3_VERSION) + s->s3->tmp.mask_ssl |= SSL_TLSV1; ssl_set_sig_mask(&s->s3->tmp.mask_a, s, SSL_SECOP_SIGALG_MASK); /* * Disable static DH if we don't include any appropriate signature |