void *OSSL_FUNC_mac_dupctx(void *src);
/* Encryption/decryption */
- int OSSL_FUNC_mac_init(void *mctx);
+ 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);
=head2 Encryption/Decryption Functions
OSSL_FUNC_mac_init() initialises a mac operation given a newly created provider
-side mac context in the I<mctx> parameter.
+side mac context in the I<mctx> parameter. The I<params> are set before setting
+the MAC I<key> of I<keylen> bytes.
OSSL_FUNC_mac_update() is called to supply data for MAC computation of a previously
initialised mac operation.
=item "key" (B<OSSL_MAC_PARAM_KEY>) <octet string>
-Sets the key in the associated MAC ctx.
+Sets the key in the associated MAC ctx. This is identical to passing a I<key>
+argument to the OSSL_FUNC_mac_init() function.
=item "iv" (B<OSSL_MAC_PARAM_IV>) <octet string>
=head1 SEE ALSO
-L<provider(7)>
+L<provider(7)>, L<EVP_MAC_init(3)>
=head1 HISTORY