Wrong SSL version in DTLS1_BAD_VER ClientHello
authorDavid Woodhouse <dwmw2@infradead.org>
Mon, 2 Mar 2015 16:20:15 +0000 (16:20 +0000)
committerMatt Caswell <matt@openssl.org>
Mon, 9 Mar 2015 11:04:39 +0000 (11:04 +0000)
Since commit 741c9959 ("DTLS revision."), we put the wrong protocol
version into our ClientHello for DTLS1_BAD_VER. The old DTLS
code which used ssl->version was replaced by the more generic SSL3 code
which uses ssl->client_version. The Cisco ASA no longer likes our
ClientHello.

RT#3711

Reviewed-by: Rich Salz <rsalz@openssl.org>
ssl/d1_lib.c

index 4ca6bb31a98b14480ad9954f39252e3e3c3ec29a..626cecbcbf65fe2d6c0cb2d1f8f6a5dfbcce819d 100644 (file)
@@ -273,7 +273,7 @@ void dtls1_clear(SSL *s)
 
     ssl3_clear(s);
     if (s->options & SSL_OP_CISCO_ANYCONNECT)
-        s->version = DTLS1_BAD_VER;
+        s->client_version = s->version = DTLS1_BAD_VER;
     else if (s->method->version == DTLS_ANY_VERSION)
         s->version = DTLS1_2_VERSION;
     else