getIssuerOrganizationalUnit method

String getIssuerOrganizationalUnit()

Gets the the organizational unit (OU) of the certificate issuer.

return The organizational unit (OU) of the certificate issuer. throws BiosealException An error has occurred during Bioseal Library execution.

Implementation

String getIssuerOrganizationalUnit() {
  Pointer<Char> pIssuerOrganizationalUnit = nullptr;
  Pointer<Int> pIssuerOrganizationalUnitSize = calloc.allocate(1);
  pIssuerOrganizationalUnitSize[0] = -1;
  try {
    var err = biosealSDK.id3BiosealCertificateInformation_GetIssuerOrganizationalUnit(_pHandle.value, pIssuerOrganizationalUnit, pIssuerOrganizationalUnitSize);
    if (err == BiosealError.insufficientBuffer.value) {
      pIssuerOrganizationalUnit = calloc.allocate(pIssuerOrganizationalUnitSize.value);
      err = biosealSDK.id3BiosealCertificateInformation_GetIssuerOrganizationalUnit(_pHandle.value, pIssuerOrganizationalUnit, pIssuerOrganizationalUnitSize);
      if (err != BiosealError.success.value) {
        throw BiosealException(err);
      }
    }
    final vIssuerOrganizationalUnit = utf8.decode(Uint8List.fromList(pIssuerOrganizationalUnit.cast<Uint8>().asTypedList(pIssuerOrganizationalUnitSize.value)));
    return vIssuerOrganizationalUnit;
  } finally {
    calloc.free(pIssuerOrganizationalUnit);
    calloc.free(pIssuerOrganizationalUnitSize);
  }
}