components/openssl/common/patches/032-aes_cbc_len_check.patch
author Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
Thu, 28 May 2015 09:54:36 -0700
changeset 4370 7043c27399f1
parent 4002 components/openssl/openssl-1.0.1/patches/32_aes_cbc_len_check.patch@95b8f35fcdd5
child 4822 1fb8a14c6702
permissions -rw-r--r--
19375978 Common code between openssl-1.0.1 and openssl-1.0.1-fips-140 should be shared
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4002
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     1
#
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     2
# This was developed in house and reported to the upstream.
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     3
#
1401
367855861774 17191153 ld: warning: symbol '_init' not found but .init section exists on s12_26
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     4
--- openssl-1.0.1e/crypto/evp/e_aes.c        Tue Jul  2 11:03:12 2013
367855861774 17191153 ld: warning: symbol '_init' not found but .init section exists on s12_26
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     5
+++ openssl-1.0.1e/crypto/evp/e_aes.c.new    Tue Jul  2 11:04:56 2013
4002
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     6
@@ -536,8 +536,12 @@
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     7
 static int aes_cbc_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out,
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
     8
                           const unsigned char *in, size_t len)
1401
367855861774 17191153 ld: warning: symbol '_init' not found but .init section exists on s12_26
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
     9
 {
4002
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    10
+    size_t	bl = ctx->cipher->block_size;
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    11
     EVP_AES_KEY *dat = (EVP_AES_KEY *) ctx->cipher_data;
1401
367855861774 17191153 ld: warning: symbol '_init' not found but .init section exists on s12_26
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    12
 
4002
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    13
+    if (len < bl)
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    14
+        return 1;
1401
367855861774 17191153 ld: warning: symbol '_init' not found but .init section exists on s12_26
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents:
diff changeset
    15
+
4002
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    16
     if (dat->stream.cbc)
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    17
         (*dat->stream.cbc) (in, out, len, &dat->ks, ctx->iv, ctx->encrypt);
95b8f35fcdd5 20735615 Upgrade OpenSSL version to 1.0.1m
Misaki Miyashita <Misaki.Miyashita@Oracle.COM>
parents: 1401
diff changeset
    18
     else if (ctx->encrypt)