blake2s_final.c (378B)
1 /* ISC license. */ 2 3 #include <string.h> 4 5 #include <skalibs/uint32.h> 6 #include <skalibs/blake2s.h> 7 #include "blake2s-internal.h" 8 9 void blake2s_final (blake2s_ctx *ctx, char *out) 10 { 11 ctx->f[0] = -1 ; 12 memset(ctx->buf + ctx->buflen, 0, 64 - ctx->buflen) ; 13 blake2s_transform(ctx, ctx->buf, 1, ctx->buflen) ; 14 uint32_littlen(ctx->h, 8) ; 15 memcpy(out, ctx->h, ctx->outlen) ; 16 }