aboutsummaryrefslogtreecommitdiffstats
path: root/ssl/s23_lib.c
diff options
context:
space:
mode:
authorTomas Mraz <tmraz@redhat.com>2014-06-27 16:49:22 +0100
committerDr. Stephen Henson <steve@openssl.org>2014-06-27 16:51:26 +0100
commit0436369fccd128cb7f6a8538d5fed1c876c437af (patch)
tree546c3da9e3f39d45a0d57ac234dfbfdc254bdee4 /ssl/s23_lib.c
parent0535c2d67ca2d684087ef90be35d5fb207aab227 (diff)
downloadopenssl-0436369fccd128cb7f6a8538d5fed1c876c437af.tar.gz
Don't advertise ECC ciphersuits in SSLv2 compatible client hello.
PR#3374
Diffstat (limited to 'ssl/s23_lib.c')
-rw-r--r--ssl/s23_lib.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ssl/s23_lib.c b/ssl/s23_lib.c
index 3bf728318a..f3c29d1dde 100644
--- a/ssl/s23_lib.c
+++ b/ssl/s23_lib.c
@@ -107,6 +107,13 @@ int ssl23_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p)
long l;
/* We can write SSLv2 and SSLv3 ciphers */
+ /* but no ECC ciphers */
+ if (c->algorithm_mkey == SSL_kECDHr ||
+ c->algorithm_mkey == SSL_kECDHe ||
+ c->algorithm_mkey == SSL_kEECDH ||
+ c->algorithm_auth == SSL_aECDH ||
+ c->algorithm_auth == SSL_aECDSA)
+ return 0;
if (p != NULL)
{
l=c->id;