crypto: talitos - don't bad_key in ablkcipher setkey
Kim Phillips [Fri, 15 Jul 2011 03:21:40 +0000 (11:21 +0800)]
crypto/ablkcipher.c's setkey() has already checked against the min, max
key sizes before it calls here, and all max_keysize assignments in the
algorithm template array do not exceed TALITOS_MAX_KEY_SIZE.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

drivers/crypto/talitos.c

index 521244e..8a0bb41 100644 (file)
@@ -1378,22 +1378,11 @@ static int ablkcipher_setkey(struct crypto_ablkcipher *cipher,
                             const u8 *key, unsigned int keylen)
 {
        struct talitos_ctx *ctx = crypto_ablkcipher_ctx(cipher);
-       struct ablkcipher_alg *alg = crypto_ablkcipher_alg(cipher);
-
-       if (keylen > TALITOS_MAX_KEY_SIZE)
-               goto badkey;
-
-       if (keylen < alg->min_keysize || keylen > alg->max_keysize)
-               goto badkey;
 
        memcpy(&ctx->key, key, keylen);
        ctx->keylen = keylen;
 
        return 0;
-
-badkey:
-       crypto_ablkcipher_set_flags(cipher, CRYPTO_TFM_RES_BAD_KEY_LEN);
-       return -EINVAL;
 }
 
 static void common_nonsnoop_unmap(struct device *dev,