EVP_DigestSqueeze function

  1. @RecordUse.new()
  2. @Native<Int Function(Pointer<EVP_MD_CTX>, Pointer<UnsignedChar>, Size)>(ffi.Pointer<EVP_MD_CTX>, ffi.Pointer<ffi.UnsignedChar>, ffi.Size)>(symbol: 'bssl_dart_EVP_DigestSqueeze')
int EVP_DigestSqueeze(
  1. Pointer<EVP_MD_CTX> ctx,
  2. Pointer<UnsignedChar> out,
  3. int len
)

EVP_DigestSqueeze writes len bytes of output from ctx to out and returns one. This operation is only implemented if ctx was initialized with an extendable-output function, which can return arbitrarily long outputs. If not, this function returns zero. This function may be repeated to split its output over multiple calls. Doing so will give the same output as concatenating the calls into a single call.

Implementation

@meta.RecordUse()
@ffi.Native<
  ffi.Int Function(
    ffi.Pointer<EVP_MD_CTX>,
    ffi.Pointer<ffi.UnsignedChar>,
    ffi.Size,
  )
>(symbol: 'bssl_dart_EVP_DigestSqueeze')
external int EVP_DigestSqueeze(
  ffi.Pointer<EVP_MD_CTX> ctx,
  ffi.Pointer<ffi.UnsignedChar> out,
  int len,
);