CCMSX509Certificate Class Reference

class CCMSX509Certificate : public CCMSX509Signed

X.509 CertificateInfo type module

ASN.1 definition: -- basic certificate definition Certificate ::= SIGNED {SEQUENCE {version [0] Version DEFAULT v1, serialNumber CertificateSerialNumber, signature AlgorithmIdentifier, issuer Name, validity Validity, subject Name, subjectPublicKeyInfo SubjectPublicKeyInfo, issuerUniqueIdentifier [1] IMPLICIT UniqueIdentifier OPTIONAL, -- if present, version must be v2 or v3 subjectUniqueIdentifier [2] IMPLICIT UniqueIdentifier OPTIONAL, -- if present, version must be v2 or v3 extensions [3] Extensions OPTIONAL }} -- If present, version must be v3

cms.lib
Since
3.0

Inherits from

Public Member Functions
~CCMSX509Certificate()
voidDecodeL(const TDesC8 &)
CASN1EncBase *EncoderLC()
IMPORT_C const CX500DistinguishedName &Issuer()
IMPORT_C const TDesC8 *IssuerUniqueIdentifier()
IMPORT_C CCMSX509Certificate *NewL()
IMPORT_C CCMSX509Certificate *NewL(const CX509Certificate &)
IMPORT_C CCMSX509Certificate *NewL(const TDesC8 &, const CCMSX509AlgorithmIdentifier &, const CX500DistinguishedName &, const CCMSX509Validity &, const CX500DistinguishedName &, const CCMSX509SubjectPublicKeyInfo &, const CCMSX509AlgorithmIdentifier &, const TDesC8 &)
IMPORT_C const TDesC8 &SerialNumber()
IMPORT_C voidSetIssuerL(const CX500DistinguishedName &)
IMPORT_C voidSetIssuerUniqueIdentifierL(const TDesC8 &)
IMPORT_C voidSetSerialNumberL(const TDesC8 &)
IMPORT_C voidSetSignatureL(const CCMSX509AlgorithmIdentifier &)
IMPORT_C voidSetSubjectL(const CX500DistinguishedName &)
IMPORT_C voidSetSubjectPublicKeyInfoL(const CCMSX509SubjectPublicKeyInfo &)
IMPORT_C voidSetSubjectUniqueIdentifierL(const TDesC8 &)
IMPORT_C voidSetValidityL(const CCMSX509Validity &)
IMPORT_C voidSetVersion(const TInt)
IMPORT_C const CCMSX509AlgorithmIdentifier &Signature()
IMPORT_C const CX500DistinguishedName &Subject()
IMPORT_C const CCMSX509SubjectPublicKeyInfo &SubjectPublicKeyInfo()
IMPORT_C const TDesC8 *SubjectUniqueIdentifier()
IMPORT_C CASN1EncBase *ToBeSignedEncoderLC()
IMPORT_C const CCMSX509Validity &Validity()
IMPORT_C TIntVersion()
Protected Member Functions
CCMSX509Certificate()
IMPORT_C voidConstructL(const TDesC8 &, const CCMSX509AlgorithmIdentifier &, const CX500DistinguishedName &, const CCMSX509Validity &, const CX500DistinguishedName &, const CCMSX509SubjectPublicKeyInfo &, const CCMSX509AlgorithmIdentifier &, const TDesC8 &)
IMPORT_C voidConstructL()
IMPORT_C voidConstructL(const CX509Certificate &)
Private Member Functions
NONSHARABLE_CLASS(CCertificateData)
voidSetDataL(const CX509Certificate &)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CCMSSequence::CCMSSequence()
CCMSSequence::CreateDerEncodingL(CASN1EncBase *)
CCMSSequence::DecodeSequenceLC(const TDesC8 &)
CCMSSequence::DecodeSequenceLC(const TDesC8 &,TInt,TInt)
CCMSSequence::EncodeL(HBufC8 *&)const
CCMSX509Signed::AlgorithmIdentifier()const
CCMSX509Signed::BaseConstructL(const CCMSX509AlgorithmIdentifier &,const TDesC8 &)
CCMSX509Signed::CCMSX509Signed()
CCMSX509Signed::DecodeSignatureArrayL(CArrayPtr< TASN1DecGeneric > &,CCMSX509AlgorithmIdentifier *&,HBufC8 *&)const
CCMSX509Signed::DecodeSignatureL(const TDesC8 &,CCMSX509AlgorithmIdentifier *&,HBufC8 *&)const
CCMSX509Signed::Encrypted()const
CCMSX509Signed::SetAlgorithmIdentifierL(const CCMSX509AlgorithmIdentifier &)
CCMSX509Signed::SetEncryptedL(const TDesC8 &)
CCMSX509Signed::SignAndPopLC(CASN1EncBase *)const
CCMSX509Signed::~CCMSX509Signed()
Private Attributes
CCertificateData *iData
MCMSX509CertificateExtension *iReserved
Inherited Attributes
CCMSX509Signed::iAlgorithmIdentifier
CCMSX509Signed::iEncrypted

Constructor & Destructor Documentation

CCMSX509Certificate()

IMPORT_CCCMSX509Certificate()[protected]

C++ default constructor.

~CCMSX509Certificate()

~CCMSX509Certificate()[virtual]

Destructor.

Member Functions Documentation

ConstructL(const TDesC8 &, const CCMSX509AlgorithmIdentifier &, const CX500DistinguishedName &, const CCMSX509Validity &, const CX500DistinguishedName &, const CCMSX509SubjectPublicKeyInfo &, const CCMSX509AlgorithmIdentifier &, const TDesC8 &)

IMPORT_C voidConstructL(const TDesC8 &aSerialNumber,
const CCMSX509AlgorithmIdentifier &aSignature,
const CX500DistinguishedName &aIssuer,
const CCMSX509Validity &aValidity,
const CX500DistinguishedName &aSubject,
const CCMSX509SubjectPublicKeyInfo &aSubjectPublicKeyInfo,
const CCMSX509AlgorithmIdentifier &aAlgorithmIdentifier,
const TDesC8 &aEncrypted
)[protected]

Protected construction to allow derivation

Parameters

const TDesC8 & aSerialNumber
const CCMSX509AlgorithmIdentifier & aSignature
const CX500DistinguishedName & aIssuer
const CCMSX509Validity & aValidity
const CX500DistinguishedName & aSubject
const CCMSX509SubjectPublicKeyInfo & aSubjectPublicKeyInfo
const CCMSX509AlgorithmIdentifier & aAlgorithmIdentifier
const TDesC8 & aEncrypted

ConstructL()

IMPORT_C voidConstructL()[protected]

Protected construction to allow derivation

ConstructL(const CX509Certificate &)

IMPORT_C voidConstructL(const CX509Certificate &aCertificate)[protected]

Protected construction to allow derivation.

Parameters

const CX509Certificate & aCertificate

DecodeL(const TDesC8 &)

voidDecodeL(const TDesC8 &aRawData)
From MCMSModule
Since
3.0

Parameters

const TDesC8 & aRawDataraw-data to be parsed in this instance

EncoderLC()

CASN1EncBase *EncoderLC()const
From MCMSModule
Since
3.0

Issuer()

IMPORT_C const CX500DistinguishedName &Issuer()const
Getter for the issuer.
Since
3.0

IssuerUniqueIdentifier()

IMPORT_C const TDesC8 *IssuerUniqueIdentifier()const
Getter for the issuerUniqueIdentifier.
Since
3.0

NONSHARABLE_CLASS(CCertificateData)

NONSHARABLE_CLASS(CCertificateData)[private, inline]

Container for certificate data

Parameters

CCertificateData

NewL()

IMPORT_C CCMSX509Certificate *NewL()[static]

Two-phased constructor.

NewL(const CX509Certificate &)

IMPORT_C CCMSX509Certificate *NewL(const CX509Certificate &aCertificate)[static]

Two-phased constructor. Copies the data from the CX509Certificate parameter.

Parameters

const CX509Certificate & aCertificateCertificate from which the data is copied.

NewL(const TDesC8 &, const CCMSX509AlgorithmIdentifier &, const CX500DistinguishedName &, const CCMSX509Validity &, const CX500DistinguishedName &, const CCMSX509SubjectPublicKeyInfo &, const CCMSX509AlgorithmIdentifier &, const TDesC8 &)

IMPORT_C CCMSX509Certificate *NewL(const TDesC8 &aSerialNumber,
const CCMSX509AlgorithmIdentifier &aSignature,
const CX500DistinguishedName &aIssuer,
const CCMSX509Validity &aValidity,
const CX500DistinguishedName &aSubject,
const CCMSX509SubjectPublicKeyInfo &aSubjectPublicKeyInfo,
const CCMSX509AlgorithmIdentifier &aAlgorithmIdentifier,
const TDesC8 &aEncrypted
)[static]

Two-phased constructor. Copies of the parameters are made.

Parameters

const TDesC8 & aSerialNumberCertificateSerialNumber value
const CCMSX509AlgorithmIdentifier & aSignatureAlgorithmIdentifier value
const CX500DistinguishedName & aIssuerName value
const CCMSX509Validity & aValidityValidity value
const CX500DistinguishedName & aSubjectName value
const CCMSX509SubjectPublicKeyInfo & aSubjectPublicKeyInfoSubjectPublicKeyInfo value
const CCMSX509AlgorithmIdentifier & aAlgorithmIdentifieridentifies the algorithm used in the signature
const TDesC8 & aEncryptedmust be the result of applying a hashing procedure to the DER-encoded octets of a value of toBeSigned and then applying an encipherment procedure to those octets

SerialNumber()

IMPORT_C const TDesC8 &SerialNumber()const
Getter for the serialNumber.
Since
3.0

SetDataL(const CX509Certificate &)

voidSetDataL(const CX509Certificate &aCertificate)[private]

Copies the data from the CX509Certificate object.

Parameters

const CX509Certificate & aCertificate

SetIssuerL(const CX500DistinguishedName &)

IMPORT_C voidSetIssuerL(const CX500DistinguishedName &aIssuer)
Setter for the issuer.
Since
3.0

Parameters

const CX500DistinguishedName & aIssuerThe X.500 DistinguishedName of the issuer of the certificate

SetIssuerUniqueIdentifierL(const TDesC8 &)

IMPORT_C voidSetIssuerUniqueIdentifierL(const TDesC8 &aIssuerUniqueIdentifier)
Setter for the issuerUniqueIdentifier. Also makes sure version is v2 or v3 (integer values 1 and 2).
Since
3.0

Parameters

const TDesC8 & aIssuerUniqueIdentifierUniqueIdentifier (BIT STRING)

SetSerialNumberL(const TDesC8 &)

IMPORT_C voidSetSerialNumberL(const TDesC8 &aSerialNumber)
Setter for the serialNumber.
Since
3.0

Parameters

const TDesC8 & aSerialNumberCertificateSerialNumber

SetSignatureL(const CCMSX509AlgorithmIdentifier &)

IMPORT_C voidSetSignatureL(const CCMSX509AlgorithmIdentifier &aSignature)
Setter for the signature.
Since
3.0

Parameters

const CCMSX509AlgorithmIdentifier & aSignatureAlgorithmIdentifier

SetSubjectL(const CX500DistinguishedName &)

IMPORT_C voidSetSubjectL(const CX500DistinguishedName &aSubject)
Setter for the Subject.
Since
3.0

Parameters

const CX500DistinguishedName & aSubjectX.500 DistinguishedName of the subject of the certificate

SetSubjectPublicKeyInfoL(const CCMSX509SubjectPublicKeyInfo &)

IMPORT_C voidSetSubjectPublicKeyInfoL(const CCMSX509SubjectPublicKeyInfo &aSubjectPublicKeyInfo)
Setter for the SubjectPublicKeyInfo.
Since
3.0

Parameters

const CCMSX509SubjectPublicKeyInfo & aSubjectPublicKeyInfoSubjectPublicKeyInfo

SetSubjectUniqueIdentifierL(const TDesC8 &)

IMPORT_C voidSetSubjectUniqueIdentifierL(const TDesC8 &aSubjectUniqueIdentifier)
Setter for the subjectUniqueIdentifier. Also makes sure version is v2 or v3 (integer values 1 and 2).
Since
3.0

Parameters

const TDesC8 & aSubjectUniqueIdentifierUniqueIdentifier (BIT STRING)

SetValidityL(const CCMSX509Validity &)

IMPORT_C voidSetValidityL(const CCMSX509Validity &aValidity)
Setter for the validity.
Since
3.0

Parameters

const CCMSX509Validity & aValidityValidity

SetVersion(const TInt)

IMPORT_C voidSetVersion(const TIntaVersion)
Setter for the version.
Since
3.0

Parameters

const TInt aVersionVersion

Signature()

IMPORT_C const CCMSX509AlgorithmIdentifier &Signature()const
Getter for the signature.
Since
3.0

Subject()

IMPORT_C const CX500DistinguishedName &Subject()const
Getter for the subject.
Since
3.0

SubjectPublicKeyInfo()

IMPORT_C const CCMSX509SubjectPublicKeyInfo &SubjectPublicKeyInfo()const
Getter for the subjectPublicKeyInfo.
Since
3.0

SubjectUniqueIdentifier()

IMPORT_C const TDesC8 *SubjectUniqueIdentifier()const
Getter for the subjectUniqueIdentifier.
Since
3.0

ToBeSignedEncoderLC()

IMPORT_C CASN1EncBase *ToBeSignedEncoderLC()const
Returns ASN1 encoder for the ToBeSigned part.
Since
3.0

Validity()

IMPORT_C const CCMSX509Validity &Validity()const
Getter for the validity.
Since
3.0

Version()

IMPORT_C TIntVersion()const
Getter for the version.
Since
3.0

Member Data Documentation

CCertificateData * iData

CCertificateData *iData[private]

MCMSX509CertificateExtension * iReserved

MCMSX509CertificateExtension *iReserved[private]