From: Dr. Stephen Henson Date: Thu, 26 Apr 2012 18:51:26 +0000 (+0000) Subject: Don't try to use unvalidated composite ciphers in FIPS mode X-Git-Tag: OpenSSL_1_0_2-beta1~635 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a56f9a612b28f405282c1e22a4257f4cfa58bced;p=openssl Don't try to use unvalidated composite ciphers in FIPS mode --- diff --git a/CHANGES b/CHANGES index fbe062bd92..577ac21be4 100644 --- a/CHANGES +++ b/CHANGES @@ -52,7 +52,13 @@ certificates. [Steve Henson] - Changes between 1.0.1a and 1.0.1b [xx XXX xxxx] + Changes between 1.0.1b and 1.0.1c [xx XXX xxxx] + + *) In FIPS mode don't try to use composite ciphers as they are not + approved. + [Steve Henson] + + Changes between 1.0.1a and 1.0.1b [26 Apr 2012] *) OpenSSL 1.0.0 sets SSL_OP_ALL to 0x80000FFFL and OpenSSL 1.0.1 and 1.0.1a set SSL_OP_NO_TLSv1_1 to 0x00000400L which would unfortunately diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c index a96a5daaf5..6db2aa945d 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -620,6 +620,11 @@ int ssl_cipher_get_evp(const SSL_SESSION *s, const EVP_CIPHER **enc, s->ssl_version < TLS1_VERSION) return 1; +#ifdef OPENSSL_FIPS + if (FIPS_mode()) + return 1; +#endif + if (c->algorithm_enc == SSL_RC4 && c->algorithm_mac == SSL_MD5 && (evp=EVP_get_cipherbyname("RC4-HMAC-MD5")))