]> git.meshlink.io Git - meshlink/blob - src/ed25519/sha512.h
Avoid allocating packet buffers unnecessarily.
[meshlink] / src / ed25519 / sha512.h
1 #ifndef SHA512_H
2 #define SHA512_H
3
4 #include <stddef.h>
5
6 #include "fixedint.h"
7
8 /* state */
9 typedef struct sha512_context_ {
10         uint64_t length, state[8];
11         size_t curlen;
12         unsigned char buf[128];
13 } sha512_context;
14
15 int sha512_init(sha512_context *md);
16 int sha512_final(sha512_context *md, void *out);
17 int sha512_update(sha512_context *md, const void *in, size_t inlen);
18 int sha512(const void *message, size_t message_len, void *out);
19
20 #endif