@defgroup lavu_hmac HMAC @ingroup lavu_crypto @{
Allocate an AVHMAC context. @param type The hash function used for the HMAC.
Hash an array of data with a key. @param ctx The HMAC context @param data The data to hash @param len The length of the data, in bytes @param key The authentication key @param keylen The length of the key, in bytes @param out The output buffer to write the digest into @param outlen The length of the out buffer, in bytes @return The number of bytes written to out, or a negative error code.
Finish hashing and output the HMAC digest. @param ctx The HMAC context @param out The output buffer to write the digest into @param outlen The length of the out buffer, in bytes @return The number of bytes written to out, or a negative error code.
Free an AVHMAC context. @param ctx The context to free, may be NULL
Initialize an AVHMAC context with an authentication key. @param ctx The HMAC context @param key The authentication key @param keylen The length of the key, in bytes
Hash data with the HMAC. @param ctx The HMAC context @param data The data to hash @param len The length of the data, in bytes