NPKIT_x509CRLDistributionPoint

Returns information about a CRL Distribution Point in the certificate (formerly NWx509CRLDistributionPoint).

Syntax

   #include "NPKIT_x509.h"
   
   NWRCODE NPKIT_x509CRLDistributionPoint
   (
      NPKIT_x509Context     context,
      nuint32               index,
      pnuint32              dataSets,
      nuint8               *fullNameType,
      nuint8 const        **fullNameValue,
      pnuint32              fullNameValueLength,
      unicode const       **fullName,
      unicode const       **nameRelativeToCRLIssuer,
      pnuint32              reasons,
      nuint8               *crlIssuerType,
      nuint8 const        **crlIssuerValue,
      pnuint32              crlIssuerValueLength,
      unicode const       **crlIssuerName
   );
   

Parameters

context
(IN) Specifies the NPKIT_x509 context handle for the request.This is a nuint32 value.
index
(IN) Specifies which CRL distribution point is to be returned. index is 0 based.
dataSets
(OUT) Specifies which sets of data the function has returned. For more information, see Section 4.2, CRL Distribution Point Values.
fullNameType
(OUT) Points to the type of the ASN1 NAME in the certificate distribution point (CDP) (for example, URI, Directory Name, etc.). This parameter only set if dataSets includes the value Section 4.2, CRL Distribution Point Values.
fullNameValue
(OUT) Points to where the CRL can be acquired as encoded in the certificate. This parameter only set if dataSets includes the value NPKIT_x509DistPtsFullName.
fullNameValueLength
(OUT) Specifies the length in bytes of the data that fullNameValue points to. This parameter will only be set if dataSets includes the value NPKIT_x509DistPtsFullName.
fullName
(OUT) Points to a Unicode string containing the human-readable representation of where the CRL can be acquired. This parameter only is only set if the fullName type can be converted to a human-readable representation and if dataSets includes the value NPKIT_x509DistPtsFullName.
nameRelativeToCRLIssuer
(OUT) Points to where the CRL can be acquired, relative to the CRL issuer name as encoded in the certificate. Set this parameter only if dataSets includes NPKIT_x509DistPtsNameRelativeToCRLIssuer.
reasons
(OUT) Specifies the ivalidity reasons contained in the CRL. See Section 4.7.1, NPKIT_x509 CRL Distribution Point Reason Code .
crlIssuerType
(OUT) Points to the Issuer Name type; for example, X.500, distinguished name (DN), rfc822, DNS name, IP address, or URL. This parameter is only set if dataSets includes the value NPKIT_x509DistPtsCRLIssuer.
crlIssuerValue
(OUT) Points to the Issuer Name as encoded in the certificate. This parameter is only set if dataSets includes the value NPKIT_x509DistPtsCRLIssuer.
crlIssuerValueLength
(OUT) Specifies the length of the data pointed to by crlIssuerValue. This parameter is only set if dataSets includes the value NPKIT_x509DistPtsCRLIssuer.
crlIssuerName
(OUT) Points to a Unicode string containing the human-readable representation of the CRL Issuer’s Name. This parameter only is set if the crlIssuerName type can be converted to a human-readable representation and if dataSets includes the value NPKIT_x509DistPtsCRLIssuer.

Return Values

Returns 0 if successful or a PKI error code if not successful. For a listing of NPKIT error codes, see Certificate Server Error Code Constants.

Remarks

Before calling this function, you must first successfully call NPKIT_x509DecodeCertificate before calling NPKIT_x509CRLDistributionPointsInfo. Calling NPKIT_x509CRLDistributionPointsInfo is not necessary, but should be done before calling this function to determine whether distribution points exist, and how many there are. You can pass in a NULL to any of the OUT parameters, in which case no value is returned for that parameter. The CRL distribution points extension is an optional extension. Therefore, not all certificates have CRL distribution points information.

See Also

NPKIT_x509CRLDistributionPointsInfo, NPKIT_x509DecodeCertificate