Lines Matching refs:alg

42 	struct fsverity_hash_alg *alg;  in fsverity_get_hash_alg()  local
51 alg = &fsverity_hash_algs[num]; in fsverity_get_hash_alg()
54 tfm = READ_ONCE(alg->tfm); in fsverity_get_hash_alg()
56 return alg; in fsverity_get_hash_alg()
61 tfm = crypto_alloc_ahash(alg->name, 0, 0); in fsverity_get_hash_alg()
66 alg->name); in fsverity_get_hash_alg()
71 alg->name, PTR_ERR(tfm)); in fsverity_get_hash_alg()
76 if (WARN_ON(alg->digest_size != crypto_ahash_digestsize(tfm))) in fsverity_get_hash_alg()
78 if (WARN_ON(alg->block_size != crypto_ahash_blocksize(tfm))) in fsverity_get_hash_alg()
82 alg->name, crypto_ahash_driver_name(tfm)); in fsverity_get_hash_alg()
85 if (cmpxchg(&alg->tfm, NULL, tfm) != NULL) in fsverity_get_hash_alg()
88 return alg; in fsverity_get_hash_alg()
104 const u8 *fsverity_prepare_hash_state(const struct fsverity_hash_alg *alg, in fsverity_prepare_hash_state() argument
118 hashstate = kmalloc(crypto_ahash_statesize(alg->tfm), GFP_KERNEL); in fsverity_prepare_hash_state()
122 req = ahash_request_alloc(alg->tfm, GFP_KERNEL); in fsverity_prepare_hash_state()
135 padded_salt_size = round_up(salt_size, alg->block_size); in fsverity_prepare_hash_state()
232 int fsverity_hash_buffer(const struct fsverity_hash_alg *alg, in fsverity_hash_buffer() argument
240 req = ahash_request_alloc(alg->tfm, GFP_KERNEL); in fsverity_hash_buffer()
265 const struct fsverity_hash_alg *alg = &fsverity_hash_algs[i]; in fsverity_check_hash_algs() local
267 if (!alg->name) in fsverity_check_hash_algs()
270 BUG_ON(alg->digest_size > FS_VERITY_MAX_DIGEST_SIZE); in fsverity_check_hash_algs()
277 BUG_ON(!is_power_of_2(alg->digest_size)); in fsverity_check_hash_algs()
278 BUG_ON(!is_power_of_2(alg->block_size)); in fsverity_check_hash_algs()