Lines Matching refs:alg
158 const struct hash_alg_common *alg = crypto_hash_alg_common(tfm);
161 !(alg->base.cra_flags & CRYPTO_ALG_OPTIONAL_KEY))
305 struct hash_alg_common *alg = crypto_hash_alg_common(tfm);
308 atomic64_inc(&hash_get_stat(alg)->hash_cnt);
317 struct hash_alg_common *alg = crypto_hash_alg_common(tfm);
320 struct crypto_istat_hash *istat = hash_get_stat(alg);
333 struct hash_alg_common *alg = crypto_hash_alg_common(tfm);
336 struct crypto_istat_hash *istat = hash_get_stat(alg);
343 return crypto_hash_errstat(alg, -ENOKEY);
417 struct ahash_alg *alg = crypto_ahash_alg(hash);
419 alg->exit_tfm(hash);
425 struct ahash_alg *alg = crypto_ahash_alg(hash);
429 crypto_ahash_set_statesize(hash, alg->halg.statesize);
434 hash->init = alg->init;
435 hash->update = alg->update;
436 hash->final = alg->final;
437 hash->finup = alg->finup ?: ahash_def_finup;
438 hash->digest = alg->digest;
439 hash->export = alg->export;
440 hash->import = alg->import;
442 if (alg->setkey) {
443 hash->setkey = alg->setkey;
447 if (alg->exit_tfm)
450 return alg->init_tfm ? alg->init_tfm(hash) : 0;
453 static unsigned int crypto_ahash_extsize(struct crypto_alg *alg)
455 if (alg->cra_type != &crypto_ahash_type)
458 return crypto_alg_extsize(alg);
469 struct sk_buff *skb, struct crypto_alg *alg)
477 rhash.blocksize = alg->cra_blocksize;
478 rhash.digestsize = __crypto_hash_alg_common(alg)->digestsize;
483 static void crypto_ahash_show(struct seq_file *m, struct crypto_alg *alg)
485 static void crypto_ahash_show(struct seq_file *m, struct crypto_alg *alg)
488 seq_printf(m, "async : %s\n", alg->cra_flags & CRYPTO_ALG_ASYNC ?
490 seq_printf(m, "blocksize : %u\n", alg->cra_blocksize);
492 __crypto_hash_alg_common(alg)->digestsize);
496 struct sk_buff *skb, struct crypto_alg *alg)
498 return crypto_hash_report_stat(skb, alg, "ahash");
547 struct ahash_alg *alg;
578 alg = crypto_ahash_alg(hash);
579 if (!alg->clone_tfm)
582 err = alg->clone_tfm(nhash, hash);
594 static int ahash_prepare_alg(struct ahash_alg *alg)
596 struct crypto_alg *base = &alg->halg.base;
599 if (alg->halg.statesize == 0)
602 err = hash_prepare_alg(&alg->halg);
612 int crypto_register_ahash(struct ahash_alg *alg)
614 struct crypto_alg *base = &alg->halg.base;
617 err = ahash_prepare_alg(alg);
625 void crypto_unregister_ahash(struct ahash_alg *alg)
627 crypto_unregister_alg(&alg->halg.base);
668 err = ahash_prepare_alg(&inst->alg);
678 struct crypto_alg *alg = &halg->base;
680 if (alg->cra_type != &crypto_ahash_type)
681 return crypto_shash_alg_has_setkey(__crypto_shash_alg(alg));
683 return __crypto_ahash_alg(alg)->setkey != NULL;