aboutsummaryrefslogtreecommitdiff
path: root/openssl/vendor/current/ssl/t1_enc.c
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2006-10-09 16:29:05 +0000
committerRob Austein <sra@hactrn.net>2006-10-09 16:29:05 +0000
commit1b2aa7959c86a835491c8cfca8c0683b747c1855 (patch)
tree9a0ba58647a2d57115f5c003ca4673e7693c950a /openssl/vendor/current/ssl/t1_enc.c
parent084adb601f2d375395c6cdcedf8af91f1065fe4e (diff)
Merge in vendor branch OpenSSL changes 0.9.8b -> 0.9.8d
svn path=/openssl/vendor/current/CHANGES; revision=375
Diffstat (limited to 'openssl/vendor/current/ssl/t1_enc.c')
-rw-r--r--openssl/vendor/current/ssl/t1_enc.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/openssl/vendor/current/ssl/t1_enc.c b/openssl/vendor/current/ssl/t1_enc.c
index c544c764..e0ce6815 100644
--- a/openssl/vendor/current/ssl/t1_enc.c
+++ b/openssl/vendor/current/ssl/t1_enc.c
@@ -628,7 +628,15 @@ int tls1_enc(SSL *s, int send)
{
ii=i=rec->data[l-1]; /* padding_length */
i++;
- if (s->options&SSL_OP_TLS_BLOCK_PADDING_BUG)
+ /* NB: if compression is in operation the first packet
+ * may not be of even length so the padding bug check
+ * cannot be performed. This bug workaround has been
+ * around since SSLeay so hopefully it is either fixed
+ * now or no buggy implementation supports compression
+ * [steve]
+ */
+ if ( (s->options&SSL_OP_TLS_BLOCK_PADDING_BUG)
+ && !s->expand)
{
/* First packet is even in size, so check */
if ((memcmp(s->s3->read_sequence,