1 /******************************************************************************* 2 3 D language bindings for libsodium's crypto_auth_hmacsha512256.h 4 5 License: ISC (see LICENSE.txt) 6 7 *******************************************************************************/ 8 9 module libsodium.crypto_auth_hmacsha512256; 10 11 @nogc nothrow: 12 13 import libsodium.export_; 14 import libsodium.crypto_auth_hmacsha512; 15 16 extern (C): 17 18 enum crypto_auth_hmacsha512256_BYTES = 32U; 19 size_t crypto_auth_hmacsha512256_bytes (); 20 21 enum crypto_auth_hmacsha512256_KEYBYTES = 32U; 22 size_t crypto_auth_hmacsha512256_keybytes (); 23 24 int crypto_auth_hmacsha512256 ( 25 ubyte* out_, 26 const(ubyte)* in_, 27 ulong inlen, 28 const(ubyte)* k); 29 30 int crypto_auth_hmacsha512256_verify ( 31 const(ubyte)* h, 32 const(ubyte)* in_, 33 ulong inlen, 34 const(ubyte)* k); 35 36 /* ------------------------------------------------------------------------- */ 37 38 alias crypto_auth_hmacsha512256_state = crypto_auth_hmacsha512_state; 39 40 size_t crypto_auth_hmacsha512256_statebytes (); 41 42 int crypto_auth_hmacsha512256_init ( 43 crypto_auth_hmacsha512256_state* state, 44 const(ubyte)* key, 45 size_t keylen); 46 47 int crypto_auth_hmacsha512256_update ( 48 crypto_auth_hmacsha512256_state* state, 49 const(ubyte)* in_, 50 ulong inlen); 51 52 int crypto_auth_hmacsha512256_final ( 53 crypto_auth_hmacsha512256_state* state, 54 ubyte* out_); 55 56 void crypto_auth_hmacsha512256_keygen ( 57 ref ubyte[crypto_auth_hmacsha512256_KEYBYTES] k);