diff -r f345bda72bc4 -r 43e37759235e Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/secureserver_8h-source.html --- a/Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/secureserver_8h-source.html Tue Mar 30 11:56:28 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,153 +0,0 @@ - - -TB10.1 Example Applications: examples/Base/IPC/secureserver/secureserver.h Source File - - - - -

examples/Base/IPC/secureserver/secureserver.h

Go to the documentation of this file.
00001 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-00002 // All rights reserved.
-00003 // This component and the accompanying materials are made available
-00004 // under the terms of "Eclipse Public License v1.0"
-00005 // which accompanies this distribution, and is available
-00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
-00007 //
-00008 // Initial Contributors:
-00009 // Nokia Corporation - initial contribution.
-00010 //
-00011 // Contributors:
-00012 //
-00013 // Description:
-00014 // Defines CSecureServer, CSecureServerSession and CSecureServerSubSession classes.
-00015 // It also defines the constants that form the security policy for the server.
-00016 //
-00017 
-00018 
-00019 
-00024 #ifndef __SECURESERVER_H__
-00025 #define __SECURESERVER_H__
-00026 
-00027 #include <e32svr.h>
-00028 #include <e32uid.h>
-00029 #include <e32math.h>
-00030 #include <f32file.h>
-00031 
-00036 const TUint KDefaultHeapSize=0x10000;
-00037 
-00043 enum TSecureServerPanic
-00044         {
-00048         EBadRequest = 1,
-00052         EDescriptorNonNumeric,
-00056         EMainSchedulerError,
-00060         EServerCreateServer,
-00064         EServerStartServer,
-00068         ECreateTrapCleanup,
-00072         EBadSubsessionHandle,
-00076         ESecureServerSecurityPolicy
-00077         };
-00078 
-00083 const TInt KSecureServerRangeCount = 5;
-00084 
-00089 const TInt KSecureServerRanges[KSecureServerRangeCount] =
-00090         {
-00094         0,
-00098         5,
-00102         6,
-00106         11,
-00110         13
-00111         };
-00112 
-00117 const CPolicyServer::TPolicyElement KSecureServerElements[] =
-00118         {
-00122         _INIT_SECURITY_POLICY_S0(0x70fffff0),
-00126         {_INIT_SECURITY_POLICY_C1(ECapabilityReadDeviceData | ECapabilityWriteDeviceData), CPolicyServer::EFailClient}
-00127         };
-00128 
-00133 const TUint8 KSecureServerElementsIndex[KSecureServerRangeCount] =
-00134                 {
-00139                 CPolicyServer::EAlwaysPass,
-00144                 0,
-00149                 CPolicyServer::ECustomCheck,
-00154                 1,
-00159                 CPolicyServer::ENotSupported
-00160                 };
-00161 
-00167 const CPolicyServer::TPolicy KSecureServerPolicy =
-00168         {
-00172         CPolicyServer::EAlwaysPass,
-00173         KSecureServerRangeCount,
-00174         KSecureServerRanges,
-00175         KSecureServerElementsIndex,
-00176         KSecureServerElements
-00177         };
-00178 
-00190 class CSecureServer : public CPolicyServer
-00191         {
-00192 public:
-00193         CSession2* NewSessionL(const TVersion &aVersion,const RMessage2& aMessage) const;
-00194         static CSecureServer* NewL(CActive::TPriority aActiveObjectPriority);
-00195         static TInt ThreadFunction(TAny* aStarted);
-00196         static void PanicServer(TSecureServerPanic aPanic);
-00197         CPolicyServer::TCustomResult CustomSecurityCheckL(const RMessage2 &aMsg, TInt &aAction, TSecurityInfo &aMissing);
-00198         CObjectCon* NewContainerL();
-00199         void RemoveContainer(CObjectCon *aCon);
-00200         ~CSecureServer();
-00201 private :
-00202         CSecureServer(CActive::TPriority aActiveObjectPriority);
-00203         void ConstructL();
-00204 
-00205 private:
-00209         CObjectConIx* iContainerIndex;
-00210         };
-00211 
-00212 class CSecureServerSubSession;
-00213 
-00220 class CSecureServerSession : public CSession2
-00221         {
-00222 public:
-00223         static CSecureServerSession* NewL();
-00224         void CreateL();
-00225         void ServiceL(const RMessage2& aMessage);
-00226         void NewCounterL(const RMessage2& aMessage);
-00227         void CloseSession();
-00228         void NumResourcesL(const RMessage2& aMessage);
-00229         CSecureServerSubSession* CounterFromHandle(const RMessage2& aMessage,TInt aHandle);
-00230         void DeleteCounter(TInt aHandle);
-00231         TInt CountResources();
-00232         void PanicClient(const RMessage2& aMessage,TInt aPanic) const;
-00233         CSecureServerSession();
-00234 private:
-00238         CObjectCon* iContainer;
-00242         CObjectIx* iCountersObjectIndex;
-00247         TInt iResourceCount;
-00248         };
-00249 
-00256 class CSecureServerSubSession : public CObject
-00257         {
-00258 public:
-00259         static CSecureServerSubSession* NewL(CSecureServerSession* aSession);
-00260         CSecureServerSubSession(CSecureServerSession* aSession);
-00261         void ConstructL(CSecureServerSession* aSession);
-00262         void SetFromStringL(const RMessage2& aMessage);
-00263         void Increase();
-00264         void IncreaseBy(const RMessage2& aMessage);
-00265         void Decrease();
-00266         void DecreaseBy(const RMessage2& aMessage);
-00267         void Reset();
-00268         void CounterValueL(const RMessage2& aMessage);
-00269         void SaveCounterValueL();
-00270         void SetCounterValueFromFileL();
-00271 
-00272 protected:
-00276         CSecureServerSession* iSession;
-00277 
-00278 private:
-00282         TInt iCount;
-00283         };
-00284 
-00285 #endif
-

Generated on Thu Jan 21 10:32:57 2010 for TB10.1 Example Applications by  - -doxygen 1.5.3
- -