HMAC_Init_ex function
HMAC_Init_ex sets up an initialised |HMAC_CTX| to use |md| as the hash function and |key| as the key. For a non-initial call, |md| may be NULL, in which case the previous hash function will be used. If the hash function has not changed and |key| is NULL, |ctx| reuses the previous key. It returns one on success or zero on allocation failure.
WARNING: NULL and empty keys are ambiguous on non-initial calls. Passing NULL |key| but repeating the previous |md| reuses the previous key rather than the empty key.
Implementation
@meta.RecordUse()
@ffi.Native<
ffi.Int Function(
ffi.Pointer<HMAC_CTX>,
ffi.Pointer<ffi.Void>,
ffi.Size,
ffi.Pointer<EVP_MD>,
ffi.Pointer<ENGINE>,
)
>(symbol: 'bssl_dart_HMAC_Init_ex')
external int HMAC_Init_ex(
ffi.Pointer<HMAC_CTX> ctx,
ffi.Pointer<ffi.Void> key,
int key_len,
ffi.Pointer<EVP_MD> md,
ffi.Pointer<ENGINE> impl,
);