--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/omadm/omadmextensions/adapters/nsmldinternet/inc/NSmlWlanSettings.h Thu Jan 07 12:39:15 2010 +0200
@@ -0,0 +1,129 @@
+/*
+* Copyright (c) 2002 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: Wlan Adapter commsDB handler
+*
+*/
+
+
+
+#ifndef __NSMLWLANSETTINGS_H__
+#define __NSMLWLANSETTINGS_H__
+
+#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include <commsdat_partner.h>
+#endif
+#include <commdb.h>
+#include <commsdattypesv1_1.h>
+#include <EapType.h>
+
+const TInt KMaxPSKLength = 63;
+const TInt KMinPSKLength = 8;
+
+// ==========================================================================
+// Class forwards
+// ==========================================================================
+//
+class CWlanSettings;
+
+class TWlanSettings
+ {
+public:
+ TBuf<KMaxTextLength> Name;
+ TUint32 Id;
+ TUint32 ServiceID;
+ TUint32 ConnectionMode; // Infrastructure / adhoc
+ TBuf<KMaxTextLength> SSID;
+ TBuf8<KMaxTextLength> WepKey1;
+ TBuf8<KMaxTextLength> WepKey2;
+ TBuf8<KMaxTextLength> WepKey3;
+ TBuf8<KMaxTextLength> WepKey4;
+ TUint32 WepIndex;
+ TUint32 SecurityMode; // SecurityMode (Allow unsecure, wep, 802.1xs, wpa) enum EWlanSecurityMode
+ TUint32 WPAMode; // enum EWpaMode
+ TUint32 UseWPAPSK; // CR ID: TMVI-5Y49AS
+ TBuf8<KMaxPSKLength> WPAPreSharedKey;
+ TUint32 AuthMode;
+ TBuf<KMaxTextLength> UsedSSID;
+ TUint32 ScanSSID;
+ TBuf<KMaxLongTextLength> EapList;
+ TBool SecondarySSIDsExisting;
+// TBuf<KMaxTextLength> SecondarySSID;
+// TBuf<KMaxTextLength> UsedSecondarySSID;
+
+ };
+
+class TSecondarySSID
+ {
+public:
+ TUint32 Id;
+ TBuf<KMaxTextLength> ScannedId;
+ TBuf<KMaxTextLength> UsedId;
+ };
+
+
+// -----------------------------------------------------------------------------------------------
+// Defines
+// -----------------------------------------------------------------------------------------------
+
+class CWlanSettings : public CBase
+ {
+public:
+ static CWlanSettings* NewL( CCommsDatabase& aDatabase );
+ void ConstructL( );
+ ~CWlanSettings( );
+
+ TInt GetWlanSettings( TUint32 aLuid, TWlanSettings& aWlanSettings );
+ TInt DeleteWlanSettings( TUint32 aLuid );
+ TInt WriteWlanSettings( TWlanSettings& aWlanSettings );
+ void ConnectToDatabaseL( );
+ TInt RecordExists( TUint32 aLuid );
+ TInt PerformLockWLANTablesL(TBool aProtect);
+ TBool CheckEnforcementL();
+ TBool CheckAPEnforcementL();
+ TBool iWLANRelock;
+
+ TInt GetEAPSettings( const TInt aId, const TInt aEapType, const TInt aTunnelingType, EAPSettings& aEapSettings );
+ TInt DeleteEAPSettings( TInt aId , TInt aEapType );
+ void DeleteWlanEapSettingsL( TInt aWlanId );
+ TInt DeleteSecondarySSIDsL( TUint32 aWLANId );
+ TInt DeleteOneSecondarySSIDL( TUint32 aWLANId , TUint32 asecId);
+ TInt WriteEAPSettings( EAPSettings& aEapSettings);
+ TInt WriteSecondarySSIDL( TUint32 aWlanID, TSecondarySSID& aSettings, TBool aNew );
+ void GetSecondarySSIDListL(TUint32 aLuid, RArray<TSecondarySSID>& aSecondarySSIDs);
+ void GetEAPInterfaceL(const TInt aId, const TInt aTunnelingType, const TInt aType);
+ TInt InstalledEAPsL(CBufBase& aEAPList);
+
+
+private:
+
+ CWlanSettings( CCommsDatabase& aDatabase );
+ TInt GoToRecord( TUint32 aId );
+ void GetDataFromRecordL( TWlanSettings* aWlanSettings );
+ void WriteDataToRecordL( TWlanSettings* aWlanSettings );
+ void InitialiseRecordL( );
+ void SetSecondaryViewToRecordL( TUint32 aId );
+
+ TDesC8& ConvertTo8LC( const TDesC& aSource );
+ TDesC16& ConvertTo16LC( const TDesC8& aSource );
+
+ CCommsDatabase& iDatabase;
+ CCommsDbTableView* iTableView;
+ CCommsDbTableView* iSecondaryView;
+ CEapType* iEapType;
+ TUint32 iServiceID;
+ TBool iExpandedEAPTypeFieldsUsed;
+ };
+
+
+#endif __NSMLWLANSETTINGS_H__