d0064c8d512768398840d59373e0fb19a6c3fc2a
[trex.git] /
1 #ifndef crypto_auth_hmacsha512256_H
2 #define crypto_auth_hmacsha512256_H
3
4 #include <stddef.h>
5 #include "crypto_auth_hmacsha512.h"
6 #include "export.h"
7
8 #ifdef __cplusplus
9 # if __GNUC__
10 #  pragma GCC diagnostic ignored "-Wlong-long"
11 # endif
12 extern "C" {
13 #endif
14
15 typedef struct crypto_auth_hmacsha512_state crypto_auth_hmacsha512256_state;
16
17 #define crypto_auth_hmacsha512256_BYTES 32U
18 SODIUM_EXPORT
19 size_t crypto_auth_hmacsha512256_bytes(void);
20
21 #define crypto_auth_hmacsha512256_KEYBYTES 32U
22 SODIUM_EXPORT
23 size_t crypto_auth_hmacsha512256_keybytes(void);
24
25 SODIUM_EXPORT
26 int crypto_auth_hmacsha512256(unsigned char *out, const unsigned char *in,
27                               unsigned long long inlen,const unsigned char *k);
28
29 SODIUM_EXPORT
30 int crypto_auth_hmacsha512256_verify(const unsigned char *h,
31                                      const unsigned char *in,
32                                      unsigned long long inlen,
33                                      const unsigned char *k);
34
35 SODIUM_EXPORT
36 int crypto_auth_hmacsha512256_init(crypto_auth_hmacsha512256_state *state,
37                                    const unsigned char *key,
38                                    size_t keylen);
39
40 SODIUM_EXPORT
41 int crypto_auth_hmacsha512256_update(crypto_auth_hmacsha512256_state *state,
42                                      const unsigned char *in,
43                                      unsigned long long inlen);
44
45 SODIUM_EXPORT
46 int crypto_auth_hmacsha512256_final(crypto_auth_hmacsha512256_state *state,
47                                     unsigned char *out);
48
49 #ifdef __cplusplus
50 }
51 #endif
52
53 #endif