#include <CRL.h>
CertificateList ::= SIGNED { UnsignedCertificateList }
UnsignedCertificateList ::= SEQUENCE { version Version OPTIONAL, signature AlgorithmIdentifier, issuer Name, thisUpdate Time, nextUpdate Time OPTIONAL, revokedCertificates RevokedCertificates OPTIONAL, crlExtensions [0] Extensions OPTIONAL }The SignatureValidityCache interface is currently not used. In future versions of PKIF, it may be used to cache signature verification status for a CRL.
The CPKIFCRL member functions provide access to the contents of the CRL, but it is not normally necessary for an application to access these contents directly. PKIF does not provide a means for creating CRL, i.e. PKIF can not currently be used to implement a certification authority.
TSP-enforcing: No
Definition at line 55 of file CRL.h.
Public Member Functions | |
CPKIFCRL (void) | |
virtual | ~CPKIFCRL (void) |
virtual void | Decode (const unsigned char *cert, int certLen) |
virtual CPKIFBufferPtr | Encoded () const |
virtual int | Version () const |
virtual CPKIFNamePtr | Issuer () const |
virtual CPKIFBufferPtr | Signature () const |
virtual CPKIFTimePtr | NextUpdate () const |
virtual CPKIFTimePtr | ThisUpdate () const |
virtual CPKIFAlgorithmIdentifierPtr | SignatureAlgorithm () const |
virtual bool | operator== (const CPKIFCRL &rhs) const |
virtual void | PopulateEntryMap () |
virtual std::vector< std::pair < CPKIFNamePtr, std::map < std::string, CPKIFCRLEntryPtr > > > | GetCRLEntryMap () |
virtual bool | CertOnThisCRL (const CPKIFCertificatePtr &cert, CPKIFCRLEntryPtr &crlEntry) |
virtual bool | AreThereAnyUnprocessedCriticalExtensions (std::vector< CPKIFX509ExtensionPtr > &processedExts) |
virtual void | GetEncodedExtensions (CPKIFBufferPtr &buf) |
virtual void | GetExtensionByOID (const CPKIFOID &oid, CPKIFX509ExtensionPtr &ref) |
CPKIFCRL::CPKIFCRL | ( | void | ) |
CPKIFCRL::~CPKIFCRL | ( | void | ) | [virtual] |
void CPKIFCRL::Decode | ( | const unsigned char * | cert, | |
int | certLen | |||
) | [virtual] |
Interface: External
This function is used to decode an encoded CRL. A copy of the encoded CRL is maintained and is accessible via a call to Encoded.
cert | [in] The encoded CRL to decode. |
certLen | [in] The length of the crl parameter. |
Reimplemented in CPKIFCapiCRL.
Definition at line 308 of file CRL.cpp.
References PEMDecode_l(), and Version().
CPKIFBufferPtr CPKIFCRL::Encoded | ( | ) | const [virtual] |
Interface: External
This function is used to retrieve an encoded certificate in the form of a smart pointer to a CPKIFBuffer object, which may contain NULL if Decode has not been successfully called. As PKIF is a toolkit intended for use enabling client applications, PKIF does not support creation of CRLs and does not feature an Encode function. The value returned from this function is a copy of the buffer passed to Decode.
Reimplemented in CPKIFCapiCRL.
Definition at line 442 of file CRL.cpp.
Referenced by operator==(), and CPKIFCapiCRL::operator==().
int CPKIFCRL::Version | ( | ) | const [virtual] |
Interface: External
This function returns the version number from a CRL object. PKIF supports version 1 and version 2 CRLs
CPKIFException(COMMON_INVALID_INPUT) | ||
CPKIFException(COMMON_UNSUPPORTED_VERSION) |
Reimplemented in CPKIFCapiCRL.
Definition at line 373 of file CRL.cpp.
References COMMON_INVALID_INPUT, COMMON_UNSUPPORTED_VERSION, TOOLKIT_ASN, and TOOLKIT_X509_ASN.
Referenced by Decode().
CPKIFNamePtr CPKIFCRL::Issuer | ( | ) | const [virtual] |
Interface: External
This function returns a smart pointer to a CPKIFName object containing the issuer name from a CRL object.
CPKIFException(COMMON_INVALID_INPUT) |
Reimplemented in CPKIFCapiCRL.
Definition at line 407 of file CRL.cpp.
References CACASNWRAPPER_CREATE, COMMON_INVALID_INPUT, m_impl, and TOOLKIT_X509_ASN.
Referenced by CertOnThisCRL().
CPKIFBufferPtr CPKIFCRL::Signature | ( | ) | const [virtual] |
Interface: External
This function returns a smart pointer to a CPKIFBuffer object containing the signature from a CRL object.
Reimplemented in CPKIFCapiCRL.
CPKIFTimePtr CPKIFCRL::NextUpdate | ( | ) | const [virtual] |
Interface: External
This function returns a smart pointer to a CPKIFTime object containing the next update time from a CRL object.
CPKIFException(COMMON_INVALID_INPUT) |
Reimplemented in CPKIFCapiCRL.
Definition at line 576 of file CRL.cpp.
References COMMON_INVALID_INPUT, CPKIFTime, GENERALIZEDTIME, m_impl, TOOLKIT_X509_ASN, and UTCTIME.
CPKIFTimePtr CPKIFCRL::ThisUpdate | ( | ) | const [virtual] |
Interface: External
This function returns a smart pointer to a CPKIFTime object containing the this update time from a CRL object.
CPKIFException(COMMON_INVALID_INPUT) |
Reimplemented in CPKIFCapiCRL.
Definition at line 609 of file CRL.cpp.
References COMMON_INVALID_INPUT, CPKIFTime, GENERALIZEDTIME, m_impl, TOOLKIT_X509_ASN, and UTCTIME.
CPKIFAlgorithmIdentifierPtr CPKIFCRL::SignatureAlgorithm | ( | ) | const [virtual] |
Interface: External
This function returns a smart pointer to a CPKIFAlgorithmIdentifier object containing te signature algorithm from a CRL object.
CPKIFException(COMMON_INVALID_INPUT) |
Reimplemented in CPKIFCapiCRL.
Definition at line 642 of file CRL.cpp.
References COMMON_INVALID_INPUT, m_impl, and TOOLKIT_X509_ASN.
bool CPKIFCRL::operator== | ( | const CPKIFCRL & | rhs | ) | const [virtual] |
Interface: External
This function returns true if each CPKICRL points to the same encoded buffer and false otherwise.
Reimplemented in CPKIFCapiCRL.
Definition at line 708 of file CRL.cpp.
References Encoded().
void CPKIFCRL::PopulateEntryMap | ( | ) | [virtual] |
std::vector< pair< CPKIFNamePtr, std::map< std::string, CPKIFCRLEntryPtr > > > CPKIFCRL::GetCRLEntryMap | ( | ) | [virtual] |
bool CPKIFCRL::CertOnThisCRL | ( | const CPKIFCertificatePtr & | cert, | |
CPKIFCRLEntryPtr & | crlEntry | |||
) | [virtual] |
Interface: External
This function is used to determine if a specified certificate is listed on the CRL. If the certificate does appear on the CRL, true is returned and the crlEntry parameter points to the entry on the CRL related to the certificate.
CPKIFException(COMMON_INVALID_INPUT) |
cert | [in] The certificate to look for. |
crlEntry | [out] The CRL entry for the certificate, if present. |
Reimplemented in CPKIFCapiCRL.
bool CPKIFCRL::AreThereAnyUnprocessedCriticalExtensions | ( | std::vector< CPKIFX509ExtensionPtr > & | processedExts | ) | [virtual] |
Interface: External
This function is used to determine if the CRL holds any unprocessed critical extensions. Process extensions are passed via the processedExts function.
processedExts | [in] A vector of the currently processed extensions. |
Reimplemented in CPKIFCapiCRL.
Definition at line 677 of file CRL.cpp.
References ExtensionsMatch::SetRHS().
void CPKIFCRL::GetEncodedExtensions | ( | CPKIFBufferPtr & | buf | ) | [virtual] |
Interface: External
This function retrives all the encoded extension
buf | [in] A smart pointer to CPKIFBuffer object which will contain all the extensions |
Implements IPKIFHasExtensions.
Reimplemented in CPKIFCapiCRL.
Definition at line 248 of file CRL.cpp.
References CACASNWRAPPER_CREATE, and data.
void CPKIFCRL::GetExtensionByOID | ( | const CPKIFOID & | oid, | |
CPKIFX509ExtensionPtr & | ref | |||
) | [virtual] |
Interface: External
This function retrives the extension identified by CPKIFOID object
oid | [in] Identifies the extension sought |
ref | [out] The extension (if present). |
Implements IPKIFHasExtensions.
Reimplemented in CPKIFCapiCRL.