Lines Matching refs:desc

61 int crypto_shash_update(struct shash_desc *desc, const u8 *data,
64 struct shash_alg *shash = crypto_shash_alg(desc->tfm);
70 err = shash->update(desc, data, len);
76 int crypto_shash_final(struct shash_desc *desc, u8 *out)
78 struct shash_alg *shash = crypto_shash_alg(desc->tfm);
84 err = shash->final(desc, out);
90 static int shash_default_finup(struct shash_desc *desc, const u8 *data,
93 struct shash_alg *shash = crypto_shash_alg(desc->tfm);
95 return shash->update(desc, data, len) ?:
96 shash->final(desc, out);
99 int crypto_shash_finup(struct shash_desc *desc, const u8 *data,
102 struct crypto_shash *tfm = desc->tfm;
113 err = shash->finup(desc, data, len, out);
119 static int shash_default_digest(struct shash_desc *desc, const u8 *data,
122 struct shash_alg *shash = crypto_shash_alg(desc->tfm);
124 return shash->init(desc) ?:
125 shash->finup(desc, data, len, out);
128 int crypto_shash_digest(struct shash_desc *desc, const u8 *data,
131 struct crypto_shash *tfm = desc->tfm;
145 err = shash->digest(desc, data, len, out);
154 SHASH_DESC_ON_STACK(desc, tfm);
157 desc->tfm = tfm;
159 err = crypto_shash_digest(desc, data, len, out);
161 shash_desc_zero(desc);
167 int crypto_shash_export(struct shash_desc *desc, void *out)
169 struct crypto_shash *tfm = desc->tfm;
173 return shash->export(desc, out);
175 memcpy(out, shash_desc_ctx(desc), crypto_shash_descsize(tfm));
180 int crypto_shash_import(struct shash_desc *desc, const void *in)
182 struct crypto_shash *tfm = desc->tfm;
189 return shash->import(desc, in);
191 memcpy(shash_desc_ctx(desc), in, crypto_shash_descsize(tfm));