Lines Matching refs:dctx

100     struct p8_ghash_desc_ctx *dctx = shash_desc_ctx(desc);  in p8_ghash_init()  local
102 dctx->bytes = 0; in p8_ghash_init()
103 memset(dctx->shash, 0, GHASH_DIGEST_SIZE); in p8_ghash_init()
104 dctx->fallback_desc.tfm = ctx->fallback; in p8_ghash_init()
105 dctx->fallback_desc.flags = desc->flags; in p8_ghash_init()
106 return crypto_shash_init(&dctx->fallback_desc); in p8_ghash_init()
131 struct p8_ghash_desc_ctx *dctx = shash_desc_ctx(desc); in p8_ghash_update() local
134 return crypto_shash_update(&dctx->fallback_desc, src, srclen); in p8_ghash_update()
136 if (dctx->bytes) { in p8_ghash_update()
137 if (dctx->bytes + srclen < GHASH_DIGEST_SIZE) { in p8_ghash_update()
138 memcpy(dctx->buffer + dctx->bytes, src, srclen); in p8_ghash_update()
139 dctx->bytes += srclen; in p8_ghash_update()
142 memcpy(dctx->buffer + dctx->bytes, src, in p8_ghash_update()
143 GHASH_DIGEST_SIZE - dctx->bytes); in p8_ghash_update()
148 gcm_ghash_p8(dctx->shash, ctx->htable, dctx->buffer, in p8_ghash_update()
151 src += GHASH_DIGEST_SIZE - dctx->bytes; in p8_ghash_update()
152 srclen -= GHASH_DIGEST_SIZE - dctx->bytes; in p8_ghash_update()
153 dctx->bytes = 0; in p8_ghash_update()
161 gcm_ghash_p8(dctx->shash, ctx->htable, src, len); in p8_ghash_update()
167 memcpy(dctx->buffer, src, srclen); in p8_ghash_update()
168 dctx->bytes = srclen; in p8_ghash_update()
178 struct p8_ghash_desc_ctx *dctx = shash_desc_ctx(desc); in p8_ghash_final() local
181 return crypto_shash_final(&dctx->fallback_desc, out); in p8_ghash_final()
183 if (dctx->bytes) { in p8_ghash_final()
184 for (i = dctx->bytes; i < GHASH_DIGEST_SIZE; i++) in p8_ghash_final()
185 dctx->buffer[i] = 0; in p8_ghash_final()
190 gcm_ghash_p8(dctx->shash, ctx->htable, dctx->buffer, in p8_ghash_final()
193 dctx->bytes = 0; in p8_ghash_final()
195 memcpy(out, dctx->shash, GHASH_DIGEST_SIZE); in p8_ghash_final()