authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.h
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.h Thu Apr 01 00:24:41 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,157 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* CPinPluginAO declaration
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-
-#ifndef PIN_PLUGINAO_H
-#define PIN_PLUGINAO_H
-
-#include "pinplugindialog.h"
-#include "pinplugindb.h"
-#include "pinpanic.h"
-
-class CPinPluginAO : public CActive
- {
-public:
- /** static methods to constuct the object of the CPinpluginAO */
- static CPinPluginAO* NewL(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
- static CPinPluginAO* NewLC(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
- /** Destructor */
- ~CPinPluginAO();
-public: //CAuthPluginInterface
- void Identify(AuthServer::TIdentityId& aId, const TDesC& aClientMessage,
- HBufC8*& aResult, TRequestStatus& aRequest);
- void Train(AuthServer::TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);
- TInt Forget(AuthServer::TIdentityId aId);
- TInt DefaultData(AuthServer::TIdentityId aId, HBufC8*& aOutputBuf);
- void ResetL(AuthServer::TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult);
-
-private: //Active
- void DoCancel();
- void RunL();
- TInt RunError(TInt aError);
-private:
- /** Constructor */
- CPinPluginAO(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
-
- /** Second Phase Constructor */
- void ConstructL();
-
- /**
- Issue a Request for Identify Dialog upto iRetryCount times to
- PinPluginDialog. If the pinvalue received is wrong for all the
- retries, reset the identityId as KUnknownIdentity.
- */
- void IdentifyId();
-
- /**
- Issue a Request for Train Dialog to PinPluginDialog.
- It will generate 4 random pin of length iNewPinSize and send
- the pin Numbers and iNewPinSize to PinpluginDialog. Once it completed
- it have the selected pin index and new pin size which is used to generate
- another set of pin numbers for the next dialogs if required.
-
- @panic EPinPanicInvalidPinLength if plugin receives invalid pinlength fron Dialog Notifier
- */
- void TrainIdL();
-
- /**
- It will generate KeyHash for the pin number given in the Identify Dialog.
- and verify the keyHash and Id with DB entries. If same, the state will be
- changed to EInfo and message is set to EPinPluginIdentificationSuccess
- which is used to display info message to the user.
- If not, same state will be maintained so that it will ask another Identify
- dialog to the user.
- */
- void IdentifyResultL();
-
- /**
- It will add/update the DB with the pin selected in Pin Train/ReTrain Dialog.
-
- @panic EPinPanicIncorrectIndex if plugin receives index values otherthan 0 -3
- */
- void AddTrainResultToDBL();
-
- /**
- It will generate two KeyHash for the pin value using SHA1 Algorithm
- Intermediate result will return to the Authentication server whereas
- final result is stored in the DB.
-
- @param aPinValue The Pin number for which Hash value required
- @param aIdentityKey aIdentityKey is updated with intermediate KeyHash generated.
- @return It will return the final KeyHash Value generated
- */
- HBufC8* GenerateKeyHashL(TPinValue& aPinValue, HBufC8*& aIdentityKey);
-
- /**
- It will generate four Unique Pins which is not used any of the
- existing identities.
-
- @param aPinList On return, it holds the array of Pin numbers generated
- @param idKeyList On return, it holds the array of intermediate KeyHash
- values for the Pin Numbers in the aPinList
- @param idKeyHashList On return, it holds the array of Final KeyHash values
- for the Pin Numbers in the aPinList
- */
- void GenerateUniquePinsL(RPointerArray<TPinValue>& aPinList, RPointerArray<HBufC8>& idKeyList,
- RPointerArray<HBufC8>& idKeyHashList);
-private:
- enum TProcessState
- {
- EIdentify,
- EIdentifyResult,
- ETrain,
- ETrainResult,
- EInfo,
- EFinished
- };
- CPinPluginDialog* iPinPluginDialog;
- CPinPluginDB* iPinPluginDb;
- TRequestStatus* iRequestStatus;
- TProcessState iState;
- TInt iIndex;
- TPinValue iPinValue;
- AuthServer::TIdentityId iIdentityId;
- AuthServer::TIdentityId* iIdentityIdPtr;
- HBufC8** iResult;
- TPinPluginDialogResult* iDialogResult;
- TPinPluginInfoMessage iMessage;
-
- TInt iRetryCount;
- TInt iRetryRefCount;
- TInt iPinSize;
- TInt iPinMinSize;
- TInt iPinMaxSize;
- TInt iNewPinSize;
-
- RPointerArray<TPinValue> iPinList;
- RPointerArray<HBufC8> iIdKeyList;
- RPointerArray<HBufC8> iIdKeyHashList;
-
- //Displayable text string
- const HBufC* iClientMessage;
-
- };
-
-#endif /* PIN_PLUGINAO_H */
-