summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2013-12-19 14:37:39 +0000
committerDr. Stephen Henson <steve@openssl.org>2013-12-19 21:04:28 +0000
commitca989269a2876bae79393bd54c3e72d49975fc75 (patch)
treed6a6562d396662071fdd6d335abcb6761610c5dd /ssl
parent2ec4181ba92fc6b828687d2dc47c13dcd35a5d93 (diff)
Use version in SSL_METHOD not SSL structure.
When deciding whether to use TLS 1.2 PRF and record hash algorithms use the version number in the corresponding SSL_METHOD structure instead of the SSL structure. The SSL structure version is sometimes inaccurate. Note: OpenSSL 1.0.2 and later effectively do this already. (CVE-2013-6449)
Diffstat (limited to 'ssl')
-rw-r--r--ssl/s3_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c
index bf832bb6cc..c4ef2738d7 100644
--- a/ssl/s3_lib.c
+++ b/ssl/s3_lib.c
@@ -4286,7 +4286,7 @@ need to go to SSL_ST_ACCEPT.
long ssl_get_algorithm2(SSL *s)
{
long alg2 = s->s3->tmp.new_cipher->algorithm2;
- if (TLS1_get_version(s) >= TLS1_2_VERSION &&
+ if (s->method->version == TLS1_2_VERSION &&
alg2 == (SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF))
return SSL_HANDSHAKE_MAC_SHA256 | TLS1_PRF_SHA256;
return alg2;