Lines Matching refs:sctx
198 void sha512_base_do_finalize(sha512_context *sctx) in sha512_base_do_finalize() argument
201 uint64_t *bits = (uint64_t *)(sctx->buf + bit_offset); in sha512_base_do_finalize()
202 unsigned int partial = sctx->count[0] % SHA512_BLOCK_SIZE; in sha512_base_do_finalize()
204 sctx->buf[partial++] = 0x80; in sha512_base_do_finalize()
206 memset(sctx->buf + partial, 0x0, SHA512_BLOCK_SIZE - partial); in sha512_base_do_finalize()
209 sha512_block_fn(sctx, sctx->buf, 1); in sha512_base_do_finalize()
212 memset(sctx->buf + partial, 0x0, bit_offset - partial); in sha512_base_do_finalize()
213 bits[0] = cpu_to_be64(sctx->count[1] << 3 | sctx->count[0] >> 61); in sha512_base_do_finalize()
214 bits[1] = cpu_to_be64(sctx->count[0] << 3); in sha512_base_do_finalize()
216 sha512_block_fn(sctx, sctx->buf, 1); in sha512_base_do_finalize()
219 void sha512_base_do_update(sha512_context *sctx, in sha512_base_do_update() argument
223 unsigned int partial = sctx->count[0] % SHA512_BLOCK_SIZE; in sha512_base_do_update()
225 sctx->count[0] += len; in sha512_base_do_update()
226 if (sctx->count[0] < len) in sha512_base_do_update()
227 sctx->count[1]++; in sha512_base_do_update()
235 memcpy(sctx->buf + partial, data, p); in sha512_base_do_update()
239 sha512_block_fn(sctx, sctx->buf, 1); in sha512_base_do_update()
246 sha512_block_fn(sctx, data, blocks); in sha512_base_do_update()
252 memcpy(sctx->buf + partial, data, len); in sha512_base_do_update()