Lines Matching full:sha
3 * AMD Cryptographic Coprocessor (CCP) SHA crypto API support
20 #include <crypto/sha.h>
135 rctx->cmd.u.sha.type = rctx->type; in ccp_do_sha_update()
136 rctx->cmd.u.sha.ctx = &rctx->ctx_sg; in ccp_do_sha_update()
140 rctx->cmd.u.sha.ctx_len = SHA1_DIGEST_SIZE; in ccp_do_sha_update()
143 rctx->cmd.u.sha.ctx_len = SHA224_DIGEST_SIZE; in ccp_do_sha_update()
146 rctx->cmd.u.sha.ctx_len = SHA256_DIGEST_SIZE; in ccp_do_sha_update()
149 rctx->cmd.u.sha.ctx_len = SHA384_DIGEST_SIZE; in ccp_do_sha_update()
152 rctx->cmd.u.sha.ctx_len = SHA512_DIGEST_SIZE; in ccp_do_sha_update()
159 rctx->cmd.u.sha.src = sg; in ccp_do_sha_update()
160 rctx->cmd.u.sha.src_len = rctx->hash_cnt; in ccp_do_sha_update()
161 rctx->cmd.u.sha.opad = ctx->u.sha.key_len ? in ccp_do_sha_update()
162 &ctx->u.sha.opad_sg : NULL; in ccp_do_sha_update()
163 rctx->cmd.u.sha.opad_len = ctx->u.sha.key_len ? in ccp_do_sha_update()
164 ctx->u.sha.opad_count : 0; in ccp_do_sha_update()
165 rctx->cmd.u.sha.first = rctx->first; in ccp_do_sha_update()
166 rctx->cmd.u.sha.final = rctx->final; in ccp_do_sha_update()
167 rctx->cmd.u.sha.msg_bits = rctx->msg_bits; in ccp_do_sha_update()
196 if (ctx->u.sha.key_len) { in ccp_sha_init()
198 memcpy(rctx->buf, ctx->u.sha.ipad, block_size); in ccp_sha_init()
275 struct crypto_shash *shash = ctx->u.sha.hmac_tfm; in ccp_sha_setkey()
281 ctx->u.sha.key_len = 0; in ccp_sha_setkey()
286 memset(ctx->u.sha.key, 0, sizeof(ctx->u.sha.key)); in ccp_sha_setkey()
291 ctx->u.sha.key); in ccp_sha_setkey()
297 memcpy(ctx->u.sha.key, key, key_len); in ccp_sha_setkey()
301 ctx->u.sha.ipad[i] = ctx->u.sha.key[i] ^ HMAC_IPAD_VALUE; in ccp_sha_setkey()
302 ctx->u.sha.opad[i] = ctx->u.sha.key[i] ^ HMAC_OPAD_VALUE; in ccp_sha_setkey()
305 sg_init_one(&ctx->u.sha.opad_sg, ctx->u.sha.opad, block_size); in ccp_sha_setkey()
306 ctx->u.sha.opad_count = block_size; in ccp_sha_setkey()
308 ctx->u.sha.key_len = key_len; in ccp_sha_setkey()
319 ctx->u.sha.key_len = 0; in ccp_sha_cra_init()
343 ctx->u.sha.hmac_tfm = hmac_tfm; in ccp_hmac_sha_cra_init()
352 if (ctx->u.sha.hmac_tfm) in ccp_hmac_sha_cra_exit()
353 crypto_free_shash(ctx->u.sha.hmac_tfm); in ccp_hmac_sha_cra_exit()