CryptoSpi::CRuleSelector Class Reference

class CryptoSpi::CRuleSelector : public CBase

Selector apply the rule-based selection to find the plugin.

Inherits from

  • CryptoSpi::CRuleSelector
Public Member Functions
~CRuleSelector()
TInt AscendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendCreatorName(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendHashBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendHashOutputSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendLatency(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt AscendThroughput(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
voidCreateAsymmetricCipherL(CAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)
voidCreateAsyncAsymmetricCipherL(CAsyncAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)
voidCreateAsyncHashL(CAsyncHash *&, TUid, TUid, const CKey *, const CCryptoParams *)
voidCreateAsyncKeyAgreementL(CAsyncKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)
voidCreateAsyncKeyPairGeneratorL(CAsyncKeyPairGenerator *&, TUid, const CCryptoParams *)
voidCreateAsyncRandomL(CAsyncRandom *&, TUid, const CCryptoParams *)
voidCreateAsyncSignerL(CAsyncSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)
voidCreateAsyncSymmetricCipherL(CAsyncSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)
voidCreateAsyncVerifierL(CAsyncVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)
voidCreateHashL(CHash *&, TUid, TUid, const CKey *, const CCryptoParams *)
voidCreateKeyAgreementL(CKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)
voidCreateKeyPairGeneratorL(CKeyPairGenerator *&, TUid, const CCryptoParams *)
voidCreateRandomL(CRandom *&, TUid, const CCryptoParams *)
voidCreateSignerL(CSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)
voidCreateSymmetricCipherL(CSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)
voidCreateVerifierL(CVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)
TInt DescendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendCreatorName(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendHashBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendHashOutputSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendLatency(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
TInt DescendThroughput(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)
IMPORT_C CRuleSelector *NewL(CSelectionRules *)
IMPORT_C CRuleSelector *NewLC(CSelectionRules *)
Private Member Functions
CRuleSelector()
voidAddOptionalToCharListL(TInt32, CRulesCharacteristicsAndPluginName &)
voidAddToCharListL(TInt32, CRulesCharacteristicsAndPluginName &, TInt &)
voidConstructL(CSelectionRules *)
voidConstructMapAL()
TBool FilterCommonCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)
voidFilterCreatorNameL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)
TBool FilterExtendedCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)
voidFilterExtendedTDesC8L(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &, const TDesC8 &)
voidFilterMultiTInt32L(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TBool)
TBool FilterNonCommonCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)
voidFilterTBoolL(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TBool)
voidFilterTInt32L(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TInt32)
voidFilterTIntL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &, TInt)
TInt FindPlugin(TUid, TUid, TUid &, TFileName &)
voidLoadPluginsL()
voidPerformAlgorithmFilterL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)
voidPerformFilterL(CSelectionRules *)
voidSetSearchRecord(TUid, TInt)
voidTryAddToOptionalCharListL(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *)
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()
Private Attributes
const RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * > *iActiveInterfaceCharacteristics_Map
RHashMap< TInt32, TInt >iNextTryCharacteristicsIndex
RArray< RLibrary >iPluginDllList
RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * >iSelectedInterfaceCharacteristics_MapA
RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * >iSelectedInterfaceCharacteristics_MapB
CSelectionRules *iSelectionRules
TBool iToggleUseMap
TBool iUseMapAToFilter

Constructor & Destructor Documentation

CRuleSelector()

CRuleSelector()[private]

Constructor

~CRuleSelector()

IMPORT_C~CRuleSelector()

Destructor

Member Functions Documentation

AddOptionalToCharListL(TInt32, CRulesCharacteristicsAndPluginName &)

voidAddOptionalToCharListL(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristics
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristics

AddToCharListL(TInt32, CRulesCharacteristicsAndPluginName &, TInt &)

voidAddToCharListL(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristics,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristics
TInt & aLastPreference

AscendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendCreatorName(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendCreatorName(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendHashBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendHashBlockSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendHashOutputSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendHashOutputSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendLatency(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendLatency(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

AscendThroughput(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt AscendThroughput(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

ConstructL(CSelectionRules *)

voidConstructL(CSelectionRules *aRules)[private]

Second Phase Constructor

Parameters

CSelectionRules * aRules

ConstructMapAL()

voidConstructMapAL()[private]

CreateAsymmetricCipherL(CAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)

voidCreateAsymmetricCipherL(CAsymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsymmetricCipher *& aCipher
TUid aAlgorithmUid
const CKey & aKey
TUid aCryptoMode
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateAsyncAsymmetricCipherL(CAsyncAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)

voidCreateAsyncAsymmetricCipherL(CAsyncAsymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncAsymmetricCipher *& aCipher
TUid aAlgorithmUid
const CKey & aKey
TUid aCryptoMode
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateAsyncHashL(CAsyncHash *&, TUid, TUid, const CKey *, const CCryptoParams *)

voidCreateAsyncHashL(CAsyncHash *&aHash,
TUidaAlgorithmUid,
TUidaOperationMode,
const CKey *aKey,
const CCryptoParams *aAlgorithmParams
)[virtual]

virtual function from MPluginSelector

Parameters

CAsyncHash *& aHash
TUid aAlgorithmUid
TUid aOperationMode
const CKey * aKey
const CCryptoParams * aAlgorithmParams

CreateAsyncKeyAgreementL(CAsyncKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)

voidCreateAsyncKeyAgreementL(CAsyncKeyAgreement *&aKeyAgreement,
TUidaAlgorithmUid,
const CKey &aPrivateKey,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncKeyAgreement *& aKeyAgreement
TUid aAlgorithmUid
const CKey & aPrivateKey
const CCryptoParams * aAlgorithmParams

CreateAsyncKeyPairGeneratorL(CAsyncKeyPairGenerator *&, TUid, const CCryptoParams *)

voidCreateAsyncKeyPairGeneratorL(CAsyncKeyPairGenerator *&aKeyPairGenerator,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncKeyPairGenerator *& aKeyPairGenerator
TUid aAlgorithmUid
const CCryptoParams * aAlgorithmParams

CreateAsyncRandomL(CAsyncRandom *&, TUid, const CCryptoParams *)

voidCreateAsyncRandomL(CAsyncRandom *&aRandom,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncRandom *& aRandom
TUid aAlgorithmUid
const CCryptoParams * aAlgorithmParams

CreateAsyncSignerL(CAsyncSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)

voidCreateAsyncSignerL(CAsyncSigner *&aSigner,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncSigner *& aSigner
TUid aAlgorithmUid
const CKey & aKey
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateAsyncSymmetricCipherL(CAsyncSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)

voidCreateAsyncSymmetricCipherL(CAsyncSymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaOperationMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncSymmetricCipher *& aCipher
TUid aAlgorithmUid
const CKey & aKey
TUid aCryptoMode
TUid aOperationMode
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateAsyncVerifierL(CAsyncVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)

voidCreateAsyncVerifierL(CAsyncVerifier *&aVerifier,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CAsyncVerifier *& aVerifier
TUid aAlgorithmUid
const CKey & aKey
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateHashL(CHash *&, TUid, TUid, const CKey *, const CCryptoParams *)

voidCreateHashL(CHash *&aHash,
TUidaAlgorithmUid,
TUidaOperationMode,
const CKey *aKey,
const CCryptoParams *aAlgorithmParams
)[virtual]

virtual function from MPluginSelector

Parameters

CHash *& aHash
TUid aAlgorithmUid
TUid aOperationMode
const CKey * aKey
const CCryptoParams * aAlgorithmParams

CreateKeyAgreementL(CKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)

voidCreateKeyAgreementL(CKeyAgreement *&aKeyAgreement,
TUidaAlgorithmUid,
const CKey &aPrivateKey,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CKeyAgreement *& aKeyAgreement
TUid aAlgorithmUid
const CKey & aPrivateKey
const CCryptoParams * aAlgorithmParams

CreateKeyPairGeneratorL(CKeyPairGenerator *&, TUid, const CCryptoParams *)

voidCreateKeyPairGeneratorL(CKeyPairGenerator *&aKeyPairGenerator,
TUidaKeyAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CKeyPairGenerator *& aKeyPairGenerator
TUid aKeyAlgorithmUid
const CCryptoParams * aAlgorithmParams

CreateRandomL(CRandom *&, TUid, const CCryptoParams *)

voidCreateRandomL(CRandom *&aRandom,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CRandom *& aRandom
TUid aAlgorithmUid
const CCryptoParams * aAlgorithmParams

CreateSignerL(CSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)

voidCreateSignerL(CSigner *&aSigner,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CSigner *& aSigner
TUid aAlgorithmUid
const CKey & aKey
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateSymmetricCipherL(CSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)

voidCreateSymmetricCipherL(CSymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaOperationMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CSymmetricCipher *& aCipher
TUid aAlgorithmUid
const CKey & aKey
TUid aCryptoMode
TUid aOperationMode
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

CreateVerifierL(CVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)

voidCreateVerifierL(CVerifier *&aVerifier,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[virtual]

Parameters

CVerifier *& aVerifier
TUid aAlgorithmUid
const CKey & aKey
TUid aPaddingMode
const CCryptoParams * aAlgorithmParams

DescendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendAsymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendAsymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendAsymmetricKeypairGeneratorKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendAsymmetricSignatureKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendAsymmetricSignatureKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendCreatorName(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendCreatorName(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendExtendedCharacteristicL(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendExtendedTDesC8L(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendHashBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendHashBlockSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendHashOutputSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendHashOutputSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendLatency(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendLatency(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendMaxConcurrencySupported(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendRandomBlockingMode(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendSymmetricCipherBlockSize(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendSymmetricCipherKeyLength(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendSymmetricCipherKeySupport(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

DescendThroughput(const CRulesCharacteristicsAndPluginName &, const CRulesCharacteristicsAndPluginName &)

TInt DescendThroughput(const CRulesCharacteristicsAndPluginName &aLeft,
const CRulesCharacteristicsAndPluginName &aRight
)[static]

FilterCommonCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)

TBool FilterCommonCharacteristicsL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference

FilterCreatorNameL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)

voidFilterCreatorNameL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference

FilterExtendedCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)

TBool FilterExtendedCharacteristicsL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference

FilterExtendedTDesC8L(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &, const TDesC8 &)

voidFilterExtendedTDesC8L(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference,
const TDesC8 &aCharValue
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference
const TDesC8 & aCharValue

FilterMultiTInt32L(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TBool)

voidFilterMultiTInt32L(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference,
TBoolaSupport
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference
TBool aSupport

FilterNonCommonCharacteristicsL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)

TBool FilterNonCommonCharacteristicsL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference

FilterTBoolL(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TBool)

voidFilterTBoolL(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristics,
CSelectionRuleContent *aRules,
TInt &aLastPreference,
TBoolaCharValue
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristics
CSelectionRuleContent * aRules
TInt & aLastPreference
TBool aCharValue

FilterTInt32L(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *, TInt &, TInt32)

voidFilterTInt32L(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristics,
CSelectionRuleContent *aRules,
TInt &aLastPreference,
TInt32aCharValue
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristics
CSelectionRuleContent * aRules
TInt & aLastPreference
TInt32 aCharValue

FilterTIntL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &, TInt)

voidFilterTIntL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference,
TIntaCharValue
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference
TInt aCharValue

FindPlugin(TUid, TUid, TUid &, TFileName &)

TInt FindPlugin(TUidaInterfaceUid,
TUidaAlgorithmUid,
TUid &aImplementationId,
TFileName &aDllName
)[private]

Parameters

TUid aInterfaceUid
TUid aAlgorithmUid
TUid & aImplementationId
TFileName & aDllName

LoadPluginsL()

voidLoadPluginsL()[private]

Loads the crypto plugins

NewL(CSelectionRules *)

IMPORT_C CRuleSelector *NewL(CSelectionRules *aRules)[static]

NewL create the ruled-based selector

Parameters

CSelectionRules * aRulesThe Rules to select the plugins

NewLC(CSelectionRules *)

IMPORT_C CRuleSelector *NewLC(CSelectionRules *aRules)[static]

Parameters

CSelectionRules * aRules

PerformAlgorithmFilterL(TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > &, CSelectionRuleContent *, TInt &)

voidPerformAlgorithmFilterL(TInt32aInterfaceUid,
RPointerArray< CRulesCharacteristicsAndPluginName > &aCharacteristicsDLL,
CSelectionRuleContent *aRules,
TInt &aLastPreference
)[private]

Parameters

TInt32 aInterfaceUid
RPointerArray< CRulesCharacteristicsAndPluginName > & aCharacteristicsDLL
CSelectionRuleContent * aRules
TInt & aLastPreference

PerformFilterL(CSelectionRules *)

voidPerformFilterL(CSelectionRules *aRules)[private]

Parameters

CSelectionRules * aRules

SetSearchRecord(TUid, TInt)

voidSetSearchRecord(TUidaInterfaceUid,
TIntaValue
)[private]

Parameters

TUid aInterfaceUid
TInt aValue

TryAddToOptionalCharListL(TInt32, CRulesCharacteristicsAndPluginName &, CSelectionRuleContent *)

voidTryAddToOptionalCharListL(TInt32aInterfaceUid,
CRulesCharacteristicsAndPluginName &aCharacteristics,
CSelectionRuleContent *aRules
)[private]

Parameters

TInt32 aInterfaceUid
CRulesCharacteristicsAndPluginName & aCharacteristics
CSelectionRuleContent * aRules

Member Data Documentation

const RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * > * iActiveInterfaceCharacteristics_Map

const RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * > *iActiveInterfaceCharacteristics_Map[private]

Pointer of the active map of the interface UID and the characteristic list

RHashMap< TInt32, TInt > iNextTryCharacteristicsIndex

RHashMap< TInt32, TInt >iNextTryCharacteristicsIndex[private]

Records the next index to try

RArray< RLibrary > iPluginDllList

RArray< RLibrary >iPluginDllList[private]

The plugin DLL list, which holds all the plugin DLLs

RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * > iSelectedInterfaceCharacteristics_MapA

RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * >iSelectedInterfaceCharacteristics_MapA[private]

Maps of the interface UID and the pointer of algorithm's characteristic array They are used alternatively to filter from one array to the other The final array will be set to iActiveInterfaceCharacteristics_Map for plugin lookup

RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * > iSelectedInterfaceCharacteristics_MapB

RHashMap< TInt32, RPointerArray< CRulesCharacteristicsAndPluginName > * >iSelectedInterfaceCharacteristics_MapB[private]

CSelectionRules * iSelectionRules

CSelectionRules *iSelectionRules[private]

The selection rules to filter the plugins

TBool iToggleUseMap

TBool iToggleUseMap[private]

This is use to indicate whether to alternate the maps for next rule filtering or not

TBool iUseMapAToFilter

TBool iUseMapAToFilter[private]

To indicate whether to use iSelectedInterfaceCharacteristics_MapA or iSelectedInterfaceCharacteristics_MapA to filter