components/openssl/openssl-1.0.1/patches/32_aes_cbc_len_check.patch
author Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
Tue, 06 Aug 2013 08:08:18 -0700
branchs11-update
changeset 2717 da0ef75be98f
child 4002 95b8f35fcdd5
permissions -rw-r--r--
15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src 16921388 T4 DES should be embedded in the OpenSSL upstream src 17193314 ssh dumps core when using aes128-cbc cipher on T4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2717
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     1
--- openssl-1.0.1e/crypto/evp/e_aes.c        Tue Jul  2 11:03:12 2013
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     2
+++ openssl-1.0.1e/crypto/evp/e_aes.c.new    Tue Jul  2 11:04:56 2013
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     3
@@ -574,8 +574,11 @@
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     4
 static int aes_cbc_cipher(EVP_CIPHER_CTX *ctx,unsigned char *out,
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     5
 	const unsigned char *in, size_t len)
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     6
 {
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     7
+	size_t	bl = ctx->cipher->block_size;
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     8
 	EVP_AES_KEY *dat = (EVP_AES_KEY *)ctx->cipher_data;
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     9
 
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    10
+	if (len<bl)	return 1;
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    11
+
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    12
 	if (dat->stream.cbc)
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    13
 		(*dat->stream.cbc)(in,out,len,&dat->ks,ctx->iv,ctx->encrypt);
da0ef75be98f 15824600 SUNBT7206152 T4 montmul should be embedded in the OpenSSL upstream src
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    14
 	else if (ctx->encrypt)