[CRYPTO] api: Get rid of flags argument to setkey
Now that the tfm is passed directly to setkey instead of the ctx, we no longer need to pass the &tfm->crt_flags pointer. This patch also gets rid of a few unnecessary checks on the key length for ciphers as the cipher layer guarantees that the key length is within the bounds specified by the algorithm. Rather than testing dia_setkey every time, this patch does it only once during crypto_alloc_tfm. The redundant check from crypto_digest_setkey is also removed. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
@@ -216,7 +216,7 @@ struct serpent_ctx {
|
||||
|
||||
|
||||
static int serpent_setkey(struct crypto_tfm *tfm, const u8 *key,
|
||||
unsigned int keylen, u32 *flags)
|
||||
unsigned int keylen)
|
||||
{
|
||||
struct serpent_ctx *ctx = crypto_tfm_ctx(tfm);
|
||||
u32 *k = ctx->expkey;
|
||||
@@ -224,13 +224,6 @@ static int serpent_setkey(struct crypto_tfm *tfm, const u8 *key,
|
||||
u32 r0,r1,r2,r3,r4;
|
||||
int i;
|
||||
|
||||
if ((keylen < SERPENT_MIN_KEY_SIZE)
|
||||
|| (keylen > SERPENT_MAX_KEY_SIZE))
|
||||
{
|
||||
*flags |= CRYPTO_TFM_RES_BAD_KEY_LEN;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/* Copy key, add padding */
|
||||
|
||||
for (i = 0; i < keylen; ++i)
|
||||
@@ -497,21 +490,15 @@ static struct crypto_alg serpent_alg = {
|
||||
};
|
||||
|
||||
static int tnepres_setkey(struct crypto_tfm *tfm, const u8 *key,
|
||||
unsigned int keylen, u32 *flags)
|
||||
unsigned int keylen)
|
||||
{
|
||||
u8 rev_key[SERPENT_MAX_KEY_SIZE];
|
||||
int i;
|
||||
|
||||
if ((keylen < SERPENT_MIN_KEY_SIZE)
|
||||
|| (keylen > SERPENT_MAX_KEY_SIZE)) {
|
||||
*flags |= CRYPTO_TFM_RES_BAD_KEY_LEN;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
for (i = 0; i < keylen; ++i)
|
||||
rev_key[keylen - i - 1] = key[i];
|
||||
|
||||
return serpent_setkey(tfm, rev_key, keylen, flags);
|
||||
return serpent_setkey(tfm, rev_key, keylen);
|
||||
}
|
||||
|
||||
static void tnepres_encrypt(struct crypto_tfm *tfm, u8 *dst, const u8 *src)
|
||||
|
Reference in New Issue
Block a user