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# ifdef __GNUC__ 10# pragma GCC diagnostic ignored "-Wlong-long" 11# endif 12extern "C" { 13#endif 14 15#define crypto_auth_hmacsha512256_BYTES 32U 16SODIUM_EXPORT 17size_t crypto_auth_hmacsha512256_bytes(void); 18 19#define crypto_auth_hmacsha512256_KEYBYTES 32U 20SODIUM_EXPORT 21size_t crypto_auth_hmacsha512256_keybytes(void); 22 23SODIUM_EXPORT 24int crypto_auth_hmacsha512256(unsigned char *out, const unsigned char *in, 25 unsigned long long inlen,const unsigned char *k); 26 27SODIUM_EXPORT 28int crypto_auth_hmacsha512256_verify(const unsigned char *h, 29 const unsigned char *in, 30 unsigned long long inlen, 31 const unsigned char *k) 32 __attribute__ ((warn_unused_result)); 33 34/* ------------------------------------------------------------------------- */ 35 36typedef crypto_auth_hmacsha512_state crypto_auth_hmacsha512256_state; 37 38SODIUM_EXPORT 39size_t crypto_auth_hmacsha512256_statebytes(void); 40 41SODIUM_EXPORT 42int crypto_auth_hmacsha512256_init(crypto_auth_hmacsha512256_state *state, 43 const unsigned char *key, 44 size_t keylen); 45 46SODIUM_EXPORT 47int crypto_auth_hmacsha512256_update(crypto_auth_hmacsha512256_state *state, 48 const unsigned char *in, 49 unsigned long long inlen); 50 51SODIUM_EXPORT 52int crypto_auth_hmacsha512256_final(crypto_auth_hmacsha512256_state *state, 53 unsigned char *out); 54 55SODIUM_EXPORT 56void crypto_auth_hmacsha512256_keygen(unsigned char k[crypto_auth_hmacsha512256_KEYBYTES]); 57 58#ifdef __cplusplus 59} 60#endif 61 62#endif 63