diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/x509certext.h --- a/epoc32/include/x509certext.h Wed Mar 31 12:27:01 2010 +0100 +++ b/epoc32/include/x509certext.h Wed Mar 31 12:33:34 2010 +0100 @@ -32,11 +32,9 @@ */ - - /** @file - @internalAll + @publishedAll @released */ @@ -47,14 +45,41 @@ #include #include +#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS +#include +#endif class RReadStream; class RWriteStream; +class CX509BitString; +/** A list of values that defines what an X.509 key can be used for. +* These values can be ANDed together if a key has several usages. +* +* @since v7.0 */ +enum TX509KeyUsage + { + /** A digital signature. */ + EX509DigitalSignature, + /** Non repudiation. */ + EX509NonRepudiation, + /** Key encipherment. */ + EX509KeyEncipherment, + /** Data encipherment. */ + EX509DataEncipherment, + /** Key agreement. */ + EX509KeyAgreement, + /** Key certificate sign. */ + EX509KeyCertSign, + /** CRL sign. */ + EX509CRLSign, + /** Encipher only. */ + EX509EncipherOnly, + /** Decipher only. */ + EX509DecipherOnly + }; /** X509 Extension OIDs * -* @publishedAll -* @released * @since v9.5 */ //OIDS for the extensions we define here... @@ -98,8 +123,6 @@ class CX509ExtensionBase : public CBase /** A certificate extension base class. * -* @publishedAll -* @released * @since v6.0 */ { protected: @@ -126,8 +149,6 @@ * It indicates whether the certificate belongs to a Certificate Authority or * an end Entity. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -197,8 +218,6 @@ * * It consists of an array of X.509 General Names. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -259,71 +278,9 @@ CArrayPtrFlat* iAuthorityName; }; -//3) key usage - -class CX509BitString : public CBase -/** An X.509 bit string. -* -* @internalTechnology -* @released -* @since v6.0 */ - { -public: - /** Destructor. - * - * Frees all resources owned by the object. */ - ~CX509BitString(); - - /** Tests whether the specified bit is set. - * - * @param aBit The offset of the bit to be tested. This is a value relative to - * zero. Any value greater than or equal to the length of the bit - * string will always cause EFalse to be returned. - * @return ETrue, if the bit is set; EFalse, otherwise. */ - TBool IsSet(TInt aBit) const; - - /** Creates the X.509 bit string. - * - * @param aData A heap descriptor representing the bit string data. - * @param aEffectiveLength The number of bits in the string. */ - CX509BitString(HBufC8* aData, TInt aEffectiveLength); -private: - HBufC8* iData; - TInt iLength; - }; - -/** A list of values that defines what an X.509 key can be used for. -* These values can be ANDed together if a key has several usages. -* -* @internalTechnology -* @since v7.0 */ -enum TX509KeyUsage - { - /** A digital signature. */ - EX509DigitalSignature, - /** Non repudiation. */ - EX509NonRepudiation, - /** Key encipherment. */ - EX509KeyEncipherment, - /** Data encipherment. */ - EX509DataEncipherment, - /** Key agreement. */ - EX509KeyAgreement, - /** Key certificate sign. */ - EX509KeyCertSign, - /** CRL sign. */ - EX509CRLSign, - /** Encipher only. */ - EX509EncipherOnly, - /** Decipher only. */ - EX509DecipherOnly - }; - class CX509KeyUsageExt : public CX509ExtensionBase /** An X.509 certificate extension that defines the uses to which a key may be put. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -366,7 +323,7 @@ /** Tests whether a particular usage is set in the extension. * - * @internalTechnology + * * @param aUsage The usage. * @return ETrue, if the specific usage is set in the extension; EFalse, otherwise. */ IMPORT_C TBool IsSet(TX509KeyUsage aUsage) const; @@ -381,8 +338,6 @@ class CX509GeneralSubtree : public CBase /** Provides access to the general name and the min/max lengths of the subtree. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -465,8 +420,7 @@ * This extension allows Certification Authorities to restrict or prevent the issuing * of certificates to entities whose names lie within a defined name space. * -* @publishedAll -* @released */ +*/ { public: /** Creates a new CX509NameConstraintsExt object from the specified @@ -544,8 +498,6 @@ * the appearance of explicit certificate policies in subsequent certificates, * and prevent policy mapping from being performed. * -* @publishedAll -* @released */ { public: @@ -591,8 +543,6 @@ * @li to enforce the appearance of explicit certificate policies in subsequent certificates * @li to prevent policy mapping from being performed. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -654,8 +604,6 @@ class CX509PolicyQualifierInfo : public CBase /** Gets X.509 policy qualifier information. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -809,8 +757,6 @@ * of these specific policies. * * @see CX509CertPoliciesExt -* @publishedAll -* @released * @since v6.0 */ { public: @@ -941,8 +887,6 @@ * * Contains further information on a client's signature. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -998,8 +942,6 @@ class CX509PolicyMapping : public CBase /** A set of policy mappings. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -1086,8 +1028,6 @@ * A policy mapping allows a Certification Authority to declare that two certificate * policies are equivalent. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -1149,8 +1089,6 @@ * serial number, or by a key identifier value either derived from the public * key or by some method of generating unique IDs. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -1226,8 +1164,6 @@ * It consists of a key identifier value either derived from the public key or * by some method of generating unique IDs. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -1284,8 +1220,6 @@ * * This is referred to as the extended key usage extension. * -* @publishedAll -* @released * @since v6.0 */ { public: @@ -1345,8 +1279,6 @@ /** This class provides the access method OID and access location as used by X.509 private internet extensions * (authority information access). * - * @publishedAll - * @released */ { public: @@ -1426,8 +1358,6 @@ /** An X.509 certificate extension that defines the authority information access. * * - * @publishedAll - * @released */ {