Lines Matching refs:alg

165 	const struct hash_alg_common *alg = crypto_hash_alg_common(tfm);
168 !(alg->base.cra_flags & CRYPTO_ALG_OPTIONAL_KEY))
343 struct crypto_alg *alg = tfm->base.__crt_alg;
347 crypto_stats_get(alg);
349 crypto_stats_ahash_final(nbytes, ret, alg);
357 struct crypto_alg *alg = tfm->base.__crt_alg;
361 crypto_stats_get(alg);
363 crypto_stats_ahash_final(nbytes, ret, alg);
371 struct crypto_alg *alg = tfm->base.__crt_alg;
375 crypto_stats_get(alg);
380 crypto_stats_ahash_final(nbytes, ret, alg);
450 struct ahash_alg *alg = crypto_ahash_alg(hash);
452 alg->exit_tfm(hash);
458 struct ahash_alg *alg = crypto_ahash_alg(hash);
465 hash->init = alg->init;
466 hash->update = alg->update;
467 hash->final = alg->final;
468 hash->finup = alg->finup ?: ahash_def_finup;
469 hash->digest = alg->digest;
470 hash->export = alg->export;
471 hash->import = alg->import;
473 if (alg->setkey) {
474 hash->setkey = alg->setkey;
478 if (alg->exit_tfm)
481 return alg->init_tfm ? alg->init_tfm(hash) : 0;
484 static unsigned int crypto_ahash_extsize(struct crypto_alg *alg)
486 if (alg->cra_type != &crypto_ahash_type)
489 return crypto_alg_extsize(alg);
500 static int crypto_ahash_report(struct sk_buff *skb, struct crypto_alg *alg)
508 rhash.blocksize = alg->cra_blocksize;
509 rhash.digestsize = __crypto_hash_alg_common(alg)->digestsize;
514 static int crypto_ahash_report(struct sk_buff *skb, struct crypto_alg *alg)
520 static void crypto_ahash_show(struct seq_file *m, struct crypto_alg *alg)
522 static void crypto_ahash_show(struct seq_file *m, struct crypto_alg *alg)
525 seq_printf(m, "async : %s\n", alg->cra_flags & CRYPTO_ALG_ASYNC ?
527 seq_printf(m, "blocksize : %u\n", alg->cra_blocksize);
529 __crypto_hash_alg_common(alg)->digestsize);
568 static int ahash_prepare_alg(struct ahash_alg *alg)
570 struct crypto_alg *base = &alg->halg.base;
572 if (alg->halg.digestsize > HASH_MAX_DIGESTSIZE ||
573 alg->halg.statesize > HASH_MAX_STATESIZE ||
574 alg->halg.statesize == 0)
584 int crypto_register_ahash(struct ahash_alg *alg)
586 struct crypto_alg *base = &alg->halg.base;
589 err = ahash_prepare_alg(alg);
597 void crypto_unregister_ahash(struct ahash_alg *alg)
599 crypto_unregister_alg(&alg->halg.base);
640 err = ahash_prepare_alg(&inst->alg);
650 struct crypto_alg *alg = &halg->base;
652 if (alg->cra_type != &crypto_ahash_type)
653 return crypto_shash_alg_has_setkey(__crypto_shash_alg(alg));
655 return __crypto_ahash_alg(alg)->setkey != NULL;