diff -r 000000000000 -r 3ce708148e4d pnpmobileservices/pnpms/PnpPaosFilter/src/HdcToPaosInterface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pnpmobileservices/pnpms/PnpPaosFilter/src/HdcToPaosInterface.h Thu Dec 17 08:40:12 2009 +0200 @@ -0,0 +1,87 @@ +/* +* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "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: A interface definition for reading HDC related parameters +* +*/ + + + + +#ifndef HDC_TO_PAOS_INTERFACE_H +#define HDC_TO_PAOS_INTERFACE_H + +//INCLUDES +#include + +const TInt KMaxHdcVersionStringLength(40); +const TInt KHdcNonceLength(8); +_LIT( KHdcDllFileName, "hdcutil.dll" ); +const TUid KHdcUtilDllUid = { 0x10272D3A }; + +const TInt KMaxHdcKeyInfoLength(20); +typedef TBuf8 HdcKeyInfo; +typedef RArray HdcKeyInfoList; + +const TInt KMaxURLLength(255); +typedef TBuf8 HdcTrustedDomain; +typedef RArray HdcTrustedDomainList; + + +/*! +MHdcToPaosInterface implementor is assumed to be part of a DLL that can be +loaded dynamically using RLibrary::Load. It should have as +its uid3 and it should be named . There should be a NewLC +implementation in the first ordinal of the DLL that returns a pointer to +a CHdcToPaosInterface derived object to allow dynamic loading. +*/ + +class CHdcToPaosInterface : public CBase + { + public: + + /** + * Returns HDC version string + * @param aVersion Current version of the HDC. max length of version is + * KMaxHdcVersionStringLength + * @return KErrNone, KErrArgument + */ + virtual TInt Version( TDes8& aVersion ) const = 0; + + /** + * Create and save new nonce. + * @param aNonce Nonce. Length of nonce is KHdcNonceLength + */ + virtual void CreateNewNonceL( TDes8& aNonce ) = 0; + + /** + * Get current nonce value from the database which has been created using + * CreateNonceL(). + * @param aNonce Nonce. Length of nonce is KHdcNonceLength + */ + virtual void NonceL( TDes8& aNonce ) const = 0; + + /** + * Return Keyinfo list array which are defined in HDCKeyInfo.h + * @param aList Keyinfo list. 0..N keyinfos. See typedefinitions. + */ + virtual void HdcKeyInfos( HdcKeyInfoList& aList) = 0; + + /** + * Get a list of trusted domains which PAOS can use to determine valid domains. + * @param aList See typedefinitions. + **/ + virtual void TrustedDomainsL( HdcTrustedDomainList& aList ) = 0; + }; + +#endif // HDC_TO_PAOS_INTERFACE_H