ASN1_put_object function

  1. @RecordUse.new()
  2. @Native<Void Function(Pointer<Pointer<UnsignedChar>>, Int, Int, Int, Int)>(ffi.Pointer<ffi.Pointer<ffi.UnsignedChar>>, ffi.Int, ffi.Int, ffi.Int, ffi.Int)>(symbol: 'bssl_dart_ASN1_put_object')
void ASN1_put_object(
  1. Pointer<Pointer<UnsignedChar>> outp,
  2. int constructed,
  3. int length,
  4. int tag,
  5. int xclass,
)

ASN1_put_object writes the header for a DER or BER element to |*outp| and advances |*outp| by the number of bytes written. The caller is responsible for ensuring |outp| has enough space for the output. The header describes an element with length |length|, tag number |tag|, and class |xclass|. |xclass| should be one of the |V_ASN1_| tag class constants. The element is primitive if |constructed| is zero and constructed if it is one or two. If |constructed| is two, |length| is ignored and the element uses indefinite-length encoding.

Use |CBB_add_asn1| instead.

Implementation

@meta.RecordUse()
@ffi.Native<
  ffi.Void Function(
    ffi.Pointer<ffi.Pointer<ffi.UnsignedChar>>,
    ffi.Int,
    ffi.Int,
    ffi.Int,
    ffi.Int,
  )
>(symbol: 'bssl_dart_ASN1_put_object')
external void ASN1_put_object(
  ffi.Pointer<ffi.Pointer<ffi.UnsignedChar>> outp,
  int constructed,
  int length,
  int tag,
  int xclass,
);