gnutls_crypto_register_mac3
Api function
Usage
#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);
Arguments
- 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
Overview
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.
Deprecated
since 3.7.0 it is no longer possible to override cipher implementation
Returns
GNUTLS_E_SUCCESS on success, otherwise a negative error code.
Since
3.4.0
Releases
6 releases since Debian 9 (Stretch); the text changed 5 times.