Your company here ā€” click to reach over 10,000 unique daily visitors

gnutls_crypto_register_mac - Man Page

API function


#include <gnutls/crypto.h>

int gnutls_crypto_register_mac(gnutls_mac_algorithm_t algorithm, int priority, gnutls_mac_init_func init, gnutls_mac_setkey_func setkey, gnutls_mac_setnonce_func setnonce, gnutls_mac_hash_func hash, gnutls_mac_output_func output, gnutls_mac_deinit_func deinit, gnutls_mac_fast_func hash_fast);


gnutls_mac_algorithm_t algorithm

is the gnutls MAC identifier

int priority

is the priority of the algorithm

gnutls_mac_init_func init

A function which initializes the MAC

gnutls_mac_setkey_func setkey

A function which sets the key of the MAC

gnutls_mac_setnonce_func setnonce

A function which sets the nonce for the mac (may be NULL for common MAC algorithms)

gnutls_mac_hash_func hash

Perform the hash operation

gnutls_mac_output_func output

Provide the output of the MAC

gnutls_mac_deinit_func deinit

A function which deinitializes the MAC

gnutls_mac_fast_func hash_fast

Perform the MAC operation in one go


This function will register a MAC algorithm to be used by gnutls. Any algorithm registered will override the included algorithms and by convention kernel implemented algorithms have priority of 90 and CPU-assisted of 80. The algorithm with the lowest priority will be used by gnutls.


since 3.7.0 it is no longer possible to override cipher implementation


GNUTLS_E_SUCCESS on success, otherwise a negative error code.



Reporting Bugs

Report bugs to <bugs@gnutls.org>.
Home page: https://www.gnutls.org

See Also

The full documentation for gnutls is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit



3.8.6 gnutls