summaryrefslogtreecommitdiffstats
path: root/crypto/openssl/ssl/s3_enc.c
diff options
context:
space:
mode:
authornectar <nectar@FreeBSD.org>2002-07-30 13:38:06 +0000
committernectar <nectar@FreeBSD.org>2002-07-30 13:38:06 +0000
commit2f13e0916590f8488178999aec4874ed5662a031 (patch)
treef3c141823975717e132c7687cf833f6378cc87d4 /crypto/openssl/ssl/s3_enc.c
parent0aed2eea83b351d68092e43b5a9496ce3dd5043d (diff)
downloadFreeBSD-src-2f13e0916590f8488178999aec4874ed5662a031.zip
FreeBSD-src-2f13e0916590f8488178999aec4874ed5662a031.tar.gz
Import of OpenSSL 0.9.6e.
Diffstat (limited to 'crypto/openssl/ssl/s3_enc.c')
-rw-r--r--crypto/openssl/ssl/s3_enc.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/crypto/openssl/ssl/s3_enc.c b/crypto/openssl/ssl/s3_enc.c
index d9a161a..79fa4f9 100644
--- a/crypto/openssl/ssl/s3_enc.c
+++ b/crypto/openssl/ssl/s3_enc.c
@@ -361,13 +361,24 @@ int ssl3_setup_key_block(SSL *s)
ssl3_generate_key_block(s,p,num);
- /* enable vulnerability countermeasure for CBC ciphers with
- * known-IV problem (http://www.openssl.org/~bodo/tls-cbc.txt) */
- s->s3->need_empty_fragments = 1;
+ if (!(s->options & SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS))
+ {
+ /* enable vulnerability countermeasure for CBC ciphers with
+ * known-IV problem (http://www.openssl.org/~bodo/tls-cbc.txt)
+ */
+ s->s3->need_empty_fragments = 1;
+
+ if (s->session->cipher != NULL)
+ {
+ if ((s->session->cipher->algorithms & SSL_ENC_MASK) == SSL_eNULL)
+ s->s3->need_empty_fragments = 0;
+
#ifndef NO_RC4
- if ((s->session->cipher != NULL) && ((s->session->cipher->algorithms & SSL_ENC_MASK) == SSL_RC4))
- s->s3->need_empty_fragments = 0;
+ if ((s->session->cipher->algorithms & SSL_ENC_MASK) == SSL_RC4)
+ s->s3->need_empty_fragments = 0;
#endif
+ }
+ }
return(1);
err:
OpenPOWER on IntegriCloud