--- a/bearermanagement/mpm/inc/mpmcommsdataccess.h Tue Aug 31 15:35:44 2010 +0300
+++ b/bearermanagement/mpm/inc/mpmcommsdataccess.h Wed Sep 01 12:23:51 2010 +0100
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 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"
@@ -54,7 +54,36 @@
enum TWlanIapType
{
ENotWlanIap,
- EWlanIap
+ EWlanIap,
+ EEasyWlanIap
+ };
+
+// Structure containing WLAN WEP key data
+//
+class TWepKeyData
+ {
+public:
+ inline TWepKeyData():
+ iWep1(),
+ iWep2(),
+ iWep3(),
+ iWep4(),
+ iWepFormat1( 0 ),
+ iWepFormat2( 0 ),
+ iWepFormat3( 0 ),
+ iWepFormat4( 0 ),
+ iDefaultWep( EWlanDefaultWepKey1 )
+ {};
+
+ TWlanWepKey iWep1;
+ TWlanWepKey iWep2;
+ TWlanWepKey iWep3;
+ TWlanWepKey iWep4;
+ TUint iWepFormat1;
+ TUint iWepFormat2;
+ TUint iWepFormat3;
+ TUint iWepFormat4;
+ TWlanDefaultWepKey iDefaultWep;
};
// CLASS DECLARATION
@@ -109,6 +138,14 @@
CMPMServerSession& aSession );
/**
+ * Checks if given IAP is Easy WLan.
+ * @since 3.1
+ * @param aIapId IAP Id to be checked
+ * @return ETrue if IAP Id is Easy WLan, otherwise EFalse.
+ */
+ TBool CheckEasyWLanL( TUint32 aIapId ) const;
+
+ /**
* Find all snap ids
*
* @since 3.2
@@ -159,6 +196,47 @@
void CheckWLANIapL(CMPMServerSession& aSession);
/**
+ * Checks whether there is a wlan iap which matches the
+ * parameter settings.
+ *
+ * @since 3.2
+ * @param aSsid Wlan iap ssid
+ * @param aSecMode Wlan iap security mode
+ * @param aConnMode Wlan iap connection mode
+ */
+ TUint32 CheckWLANIapWithSsidL( TWlanSsid& aSsid,
+ TUint32 aSecMode,
+ TWlanNetMode aConnMode );
+
+ /**
+ * Stores easy wlan settings into commsdat.
+ *
+ * @since 3.2
+ * @param aSsid Wlan iap ssid, stored in used ssid field
+ * @param aSecMode Wlan iap security mode
+ * @param aConnMode Wlan iap connection mode
+ * @param aWepData WEP key data
+ * @param aEnableWpaPsk Wlan iap enable psk mode
+ * @param aWpaPsk Wlan iap wpa psk
+ * @param aWpaKeyLen Wlan iap wpa key length
+ */
+ void SetEasyWlanDataL( const TWlanSsid& aSsid,
+ TUint aSecMode,
+ TWlanNetMode aConnMode,
+ TWepKeyData aWepData,
+ TUint aEnableWpaPsk,
+ const TDesC8& aWpaPsk,
+ TUint aWpaKeyLen );
+
+ /**
+ * Returns Easy wlan service record id.
+ * @since 3.2
+ * @param aDb DB session
+ * return Easy wlan service record id
+ */
+ TUint32 FindEasyWlanServiceIdL( CMDBSession* aDb );
+
+ /**
* Checks if the HiddenAgent metadata is set for this IAP.
* @since 3.2
* @param aIapId Given Iap Id
@@ -213,10 +291,11 @@
RArray<TNetIap>& aEmbeddedIaps );
/**
- * Checks if given IAP is WLAN.
+ * Checks if given IAP is WLAN and whether it is EasyWLAN IAP.
* @since 3.2
* @param aIapId IAP Id to be checked
- * @return One of TWlanIapType values
+ * @return One of TWlanIapType values depending on
+ * whether IAP is WLAN or Easy WLAN
*/
TWlanIapType CheckWlanL( TUint32 aIapId ) const;
@@ -264,14 +343,7 @@
*/
TBool IsInternetSnapL( TUint32 aIapId, TUint32 aSnapId );
- /**
- * Returns true if destination is intranet.
- * @param aSnapId Snap id
- * @return True or false depending on destination type.
- */
- TBool IsIntranetSnapL( TUint32 aSnapId );
-
- /**
+ /**
* Used to get bearer type of the iap.
*
* @since 5.0
@@ -279,6 +351,38 @@
* @return Type of the bearer.
*/
TMPMBearerType GetBearerTypeL( TUint32 aIapId );
+
+ /**
+ * Check if all active connections are in same snap.
+ *
+ * @since 5.0
+ * @param aActiveBMConns Array of active connections.
+ * @param aSnapId Destination where connections are located is returned
+ * to this parameter.
+ * @param aServer Handle to server class.
+ * @return ETrue if all active connections are in same snap.
+ */
+ TBool AreActiveIapsInSameSnapL ( RArray<TActiveBMConn>& aActiveBMConns,
+ TUint32& aSnapId,
+ CMPMServer& aServer );
+
+ /**
+ * Select active connection according to snap priorities.
+ *
+ * @since 5.0
+ * @param aSnapId Snap id of the connection.
+ * @param aActiveBMConns Array of active connections.
+ * @param aActiveIapId Iap id of the selected active connection.
+ * @param aActiveSnapId Snap id of the selected active connection.
+ * @param aActiveBearerType Bearer type of the selected active connection.
+ * @param aSession Handle to session class.
+ */
+ void SelectActiveConnectionL ( const TUint32 aSnapId,
+ RArray<TActiveBMConn>& aActiveBMConns,
+ TUint32& aActiveIapId,
+ TUint32& aActiveSnapId,
+ TMPMBearerType& aActiveBearerType,
+ CMPMServerSession& aSession );
/**
* Check if snap is empty.
@@ -365,14 +469,6 @@
* @return Snap id.
*/
TUint32 DestinationIdL( CMManager::TSnapPurpose aSnapPurpose );
-
- /**
- * Returns the default connection values
- * @since symbian^4
- * @param aType The type of the id
- * @param aId The id of the snap or the iap
- */
- void GetDefaultConnectionL( TCmDefConnType& aType, TUint32& aId );
/**
* Finds the real IAP behind the virtual IAP.
@@ -427,6 +523,30 @@
CCDRecordBase* LoadLinkedRecordL( CMDBSession& aSession,
TMDBElementId aElementId );
+ /**
+ * Sets WEP key data for WLAN service record
+ * @since 9.1
+ * @param aFormatId Id of the field where WEP format is stored
+ * @param aKeyId Id of the field where WEP key is stored
+ * @param aWepData WEP key value
+ * @param aWepFormat WEP key format value
+ * @param aRecord WLAN service record where data is stored
+ */
+ void SetWepKeyL( TMDBElementId aFormatId,
+ TMDBElementId aKeyId,
+ TWlanWepKey aWepData,
+ TUint aWepFormat,
+ CMDBGenericRecord* aRecord );
+
+ /**
+ * Converts ascii data to hex
+ * @since 3.2
+ * @param aSource Ascii data
+ * @param aDest hex data to be filled in
+ */
+ void ConvertAsciiToHex( const TDesC8& aSource,
+ HBufC8* aDest );
+
/**
* Returns true if destination is internet.
* @since 5.1
@@ -454,6 +574,15 @@
* @param aWlanArray Array of wlan bearers
*/
void BuildWlanArrayL(CMDBSession& aDb, RArray<TUint32>& aWlanArray);
+
+ /**
+ * Get snap id for the iap
+ *
+ * @since 5.0
+ * @param aIapId Id of the iap
+ * @return Id of the snap
+ */
+ TUint32 GetSnapIdL( TUint32 aIapId );
/**
* C++ default constructor.