AES_unwrap_key_padded function

  1. @RecordUse.new()
  2. @Native<Int Function(Pointer<AES_KEY>, Pointer<Uint8>, Pointer<Size>, Size, Pointer<Uint8>, Size)>(ffi.Pointer<AES_KEY>, ffi.Pointer<ffi.Uint8>, ffi.Pointer<ffi.Size>, ffi.Size, ffi.Pointer<ffi.Uint8>, ffi.Size)>(symbol: 'bssl_dart_AES_unwrap_key_padded')
int AES_unwrap_key_padded(
  1. Pointer<AES_KEY> key,
  2. Pointer<Uint8> out,
  3. Pointer<Size> out_len,
  4. int max_out,
  5. Pointer<Uint8> in$,
  6. int in_len,
)

AES_unwrap_key_padded performs a padded AES key unwrap on in which must be a multiple of 8 bytes. key must have been configured for decryption. On success it writes at most max_out bytes to out, sets *out_len to the number of bytes written, and returns one. On failure it returns zero. Setting max_out to in_len is a sensible estimate.

Implementation

@meta.RecordUse()
@ffi.Native<
  ffi.Int Function(
    ffi.Pointer<AES_KEY>,
    ffi.Pointer<ffi.Uint8>,
    ffi.Pointer<ffi.Size>,
    ffi.Size,
    ffi.Pointer<ffi.Uint8>,
    ffi.Size,
  )
>(symbol: 'bssl_dart_AES_unwrap_key_padded')
external int AES_unwrap_key_padded(
  ffi.Pointer<AES_KEY> key,
  ffi.Pointer<ffi.Uint8> out,
  ffi.Pointer<ffi.Size> out_len,
  int max_out,
  ffi.Pointer<ffi.Uint8> in$,
  int in_len,
);