OSSL_FUNC_mac_dupctx(void *src);

 /* Encryption/decryption */
 int OSSL_FUNC_mac_init(void *mctx, unsigned char *key, size_t keylen,
                        const OSSL_PARAM params[]);
 int OSSL_FUNC_mac_update(void *mctx, const unsigned char *in, size_t inl);
 int OSSL_FUNC_mac_final(void *mctx, unsigned char *out, size_t *outl, size_t outsize);

 /* MAC parameter descriptors */
 const OSSL_PARAM *OSSL_FUNC_mac_gettable_params(void *provctx);
 const OSSL_PARAM *OSSL_FUNC_mac_gettable_ctx_params(void *mctx