HMAC function
- @RecordUse.new()
- @Native<Pointer<
Uint8> Function(Pointer<EVP_MD> , Pointer<Void> , Size, Pointer<Uint8> , Size, Pointer<Uint8> , Pointer<UnsignedInt> )>(ffi.Pointer<EVP_MD>, ffi.Pointer<ffi.Void>, ffi.Size, ffi.Pointer<ffi.Uint8>, ffi.Size, ffi.Pointer<ffi.Uint8>, ffi.Pointer<ffi.UnsignedInt>)>(symbol: 'bssl_dart_HMAC')
HMAC calculates the HMAC of |data_len| bytes of |data|, using the given key and hash function, and writes the result to |out|. On entry, |out| must contain at least |EVP_MD_size| bytes of space. The actual length of the result is written to |*out_len|. An output size of |EVP_MAX_MD_SIZE| will always be large enough. It returns |out| or NULL on error.
Implementation
@meta.RecordUse()
@ffi.Native<
ffi.Pointer<ffi.Uint8> Function(
ffi.Pointer<EVP_MD>,
ffi.Pointer<ffi.Void>,
ffi.Size,
ffi.Pointer<ffi.Uint8>,
ffi.Size,
ffi.Pointer<ffi.Uint8>,
ffi.Pointer<ffi.UnsignedInt>,
)
>(symbol: 'bssl_dart_HMAC')
external ffi.Pointer<ffi.Uint8> HMAC(
ffi.Pointer<EVP_MD> evp_md,
ffi.Pointer<ffi.Void> key,
int key_len,
ffi.Pointer<ffi.Uint8> data,
int data_len,
ffi.Pointer<ffi.Uint8> out,
ffi.Pointer<ffi.UnsignedInt> out_len,
);