MTLSTokenProvider Class Reference

class MTLSTokenProvider : public MCTTokenInterface

This an interface to a cryptographic token that is capable to provide services for TLS/SSL protocols.

Inherits from

Member Functions Documentation

CancelClearSessionCache()

void CancelClearSessionCache ( ) [pure virtual]

Cancels corresponding asynchronous request.

CancelCryptoCapabilities()

void CancelCryptoCapabilities ( ) [pure virtual]

Cancels corresponding asynchronous request.

CancelGetSession()

void CancelGetSession ( ) [pure virtual]

Cancels corresponding asynchronous request.

ClearSessionCache(const TTLSServerAddr &, TTLSSessionId &, TBool &, TRequestStatus &)

void ClearSessionCache ( const TTLSServerAddr & aServerName,
TTLSSessionId & aSession,
TBool & aResult,
TRequestStatus & aStatus
) [pure virtual]

Clears a session identified by aServerName and aSession.iId from associated token's cache. The operation may fail if session cached in the token is in use.

Parameters

const TTLSServerAddr & aServerName the name of the server the TLS protocol tried to connect to
TTLSSessionId & aSession the session identifier object relating to the server indicated in the first parameter
TBool & aResult a result of the operation: ETrue if cache cleared, EFalse if not
TRequestStatus & aStatus asynchronous request status set on the completion

CryptoCapabilities(RArray< TTLSProtocolVersion > &, RArray< TTLSKeyExchangeAlgorithm > &, RArray< TTLSSignatureAlgorithm > &, TRequestStatus &)

void CryptoCapabilities ( RArray < TTLSProtocolVersion > & aProtocols,
RArray < TTLSKeyExchangeAlgorithm > & aKeyExchAlgs,
RArray < TTLSSignatureAlgorithm > & aSigAlgs,
TRequestStatus & aStatus
) [pure virtual]

Retrieves list of protocol versions, key exchange algorithms and signature algorithms supported by the token.

Parameters

RArray < TTLSProtocolVersion > & aProtocols a list of supported protocol versions is returned in this parameter
RArray < TTLSKeyExchangeAlgorithm > & aKeyExchAlgs a list of supported key exchange algorithms is returned in this parameter
RArray < TTLSSignatureAlgorithm > & aSigAlgs a list of supported signature algorithms is returned in this parameter
TRequestStatus & aStatus asynchronous request status set on the completion

GetSession(const TTLSServerAddr &, RArray< TTLSProtocolVersion > &, TTLSSessionData &, TRequestStatus &)

void GetSession ( const TTLSServerAddr & aServerName,
RArray < TTLSProtocolVersion > & aAcceptableProtVersions,
TTLSSessionData & aOutputSessionData,
TRequestStatus & aStatus
) [pure virtual]

Provides information about session associated with given server indicated by aServerName argument. If a session has previously been established to that server and remains held in the cache of the token and is resumable then on completion, the aOutputSessionData will contain that session id, cipher suite and protocol version information. The aAcceptableCipherSuites and aAcceptableProtVersions parameters allow to impose additional conditions on the retrieved session. That is if any of them is non-empty then returned aOutputSessionData.iSessionId will be non trivial only when the cipher suite and/or protocol version of cached session match some cipher suite/protocol version included in the lists passed in the arguments.

If no resumable session to the server is cached or cached sessions don't satisfy conditions imposed by a caller, aOutputSessionData.iSessionId will be zero length.

CTLSProvider::GetSession

Parameters

const TTLSServerAddr & aServerName the name of the server the TLS protocol is intending to connect to
RArray < TTLSProtocolVersion > & aAcceptableProtVersions a list of protocol versions, can be empty
TTLSSessionData & aOutputSessionData session data retrieved from the cache
TRequestStatus & aStatus asynchronous request status set on the completion

Label()

const TDesC & Label ( ) [pure virtual]