summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2009-07-14 14:29:57 +0200
committerHerbert Xu <herbert@gondor.apana.org.au>2009-07-14 14:29:57 +0200
commit500b3e3c3dc8e4845b77ae81e5b7b085ab183ce6 (patch)
tree0cd5ceeab5a085ba017e535b8a232780c0850aaf /crypto
parentcrypto: crypto4xx - Switch to new style ahash (diff)
downloadlinux-500b3e3c3dc8e4845b77ae81e5b7b085ab183ce6.tar.xz
linux-500b3e3c3dc8e4845b77ae81e5b7b085ab183ce6.zip
crypto: ahash - Remove old_ahash_alg
Now that all ahash implementations have been converted to the new ahash type, we can remove old_ahash_alg and its associated support. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/ahash.c27
-rw-r--r--crypto/shash.c2
2 files changed, 0 insertions, 29 deletions
diff --git a/crypto/ahash.c b/crypto/ahash.c
index 7f599d26086a..cc824ef25830 100644
--- a/crypto/ahash.c
+++ b/crypto/ahash.c
@@ -175,46 +175,19 @@ static int ahash_nosetkey(struct crypto_ahash *tfm, const u8 *key,
return -ENOSYS;
}
-static int crypto_init_ahash_ops(struct crypto_tfm *tfm, u32 type, u32 mask)
-{
- struct old_ahash_alg *alg = &tfm->__crt_alg->cra_ahash;
- struct crypto_ahash *crt = __crypto_ahash_cast(tfm);
- struct ahash_alg *nalg = crypto_ahash_alg(crt);
-
- if (alg->digestsize > PAGE_SIZE / 8)
- return -EINVAL;
-
- crt->init = alg->init;
- crt->update = alg->update;
- crt->final = alg->final;
- crt->digest = alg->digest;
- crt->setkey = alg->setkey ? ahash_setkey : ahash_nosetkey;
- crt->digestsize = alg->digestsize;
-
- nalg->setkey = alg->setkey;
- nalg->halg.digestsize = alg->digestsize;
-
- return 0;
-}
-
static int crypto_ahash_init_tfm(struct crypto_tfm *tfm)
{
struct crypto_ahash *hash = __crypto_ahash_cast(tfm);
struct ahash_alg *alg = crypto_ahash_alg(hash);
- struct old_ahash_alg *oalg = crypto_old_ahash_alg(hash);
if (tfm->__crt_alg->cra_type != &crypto_ahash_type)
return crypto_init_shash_ops_async(tfm);
- if (oalg->init)
- return crypto_init_ahash_ops(tfm, 0, 0);
-
hash->init = alg->init;
hash->update = alg->update;
hash->final = alg->final;
hash->digest = alg->digest;
hash->setkey = alg->setkey ? ahash_setkey : ahash_nosetkey;
- hash->digestsize = alg->halg.digestsize;
return 0;
}
diff --git a/crypto/shash.c b/crypto/shash.c
index 615a5f4d9b7a..fd92c03b38fc 100644
--- a/crypto/shash.c
+++ b/crypto/shash.c
@@ -270,7 +270,6 @@ static void crypto_exit_shash_ops_async(struct crypto_tfm *tfm)
int crypto_init_shash_ops_async(struct crypto_tfm *tfm)
{
struct crypto_alg *calg = tfm->__crt_alg;
- struct shash_alg *alg = __crypto_shash_alg(calg);
struct crypto_ahash *crt = __crypto_ahash_cast(tfm);
struct crypto_shash **ctx = crypto_tfm_ctx(tfm);
struct crypto_shash *shash;
@@ -293,7 +292,6 @@ int crypto_init_shash_ops_async(struct crypto_tfm *tfm)
crt->digest = shash_async_digest;
crt->setkey = shash_async_setkey;
- crt->digestsize = alg->digestsize;
crt->reqsize = sizeof(struct shash_desc) + crypto_shash_descsize(shash);
return 0;