/* blake2s.h */
#ifndef BLAKE2S_H
#define BLAKE2S_H
#include "ustd.h"
#ifdef __cplusplus
extern "C" {
#endif
#define blake2s_block_size 64
#define blake2s_hash_size 32
typedef struct blake2s_ctx
{
uint32_t hash[8];
uint32_t message[16];
uint64_t length;
} blake2s_ctx;
void rhash_blake2s_init(blake2s_ctx* ctx);
void rhash_blake2s_update(blake2s_ctx* ctx, const unsigned char* msg, size_t size);
void rhash_blake2s_final(blake2s_ctx* ctx, unsigned char* result);
#ifdef __cplusplus
} /* extern "C" */
#endif /* __cplusplus */
#endif /* BLAKE2S_H */