summaryrefslogtreecommitdiffstats
path: root/ssl/s2_lib.c
diff options
context:
space:
mode:
authorBodo Moeller <bodo@openssl.org>2014-10-15 04:18:29 +0200
committerBodo Moeller <bodo@openssl.org>2014-10-15 04:18:29 +0200
commitc6a876473cbff0fd323c8abcaace98ee2d21863d (patch)
treee27388ca48f3cc5c4306e0ffee56e592e07fe661 /ssl/s2_lib.c
parent5a7fc89394bb11dc8ac578d23d77762d2d58fff2 (diff)
Support TLS_FALLBACK_SCSV.
Reviewed-by: Stephen Henson <steve@openssl.org>
Diffstat (limited to 'ssl/s2_lib.c')
-rw-r--r--ssl/s2_lib.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ssl/s2_lib.c b/ssl/s2_lib.c
index 10751b22ba..359498c8e5 100644
--- a/ssl/s2_lib.c
+++ b/ssl/s2_lib.c
@@ -314,6 +314,8 @@ long ssl2_ctrl(SSL *s, int cmd, long larg, void *parg)
case SSL_CTRL_GET_SESSION_REUSED:
ret=s->hit;
break;
+ case SSL_CTRL_CHECK_PROTO_VERSION:
+ return ssl3_ctrl(s, SSL_CTRL_CHECK_PROTO_VERSION, larg, parg);
default:
break;
}
@@ -362,7 +364,7 @@ int ssl2_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p)
if (p != NULL)
{
l=c->id;
- if ((l & 0xff000000) != 0x02000000) return(0);
+ if ((l & 0xff000000) != 0x02000000 && l != SSL3_CK_FALLBACK_SCSV) return(0);
p[0]=((unsigned char)(l>>16L))&0xFF;
p[1]=((unsigned char)(l>> 8L))&0xFF;
p[2]=((unsigned char)(l ))&0xFF;