Lines Matching defs:sctx
209 void sha256_update(struct sha256_state *sctx, const u8 *data, unsigned int len)
214 partial = sctx->count & 0x3f;
215 sctx->count += len;
222 memcpy(sctx->buf + partial, data, done + 64);
223 src = sctx->buf;
227 sha256_transform(sctx->state, src);
234 memcpy(sctx->buf + partial, src, len - done);
238 void sha224_update(struct sha256_state *sctx, const u8 *data, unsigned int len)
240 sha256_update(sctx, data, len);
244 static void __sha256_final(struct sha256_state *sctx, u8 *out, int digest_words)
253 bits = cpu_to_be64(sctx->count << 3);
256 index = sctx->count & 0x3f;
258 sha256_update(sctx, padding, pad_len);
261 sha256_update(sctx, (const u8 *)&bits, sizeof(bits));
265 put_unaligned_be32(sctx->state[i], &dst[i]);
268 memset(sctx, 0, sizeof(*sctx));
271 void sha256_final(struct sha256_state *sctx, u8 *out)
273 __sha256_final(sctx, out, 8);
277 void sha224_final(struct sha256_state *sctx, u8 *out)
279 __sha256_final(sctx, out, 7);
285 struct sha256_state sctx;
287 sha256_init(&sctx);
288 sha256_update(&sctx, data, len);
289 sha256_final(&sctx, out);