wlanutilities/wlanqtutilities/base/src/wlanqtutilsiapsettings.cpp
author hgs
Fri, 03 Sep 2010 09:37:37 +0300
changeset 60 822a45792fdd
parent 53 bdc64aa9b954
permissions -rw-r--r--
201035
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: 
hgs
parents:
diff changeset
    15
* WLAN Qt Utilities WLAN IAP settings handling.
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
// System includes
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
#include <QScopedPointer>
hgs
parents:
diff changeset
    21
#include <QSharedPointer>
hgs
parents:
diff changeset
    22
#include <QVariant>
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
#include <cmmanager_shim.h>
hgs
parents:
diff changeset
    25
#include <cmdestination_shim.h>
hgs
parents:
diff changeset
    26
#include <cmconnectionmethod_shim.h>
hgs
parents:
diff changeset
    27
hgs
parents:
diff changeset
    28
// User includes
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
#include "wlanqtutils.h"
hgs
parents:
diff changeset
    31
#include "wlanqtutilsap.h"
hgs
parents:
diff changeset
    32
#include "wlanqtutilsiapsettings.h"
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
#include "OstTraceDefinitions.h"
hgs
parents:
diff changeset
    35
#ifdef OST_TRACE_COMPILER_IN_USE
hgs
parents:
diff changeset
    36
#include "wlanqtutilsiapsettingsTraces.h"
hgs
parents:
diff changeset
    37
#endif
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
/*!
hgs
parents:
diff changeset
    40
    \class WlanQtUtilsIapSettings
hgs
parents:
diff changeset
    41
    \brief WLAN IAP related settings handler.
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
    Provides functionality to manipulate WLAN IAPs via the CM Manager Shim
hgs
parents:
diff changeset
    44
    interface.
hgs
parents:
diff changeset
    45
    
hgs
parents:
diff changeset
    46
    NOTE: Shim functions may throw exceptions that need to be catched in
hgs
parents:
diff changeset
    47
    this class.
hgs
parents:
diff changeset
    48
*/
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
// External function prototypes
hgs
parents:
diff changeset
    51
hgs
parents:
diff changeset
    52
// Local constants
hgs
parents:
diff changeset
    53
39
hgs
parents: 31
diff changeset
    54
//! IAP trace types
hgs
parents: 31
diff changeset
    55
#define WLANQTUTILS_IAP_TRACE_FETCH     1
hgs
parents: 31
diff changeset
    56
#define WLANQTUTILS_IAP_TRACE_CREATE    2
hgs
parents: 31
diff changeset
    57
#define WLANQTUTILS_IAP_TRACE_UPDATE    3
hgs
parents: 31
diff changeset
    58
31
hgs
parents:
diff changeset
    59
// WEP key lengths used to determine key format
hgs
parents:
diff changeset
    60
static const int WepHex64BitMaxLength = 10;
hgs
parents:
diff changeset
    61
static const int WepHex128BitMaxLength = 26;
hgs
parents:
diff changeset
    62
static const int WepAscii64BitMaxLength = 5;
hgs
parents:
diff changeset
    63
static const int WepAscii128BitMaxLength = 13;
hgs
parents:
diff changeset
    64
hgs
parents:
diff changeset
    65
// ======== LOCAL FUNCTIONS ========
hgs
parents:
diff changeset
    66
hgs
parents:
diff changeset
    67
// ======== MEMBER FUNCTIONS ========
hgs
parents:
diff changeset
    68
hgs
parents:
diff changeset
    69
/*!
hgs
parents:
diff changeset
    70
    Constructor.
hgs
parents:
diff changeset
    71
    
hgs
parents:
diff changeset
    72
    @param [in] parent Parent object.
hgs
parents:
diff changeset
    73
*/
hgs
parents:
diff changeset
    74
hgs
parents:
diff changeset
    75
WlanQtUtilsIapSettings::WlanQtUtilsIapSettings(QObject *parent) :
hgs
parents:
diff changeset
    76
    QObject(parent),
hgs
parents:
diff changeset
    77
    mCmManager(new CmManagerShim())
hgs
parents:
diff changeset
    78
{
hgs
parents:
diff changeset
    79
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_WLANQTUTILSIAPSETTINGS_ENTRY);
hgs
parents:
diff changeset
    80
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_WLANQTUTILSIAPSETTINGS_EXIT);
hgs
parents:
diff changeset
    81
}
hgs
parents:
diff changeset
    82
hgs
parents:
diff changeset
    83
/*!
hgs
parents:
diff changeset
    84
    Destructor.
hgs
parents:
diff changeset
    85
*/
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
WlanQtUtilsIapSettings::~WlanQtUtilsIapSettings()
hgs
parents:
diff changeset
    88
{
hgs
parents:
diff changeset
    89
    OstTraceFunctionEntry0(DUP1_WLANQTUTILSIAPSETTINGS_WLANQTUTILSIAPSETTINGS_ENTRY);
hgs
parents:
diff changeset
    90
    
hgs
parents:
diff changeset
    91
    delete mCmManager;
hgs
parents:
diff changeset
    92
    
hgs
parents:
diff changeset
    93
    OstTraceFunctionExit0(DUP1_WLANQTUTILSIAPSETTINGS_WLANQTUTILSIAPSETTINGS_EXIT);
hgs
parents:
diff changeset
    94
}
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
/*!
hgs
parents:
diff changeset
    97
    Fetch all WLAN IAPs.
hgs
parents:
diff changeset
    98
    
hgs
parents:
diff changeset
    99
    @param [out] iapList List of WLAN IAPs.
hgs
parents:
diff changeset
   100
*/
hgs
parents:
diff changeset
   101
hgs
parents:
diff changeset
   102
void WlanQtUtilsIapSettings::fetchIaps(
60
hgs
parents: 53
diff changeset
   103
    QList< QSharedPointer<WlanQtUtilsAp> > &iapList) const
31
hgs
parents:
diff changeset
   104
{
hgs
parents:
diff changeset
   105
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_FETCHIAPS_ENTRY);
hgs
parents:
diff changeset
   106
    
hgs
parents:
diff changeset
   107
    // Clear the list content first for safety
hgs
parents:
diff changeset
   108
    iapList.clear();
hgs
parents:
diff changeset
   109
    
hgs
parents:
diff changeset
   110
    QList<uint> iapIds;
hgs
parents:
diff changeset
   111
    try {
hgs
parents:
diff changeset
   112
        mCmManager->connectionMethod(iapIds, false);
hgs
parents:
diff changeset
   113
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   114
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   115
        OstTrace1(
hgs
parents:
diff changeset
   116
            TRACE_NORMAL,
hgs
parents:
diff changeset
   117
            WLANQTUTILSIAPSETTINGS_FETCHIAPS_EXCEPTION,
hgs
parents:
diff changeset
   118
            "WlanQtUtilsIapSettings::fetchIaps exception;error=%d",
hgs
parents:
diff changeset
   119
            error);
hgs
parents:
diff changeset
   120
    }
hgs
parents:
diff changeset
   121
39
hgs
parents: 31
diff changeset
   122
#ifdef OST_TRACE_COMPILER_IN_USE
hgs
parents: 31
diff changeset
   123
    int iapCount = iapIds.count();
hgs
parents: 31
diff changeset
   124
    OstTrace1(
hgs
parents: 31
diff changeset
   125
        TRACE_NORMAL,
hgs
parents: 31
diff changeset
   126
        WLANQTUTILSIAPSETTINGS_FETCHIAPS_COUNT,
hgs
parents: 31
diff changeset
   127
        "WlanQtUtilsIapSettings::fetchIaps;iapCount=%d",
hgs
parents: 31
diff changeset
   128
        iapCount);
hgs
parents: 31
diff changeset
   129
#endif
hgs
parents: 31
diff changeset
   130
hgs
parents: 31
diff changeset
   131
    foreach (uint iapId, iapIds) {
60
hgs
parents: 53
diff changeset
   132
        QSharedPointer<WlanQtUtilsAp> wlanIap = fetchIap(iapId);
31
hgs
parents:
diff changeset
   133
        if (wlanIap) {
hgs
parents:
diff changeset
   134
            iapList.append(wlanIap);
hgs
parents:
diff changeset
   135
        }
hgs
parents:
diff changeset
   136
    }
hgs
parents:
diff changeset
   137
    
hgs
parents:
diff changeset
   138
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_FETCHIAPS_EXIT);
hgs
parents:
diff changeset
   139
}
hgs
parents:
diff changeset
   140
hgs
parents:
diff changeset
   141
/*!
hgs
parents:
diff changeset
   142
    Fetch WLAN IAP with the given ID
hgs
parents:
diff changeset
   143
    
hgs
parents:
diff changeset
   144
    @param [in] iapId ID of IAP to fetch.
hgs
parents:
diff changeset
   145
    
hgs
parents:
diff changeset
   146
    @return Found IAP, NULL if not found.
hgs
parents:
diff changeset
   147
*/
hgs
parents:
diff changeset
   148
60
hgs
parents: 53
diff changeset
   149
QSharedPointer<WlanQtUtilsAp> WlanQtUtilsIapSettings::fetchIap(uint iapId) const
31
hgs
parents:
diff changeset
   150
{
hgs
parents:
diff changeset
   151
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_FETCHIAP_ENTRY);
39
hgs
parents: 31
diff changeset
   152
60
hgs
parents: 53
diff changeset
   153
    QSharedPointer<WlanQtUtilsAp> wlanIap;
31
hgs
parents:
diff changeset
   154
    try {
hgs
parents:
diff changeset
   155
        QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents:
diff changeset
   156
            mCmManager->connectionMethod(iapId));
hgs
parents:
diff changeset
   157
        if (iap && iap->getIntAttribute(CMManagerShim::CmBearerType) ==
hgs
parents:
diff changeset
   158
            KUidWlanBearerType) {
hgs
parents:
diff changeset
   159
hgs
parents:
diff changeset
   160
            // Get WLAN IAP parameters
hgs
parents:
diff changeset
   161
            int netId = iap->getIntAttribute(CMManagerShim::CmNetworkId);
hgs
parents:
diff changeset
   162
            QString name = iap->getStringAttribute(CMManagerShim::CmName);
hgs
parents:
diff changeset
   163
            QString ssid = iap->getStringAttribute(CMManagerShim::WlanSSID);
39
hgs
parents: 31
diff changeset
   164
            int connMode = iap->getIntAttribute(CMManagerShim::WlanConnectionMode);
31
hgs
parents:
diff changeset
   165
            int secMode = iap->getIntAttribute(
hgs
parents:
diff changeset
   166
                CMManagerShim::WlanSecurityMode);
hgs
parents:
diff changeset
   167
            bool wpaPskUse = iap->getBoolAttribute(
hgs
parents:
diff changeset
   168
                CMManagerShim::WlanEnableWpaPsk);
hgs
parents:
diff changeset
   169
    
hgs
parents:
diff changeset
   170
            // Create a WLAN Qt Utils IAP
60
hgs
parents: 53
diff changeset
   171
            wlanIap = QSharedPointer<WlanQtUtilsAp>(new WlanQtUtilsAp());
hgs
parents: 53
diff changeset
   172
            wlanIap->setValue(WlanQtUtilsAp::ConfIdIapId, iapId);
hgs
parents: 53
diff changeset
   173
            wlanIap->setValue(WlanQtUtilsAp::ConfIdNetworkId, netId);
hgs
parents: 53
diff changeset
   174
            wlanIap->setValue(WlanQtUtilsAp::ConfIdName, name);
31
hgs
parents:
diff changeset
   175
            wlanIap->setValue(WlanQtUtilsAp::ConfIdSsid, ssid);
39
hgs
parents: 31
diff changeset
   176
            wlanIap->setValue(WlanQtUtilsAp::ConfIdConnectionMode, connMode);
31
hgs
parents:
diff changeset
   177
            wlanIap->setValue(WlanQtUtilsAp::ConfIdSecurityMode, secMode);
hgs
parents:
diff changeset
   178
            wlanIap->setValue(WlanQtUtilsAp::ConfIdWpaPskUse, wpaPskUse);
39
hgs
parents: 31
diff changeset
   179
            
hgs
parents: 31
diff changeset
   180
            // Trace the fetched IAP
hgs
parents: 31
diff changeset
   181
            traceIap(
hgs
parents: 31
diff changeset
   182
                wlanIap.data(),
hgs
parents: 31
diff changeset
   183
                WLANQTUTILS_IAP_TRACE_FETCH,
hgs
parents: 31
diff changeset
   184
                iapId);
31
hgs
parents:
diff changeset
   185
        }
hgs
parents:
diff changeset
   186
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   187
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   188
        OstTrace1(
hgs
parents:
diff changeset
   189
            TRACE_NORMAL,
hgs
parents:
diff changeset
   190
            WLANQTUTILSIAPSETTINGS_FETCHIAP_EXCEPTION,
hgs
parents:
diff changeset
   191
            "WlanQtUtilsIapSettings::fetchIap exception;error=%d",
hgs
parents:
diff changeset
   192
            error);
hgs
parents:
diff changeset
   193
    }
hgs
parents:
diff changeset
   194
    
hgs
parents:
diff changeset
   195
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_FETCHIAP_EXIT);
hgs
parents:
diff changeset
   196
    return wlanIap;
hgs
parents:
diff changeset
   197
}
hgs
parents:
diff changeset
   198
hgs
parents:
diff changeset
   199
/*!
hgs
parents:
diff changeset
   200
    Create a new WLAN IAP as an uncategorized IAP.
hgs
parents:
diff changeset
   201
    
hgs
parents:
diff changeset
   202
    @param [in] wlanAp Information about the WLAN AP.
hgs
parents:
diff changeset
   203
    
hgs
parents:
diff changeset
   204
    @return ID of the created IAP, IapIdNone in error cases.
hgs
parents:
diff changeset
   205
*/
hgs
parents:
diff changeset
   206
hgs
parents:
diff changeset
   207
int WlanQtUtilsIapSettings::createIap(const WlanQtUtilsAp *wlanAp)
hgs
parents:
diff changeset
   208
{
hgs
parents:
diff changeset
   209
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_CREATEIAP_ENTRY);
hgs
parents:
diff changeset
   210
    
hgs
parents:
diff changeset
   211
    int iapId = WlanQtUtils::IapIdNone;
hgs
parents:
diff changeset
   212
    
hgs
parents:
diff changeset
   213
    try {
hgs
parents:
diff changeset
   214
        // Create the new IAP
hgs
parents:
diff changeset
   215
        QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents:
diff changeset
   216
            mCmManager->createConnectionMethod(KUidWlanBearerType));
hgs
parents:
diff changeset
   217
        storeSettings(wlanAp, iap.data());
hgs
parents:
diff changeset
   218
        iapId = iap->getIntAttribute(CMManagerShim::CmIapId);
39
hgs
parents: 31
diff changeset
   219
        
hgs
parents: 31
diff changeset
   220
        // Trace the created IAP
hgs
parents: 31
diff changeset
   221
        traceIap(
hgs
parents: 31
diff changeset
   222
            wlanAp,
hgs
parents: 31
diff changeset
   223
            WLANQTUTILS_IAP_TRACE_CREATE,
hgs
parents: 31
diff changeset
   224
            iapId);
31
hgs
parents:
diff changeset
   225
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   226
        // Trace error cause and return failure (default value) to caller.
hgs
parents:
diff changeset
   227
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   228
        OstTrace1(
hgs
parents:
diff changeset
   229
            TRACE_NORMAL,
hgs
parents:
diff changeset
   230
            WLANQTUTILSIAPSETTINGS_CREATEIAP_EXCEPTION,
hgs
parents:
diff changeset
   231
            "WlanQtUtilsIapSettings::createIap exception;error=%d",
hgs
parents:
diff changeset
   232
            error);
hgs
parents:
diff changeset
   233
    }
hgs
parents:
diff changeset
   234
    
hgs
parents:
diff changeset
   235
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_CREATEIAP_EXIT);
hgs
parents:
diff changeset
   236
    return iapId;
hgs
parents:
diff changeset
   237
}
hgs
parents:
diff changeset
   238
hgs
parents:
diff changeset
   239
/*!
hgs
parents:
diff changeset
   240
    Update the WLAN IAP given as parameter. All settings are stored to
hgs
parents:
diff changeset
   241
    database (again) without checking whether they have actually changed
hgs
parents:
diff changeset
   242
    or not.
hgs
parents:
diff changeset
   243
    
hgs
parents:
diff changeset
   244
    @param [in] iapId ID of IAP to update.
hgs
parents:
diff changeset
   245
    @param [in] wlanAp Information about the WLAN AP.
hgs
parents:
diff changeset
   246
    
hgs
parents:
diff changeset
   247
    @return Was update succesful or not?
hgs
parents:
diff changeset
   248
*/
hgs
parents:
diff changeset
   249
hgs
parents:
diff changeset
   250
bool WlanQtUtilsIapSettings::updateIap(
hgs
parents:
diff changeset
   251
    int iapId,
hgs
parents:
diff changeset
   252
    const WlanQtUtilsAp *wlanAp)
hgs
parents:
diff changeset
   253
{
hgs
parents:
diff changeset
   254
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_UPDATEIAP_ENTRY);
hgs
parents:
diff changeset
   255
    
hgs
parents:
diff changeset
   256
    bool success = false;
hgs
parents:
diff changeset
   257
    
hgs
parents:
diff changeset
   258
    try {
hgs
parents:
diff changeset
   259
        QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents:
diff changeset
   260
            mCmManager->connectionMethod(iapId));
hgs
parents:
diff changeset
   261
        storeSettings(wlanAp, iap.data());
39
hgs
parents: 31
diff changeset
   262
        // Trace the updated IAP
hgs
parents: 31
diff changeset
   263
        traceIap(
hgs
parents: 31
diff changeset
   264
            wlanAp,
hgs
parents: 31
diff changeset
   265
            WLANQTUTILS_IAP_TRACE_UPDATE,
hgs
parents: 31
diff changeset
   266
            iapId);
31
hgs
parents:
diff changeset
   267
        success = true;
hgs
parents:
diff changeset
   268
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   269
        // Trace error cause and return failure (default value) to caller.
hgs
parents:
diff changeset
   270
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   271
        OstTrace1(
hgs
parents:
diff changeset
   272
            TRACE_NORMAL,
hgs
parents:
diff changeset
   273
            WLANQTUTILSIAPSETTINGS_UPDATEIAP_EXCEPTION,
hgs
parents:
diff changeset
   274
            "WlanQtUtilsIapSettings::updateIap exception;error=%d",
hgs
parents:
diff changeset
   275
            error);
hgs
parents:
diff changeset
   276
    }
hgs
parents:
diff changeset
   277
    
hgs
parents:
diff changeset
   278
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_UPDATEIAP_EXIT);
hgs
parents:
diff changeset
   279
    return success;
hgs
parents:
diff changeset
   280
}
hgs
parents:
diff changeset
   281
hgs
parents:
diff changeset
   282
/*!
hgs
parents:
diff changeset
   283
    Delete the WLAN IAP given as parameter.
hgs
parents:
diff changeset
   284
    
hgs
parents:
diff changeset
   285
    @param [in] iapId ID of IAP to delete.
hgs
parents:
diff changeset
   286
*/
hgs
parents:
diff changeset
   287
hgs
parents:
diff changeset
   288
void WlanQtUtilsIapSettings::deleteIap(int iapId)
hgs
parents:
diff changeset
   289
{
hgs
parents:
diff changeset
   290
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_DELETEIAP_ENTRY);
hgs
parents:
diff changeset
   291
    
hgs
parents:
diff changeset
   292
    try {
hgs
parents:
diff changeset
   293
        QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents:
diff changeset
   294
            mCmManager->connectionMethod(iapId));
hgs
parents:
diff changeset
   295
        iap->deleteConnectionMethod();
hgs
parents:
diff changeset
   296
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   297
        // Just trace error cause. It is not fatal, if we are not able to
hgs
parents:
diff changeset
   298
        // delete the IAP. No need to retry, since errors should be very
hgs
parents:
diff changeset
   299
        // rare and user can delete the IAP later from Control Panel, if
hgs
parents:
diff changeset
   300
        // needed.
hgs
parents:
diff changeset
   301
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   302
        OstTrace1(
hgs
parents:
diff changeset
   303
            TRACE_NORMAL,
hgs
parents:
diff changeset
   304
            WLANQTUTILSIAPSETTINGS_DELETEIAP_EXCEPTION,
hgs
parents:
diff changeset
   305
            "WlanQtUtilsIapSettings::deleteIap exception;error=%d",
hgs
parents:
diff changeset
   306
            error);
hgs
parents:
diff changeset
   307
    }
hgs
parents:
diff changeset
   308
hgs
parents:
diff changeset
   309
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_DELETEIAP_EXIT);
hgs
parents:
diff changeset
   310
}
hgs
parents:
diff changeset
   311
hgs
parents:
diff changeset
   312
/*!
hgs
parents:
diff changeset
   313
    Move IAP to the Internet SNAP.
hgs
parents:
diff changeset
   314
    
hgs
parents:
diff changeset
   315
    @param [in] iapId ID of the IAP to move.
hgs
parents:
diff changeset
   316
*/
hgs
parents:
diff changeset
   317
hgs
parents:
diff changeset
   318
void WlanQtUtilsIapSettings::moveIapToInternetSnap(int iapId)
hgs
parents:
diff changeset
   319
{
hgs
parents:
diff changeset
   320
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_MOVEIAPTOINTERNETSNAP_ENTRY);
hgs
parents:
diff changeset
   321
    
hgs
parents:
diff changeset
   322
    // Read all destination (SNAP) IDs
hgs
parents:
diff changeset
   323
    QList<uint> destinations;
hgs
parents:
diff changeset
   324
    try {
hgs
parents:
diff changeset
   325
        mCmManager->allDestinations(destinations);
hgs
parents:
diff changeset
   326
        foreach (int destId, destinations) {
hgs
parents:
diff changeset
   327
            QScopedPointer<CmDestinationShim> destination(
hgs
parents:
diff changeset
   328
                mCmManager->destination(destId));
hgs
parents:
diff changeset
   329
        
hgs
parents:
diff changeset
   330
            // Internet destination will always exist in the system. It has 
hgs
parents:
diff changeset
   331
            // SnapPurposeInternet set in its metadata.
hgs
parents:
diff changeset
   332
            if (destination->metadata(CMManagerShim::SnapMetadataPurpose)
hgs
parents:
diff changeset
   333
                == CMManagerShim::SnapPurposeInternet) {
hgs
parents:
diff changeset
   334
                QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents:
diff changeset
   335
                    mCmManager->connectionMethod(iapId));
hgs
parents:
diff changeset
   336
                destination->addConnectionMethod(iap.data());
hgs
parents:
diff changeset
   337
                destination->update();
hgs
parents:
diff changeset
   338
                break;
hgs
parents:
diff changeset
   339
            }
hgs
parents:
diff changeset
   340
        }
hgs
parents:
diff changeset
   341
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   342
        int error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   343
        OstTrace1(
hgs
parents:
diff changeset
   344
            TRACE_NORMAL,
hgs
parents:
diff changeset
   345
            WLANQTUTILSIAPSETTINGS_MOVEIAPTOINTERNETSNAP_EXCEPTION,
hgs
parents:
diff changeset
   346
            "WlanQtUtilsIapSettings::moveIapToInternetSnap exception;error=%d",
hgs
parents:
diff changeset
   347
            error);
hgs
parents:
diff changeset
   348
    }
hgs
parents:
diff changeset
   349
hgs
parents:
diff changeset
   350
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_MOVEIAPTOINTERNETSNAP_EXIT);
hgs
parents:
diff changeset
   351
}
hgs
parents:
diff changeset
   352
hgs
parents:
diff changeset
   353
/*!
39
hgs
parents: 31
diff changeset
   354
    Set Hotspot metadata to the Hotspot IAP given as parameter.
hgs
parents: 31
diff changeset
   355
    
hgs
parents: 31
diff changeset
   356
    @param [in] iapId ID of IAP to set.
hgs
parents: 31
diff changeset
   357
*/
hgs
parents: 31
diff changeset
   358
hgs
parents: 31
diff changeset
   359
void WlanQtUtilsIapSettings::setAsHotspotIap(int iapId)
hgs
parents: 31
diff changeset
   360
{
hgs
parents: 31
diff changeset
   361
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_SETASHOTSPOTIAP_ENTRY);
hgs
parents: 31
diff changeset
   362
        
hgs
parents: 31
diff changeset
   363
    try {
hgs
parents: 31
diff changeset
   364
        QScopedPointer<CmConnectionMethodShim> iap(
hgs
parents: 31
diff changeset
   365
            mCmManager->connectionMethod(iapId));
hgs
parents: 31
diff changeset
   366
        iap->setBoolAttribute(CMManagerShim::CmMetaHotSpot, true);
hgs
parents: 31
diff changeset
   367
        iap->update();
hgs
parents: 31
diff changeset
   368
    } catch (const std::exception &ex) {
hgs
parents: 31
diff changeset
   369
        // Just trace error cause. It is not fatal, if we are not able to
hgs
parents: 31
diff changeset
   370
        // set IAP as hotspot IAP. No need to retry, since errors should be very
hgs
parents: 31
diff changeset
   371
        // rare and it does not prevent connection opening of the hotspot IAP.
hgs
parents: 31
diff changeset
   372
        int error = qt_symbian_exception2Error(ex);
hgs
parents: 31
diff changeset
   373
        OstTrace1(
hgs
parents: 31
diff changeset
   374
            TRACE_NORMAL,
hgs
parents: 31
diff changeset
   375
            WLANQTUTILSIAPSETTINGS_SETASHOTSPOTIAP_EXCEPTION,
hgs
parents: 31
diff changeset
   376
            "WlanQtUtilsIapSettings::setAsHotspotIap exception;error=%d",
hgs
parents: 31
diff changeset
   377
            error);
hgs
parents: 31
diff changeset
   378
    }
hgs
parents: 31
diff changeset
   379
                 
hgs
parents: 31
diff changeset
   380
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_SETASHOTSPOTIAP_EXIT);
hgs
parents: 31
diff changeset
   381
}
hgs
parents: 31
diff changeset
   382
hgs
parents: 31
diff changeset
   383
/*!
31
hgs
parents:
diff changeset
   384
    Stores the given Wlan AP settings to database using CM Manager Shim.
hgs
parents:
diff changeset
   385
   
hgs
parents:
diff changeset
   386
    @param [in] wlanAp WLAN AP settings to store.
hgs
parents:
diff changeset
   387
    @param [in] iap WLAN IAP to store to.
hgs
parents:
diff changeset
   388
*/
hgs
parents:
diff changeset
   389
hgs
parents:
diff changeset
   390
void WlanQtUtilsIapSettings::storeSettings(
hgs
parents:
diff changeset
   391
    const WlanQtUtilsAp *wlanAp,
hgs
parents:
diff changeset
   392
    CmConnectionMethodShim *iap)
hgs
parents:
diff changeset
   393
{
hgs
parents:
diff changeset
   394
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_STORESETTINGS_ENTRY);
39
hgs
parents: 31
diff changeset
   395
hgs
parents: 31
diff changeset
   396
    // Store general settings
60
hgs
parents: 53
diff changeset
   397
    iap->setStringAttribute(
hgs
parents: 53
diff changeset
   398
        CMManagerShim::CmName,
hgs
parents: 53
diff changeset
   399
        wlanAp->value(WlanQtUtilsAp::ConfIdName).toString());
hgs
parents: 53
diff changeset
   400
    iap->setStringAttribute(
hgs
parents: 53
diff changeset
   401
        CMManagerShim::WlanSSID,
hgs
parents: 53
diff changeset
   402
        wlanAp->value(WlanQtUtilsAp::ConfIdSsid).toString());
hgs
parents: 53
diff changeset
   403
    iap->setIntAttribute(
hgs
parents: 53
diff changeset
   404
        CMManagerShim::WlanSecurityMode,
hgs
parents: 53
diff changeset
   405
        wlanAp->value(WlanQtUtilsAp::ConfIdSecurityMode).toInt());
31
hgs
parents:
diff changeset
   406
    iap->setIntAttribute(
hgs
parents:
diff changeset
   407
        CMManagerShim::WlanConnectionMode, 
hgs
parents:
diff changeset
   408
        wlanAp->value(WlanQtUtilsAp::ConfIdConnectionMode).toInt());
53
hgs
parents: 39
diff changeset
   409
    iap->setBoolAttribute(
hgs
parents: 39
diff changeset
   410
        CMManagerShim::CmHidden,
hgs
parents: 39
diff changeset
   411
        wlanAp->value(WlanQtUtilsAp::ConfIdHidden).toBool());
hgs
parents: 39
diff changeset
   412
    iap->setBoolAttribute(
hgs
parents: 39
diff changeset
   413
        CMManagerShim::WlanScanSSID,
hgs
parents: 39
diff changeset
   414
        wlanAp->value(WlanQtUtilsAp::ConfIdWlanScanSSID).toBool());
31
hgs
parents:
diff changeset
   415
39
hgs
parents: 31
diff changeset
   416
    // Store the WEP settings
hgs
parents: 31
diff changeset
   417
    storeWepKey(
hgs
parents: 31
diff changeset
   418
        wlanAp->value(WlanQtUtilsAp::ConfIdWepKey1).toString(),
hgs
parents: 31
diff changeset
   419
        1,
hgs
parents: 31
diff changeset
   420
        iap);
hgs
parents: 31
diff changeset
   421
    storeWepKey(
hgs
parents: 31
diff changeset
   422
        wlanAp->value(WlanQtUtilsAp::ConfIdWepKey2).toString(),
hgs
parents: 31
diff changeset
   423
        2,
hgs
parents: 31
diff changeset
   424
        iap);
hgs
parents: 31
diff changeset
   425
    storeWepKey(
hgs
parents: 31
diff changeset
   426
        wlanAp->value(WlanQtUtilsAp::ConfIdWepKey3).toString(),
hgs
parents: 31
diff changeset
   427
        3,
hgs
parents: 31
diff changeset
   428
        iap);
hgs
parents: 31
diff changeset
   429
    storeWepKey(
hgs
parents: 31
diff changeset
   430
        wlanAp->value(WlanQtUtilsAp::ConfIdWepKey4).toString(),
hgs
parents: 31
diff changeset
   431
        4,
hgs
parents: 31
diff changeset
   432
        iap);
hgs
parents: 31
diff changeset
   433
    iap->setIntAttribute(
hgs
parents: 31
diff changeset
   434
        CMManagerShim::WlanWepKeyIndex,
hgs
parents: 31
diff changeset
   435
        wlanAp->value(WlanQtUtilsAp::ConfIdWepDefaultIndex).toInt());
hgs
parents: 31
diff changeset
   436
hgs
parents: 31
diff changeset
   437
    // Store WPA PSK settings
hgs
parents: 31
diff changeset
   438
    bool usePsk = wlanAp->value(WlanQtUtilsAp::ConfIdWpaPskUse).toBool();
hgs
parents: 31
diff changeset
   439
    iap->setBoolAttribute(CMManagerShim::WlanEnableWpaPsk, usePsk);
hgs
parents: 31
diff changeset
   440
    QString wpaKey(wlanAp->value(WlanQtUtilsAp::ConfIdWpaPsk).toString());
hgs
parents: 31
diff changeset
   441
    iap->setString8Attribute(CMManagerShim::WlanWpaPreSharedKey, wpaKey);
hgs
parents: 31
diff changeset
   442
hgs
parents: 31
diff changeset
   443
    // Write the settings.
31
hgs
parents:
diff changeset
   444
    iap->update();
hgs
parents:
diff changeset
   445
hgs
parents:
diff changeset
   446
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_STORESETTINGS_EXIT);
hgs
parents:
diff changeset
   447
}
hgs
parents:
diff changeset
   448
hgs
parents:
diff changeset
   449
/*!
39
hgs
parents: 31
diff changeset
   450
    Stores the given valid WEP key to database using CM Manager Shim. If key
hgs
parents: 31
diff changeset
   451
    is not used an empty key must be provided.
31
hgs
parents:
diff changeset
   452
  
39
hgs
parents: 31
diff changeset
   453
    @note This method MUST not be called for invalid WEP Keys and/or indexes.
hgs
parents: 31
diff changeset
   454
          Wlanwizard validates keys, before accepting user input.
31
hgs
parents:
diff changeset
   455
          
hgs
parents:
diff changeset
   456
    @param [in] key Key to write.
hgs
parents:
diff changeset
   457
    @param [in] index Key index. Valid range is [0,4].
hgs
parents:
diff changeset
   458
    @param [in] iap WLAN IAP to store the key into.
hgs
parents:
diff changeset
   459
*/
hgs
parents:
diff changeset
   460
hgs
parents:
diff changeset
   461
void WlanQtUtilsIapSettings::storeWepKey(
hgs
parents:
diff changeset
   462
    const QString &key,
hgs
parents:
diff changeset
   463
    int index,
hgs
parents:
diff changeset
   464
    CmConnectionMethodShim *iap)
hgs
parents:
diff changeset
   465
{
hgs
parents:
diff changeset
   466
    OstTraceFunctionEntry0(WLANQTUTILSIAPSETTINGS_STOREWEPKEY_ENTRY);
hgs
parents:
diff changeset
   467
    
hgs
parents:
diff changeset
   468
    int length = key.length();
hgs
parents:
diff changeset
   469
    if (length == WepHex64BitMaxLength || length == WepHex128BitMaxLength) {
hgs
parents:
diff changeset
   470
        // HEX
39
hgs
parents: 31
diff changeset
   471
        iap->setString8Attribute(mapWepKeyIndexHex(index), key);
31
hgs
parents:
diff changeset
   472
    } else if (length == WepAscii64BitMaxLength || length == WepAscii128BitMaxLength) {
hgs
parents:
diff changeset
   473
        // ASCII
39
hgs
parents: 31
diff changeset
   474
        iap->setString8Attribute(mapWepKeyIndexAscii(index), key);
hgs
parents: 31
diff changeset
   475
    } else {
hgs
parents: 31
diff changeset
   476
        // Length must always be a valid one or zero
hgs
parents: 31
diff changeset
   477
        Q_ASSERT(length == 0);
hgs
parents: 31
diff changeset
   478
        
hgs
parents: 31
diff changeset
   479
        // Write default value. Note that the key is stored in the same data
hgs
parents: 31
diff changeset
   480
        // field regardless of the format so writing only one key is enough.
hgs
parents: 31
diff changeset
   481
        iap->setString8Attribute(mapWepKeyIndexHex(index), key);
31
hgs
parents:
diff changeset
   482
    }
hgs
parents:
diff changeset
   483
hgs
parents:
diff changeset
   484
    OstTraceFunctionExit0(WLANQTUTILSIAPSETTINGS_STOREWEPKEY_EXIT);
hgs
parents:
diff changeset
   485
}
39
hgs
parents: 31
diff changeset
   486
hgs
parents: 31
diff changeset
   487
/*!
hgs
parents: 31
diff changeset
   488
    Maps given Hex WEP key index into the corresponding CM Manager Connection
hgs
parents: 31
diff changeset
   489
    Method attribute.
hgs
parents: 31
diff changeset
   490
    
hgs
parents: 31
diff changeset
   491
    @param [in] index Hex WEP key index [1,4].
hgs
parents: 31
diff changeset
   492
    
hgs
parents: 31
diff changeset
   493
    @return Connection Method attribute. 
hgs
parents: 31
diff changeset
   494
*/
hgs
parents: 31
diff changeset
   495
hgs
parents: 31
diff changeset
   496
CMManagerShim::ConnectionMethodAttribute WlanQtUtilsIapSettings::mapWepKeyIndexHex(
hgs
parents: 31
diff changeset
   497
    int index)
hgs
parents: 31
diff changeset
   498
{
hgs
parents: 31
diff changeset
   499
    CMManagerShim::ConnectionMethodAttribute attribute = 
hgs
parents: 31
diff changeset
   500
        CMManagerShim::WlanWepKey1InHex;
hgs
parents: 31
diff changeset
   501
    
hgs
parents: 31
diff changeset
   502
    switch (index) {
hgs
parents: 31
diff changeset
   503
    case 1:
hgs
parents: 31
diff changeset
   504
        attribute = CMManagerShim::WlanWepKey1InHex;
hgs
parents: 31
diff changeset
   505
        break;
hgs
parents: 31
diff changeset
   506
        
hgs
parents: 31
diff changeset
   507
    case 2:
hgs
parents: 31
diff changeset
   508
        attribute = CMManagerShim::WlanWepKey2InHex;
hgs
parents: 31
diff changeset
   509
        break;
hgs
parents: 31
diff changeset
   510
        
hgs
parents: 31
diff changeset
   511
    case 3:
hgs
parents: 31
diff changeset
   512
        attribute = CMManagerShim::WlanWepKey3InHex;
hgs
parents: 31
diff changeset
   513
        break;
hgs
parents: 31
diff changeset
   514
        
hgs
parents: 31
diff changeset
   515
    case 4:
hgs
parents: 31
diff changeset
   516
        attribute = CMManagerShim::WlanWepKey4InHex;
hgs
parents: 31
diff changeset
   517
        break;
hgs
parents: 31
diff changeset
   518
        
hgs
parents: 31
diff changeset
   519
#ifndef QT_NO_DEBUG
hgs
parents: 31
diff changeset
   520
    default:
hgs
parents: 31
diff changeset
   521
        // Invalid key index detected
hgs
parents: 31
diff changeset
   522
        Q_ASSERT(0);
hgs
parents: 31
diff changeset
   523
        break;
hgs
parents: 31
diff changeset
   524
#endif
hgs
parents: 31
diff changeset
   525
    }
hgs
parents: 31
diff changeset
   526
hgs
parents: 31
diff changeset
   527
    return attribute;
hgs
parents: 31
diff changeset
   528
}
hgs
parents: 31
diff changeset
   529
hgs
parents: 31
diff changeset
   530
/*!
hgs
parents: 31
diff changeset
   531
    Maps given Ascii WEP key index into the corresponding CM Manager Connection
hgs
parents: 31
diff changeset
   532
    Method attribute.
hgs
parents: 31
diff changeset
   533
    
hgs
parents: 31
diff changeset
   534
    @param [in] index Ascii WEP key index [1,4].
hgs
parents: 31
diff changeset
   535
    
hgs
parents: 31
diff changeset
   536
    @return Connection Method attribute. 
hgs
parents: 31
diff changeset
   537
*/
hgs
parents: 31
diff changeset
   538
hgs
parents: 31
diff changeset
   539
CMManagerShim::ConnectionMethodAttribute WlanQtUtilsIapSettings::mapWepKeyIndexAscii(
hgs
parents: 31
diff changeset
   540
    int index)
hgs
parents: 31
diff changeset
   541
{
hgs
parents: 31
diff changeset
   542
    CMManagerShim::ConnectionMethodAttribute attribute = 
hgs
parents: 31
diff changeset
   543
        CMManagerShim::WlanWepKey1InAscii;
hgs
parents: 31
diff changeset
   544
hgs
parents: 31
diff changeset
   545
    switch (index) {
hgs
parents: 31
diff changeset
   546
    case 1:
hgs
parents: 31
diff changeset
   547
        attribute = CMManagerShim::WlanWepKey1InAscii;
hgs
parents: 31
diff changeset
   548
        break;
hgs
parents: 31
diff changeset
   549
        
hgs
parents: 31
diff changeset
   550
    case 2:
hgs
parents: 31
diff changeset
   551
        attribute = CMManagerShim::WlanWepKey2InAscii;
hgs
parents: 31
diff changeset
   552
        break;
hgs
parents: 31
diff changeset
   553
        
hgs
parents: 31
diff changeset
   554
    case 3:
hgs
parents: 31
diff changeset
   555
        attribute = CMManagerShim::WlanWepKey3InAscii;
hgs
parents: 31
diff changeset
   556
        break;
hgs
parents: 31
diff changeset
   557
hgs
parents: 31
diff changeset
   558
    case 4:
hgs
parents: 31
diff changeset
   559
        attribute = CMManagerShim::WlanWepKey4InAscii;
hgs
parents: 31
diff changeset
   560
        break;
hgs
parents: 31
diff changeset
   561
        
hgs
parents: 31
diff changeset
   562
#ifndef QT_NO_DEBUG
hgs
parents: 31
diff changeset
   563
    default:
hgs
parents: 31
diff changeset
   564
        // Invalid key index detected
hgs
parents: 31
diff changeset
   565
        Q_ASSERT(0);
hgs
parents: 31
diff changeset
   566
        break;
hgs
parents: 31
diff changeset
   567
#endif            
hgs
parents: 31
diff changeset
   568
    }
hgs
parents: 31
diff changeset
   569
hgs
parents: 31
diff changeset
   570
    return attribute;
hgs
parents: 31
diff changeset
   571
}
hgs
parents: 31
diff changeset
   572
hgs
parents: 31
diff changeset
   573
/*
hgs
parents: 31
diff changeset
   574
    Traces given IAP (which is taken in as an AP).
hgs
parents: 31
diff changeset
   575
hgs
parents: 31
diff changeset
   576
    @param [in] ap IAP to trace.
hgs
parents: 31
diff changeset
   577
    @param [in] traceType Trace type (WLANQTUTILS_IAP_TRACE_*).
hgs
parents: 31
diff changeset
   578
    @param [in] iapId IAP ID.
hgs
parents: 31
diff changeset
   579
*/
hgs
parents: 31
diff changeset
   580
hgs
parents: 31
diff changeset
   581
void WlanQtUtilsIapSettings::traceIap(
hgs
parents: 31
diff changeset
   582
    const WlanQtUtilsAp *ap,
hgs
parents: 31
diff changeset
   583
    int traceType,
hgs
parents: 31
diff changeset
   584
    uint iapId) const
hgs
parents: 31
diff changeset
   585
{
hgs
parents: 31
diff changeset
   586
#ifndef OST_TRACE_COMPILER_IN_USE
hgs
parents: 31
diff changeset
   587
    Q_UNUSED(ap);
hgs
parents: 31
diff changeset
   588
    Q_UNUSED(traceType);
hgs
parents: 31
diff changeset
   589
    Q_UNUSED(iapId);
hgs
parents: 31
diff changeset
   590
#else    
hgs
parents: 31
diff changeset
   591
    QString ssid_string(ap->value(WlanQtUtilsAp::ConfIdSsid).toString());
hgs
parents: 31
diff changeset
   592
    TPtrC16 ssid(ssid_string.utf16(), ssid_string.length());
hgs
parents: 31
diff changeset
   593
    int secMode = ap->value(WlanQtUtilsAp::ConfIdSecurityMode).toInt();
hgs
parents: 31
diff changeset
   594
    int connMode = ap->value(WlanQtUtilsAp::ConfIdConnectionMode).toInt();    
hgs
parents: 31
diff changeset
   595
    bool useWpaPsk = ap->value(WlanQtUtilsAp::ConfIdWpaPskUse).toBool();
hgs
parents: 31
diff changeset
   596
    
hgs
parents: 31
diff changeset
   597
    switch (traceType) {
hgs
parents: 31
diff changeset
   598
    case WLANQTUTILS_IAP_TRACE_FETCH:
hgs
parents: 31
diff changeset
   599
        OstTraceExt5(
hgs
parents: 31
diff changeset
   600
            TRACE_NORMAL,
hgs
parents: 31
diff changeset
   601
            WLANQTUTILSIAPSETTINGS_TRACEIAP_FETCH,
hgs
parents: 31
diff changeset
   602
            "WlanQtUtilsIapSettings::traceIap Fetched;iapId=%u;ssid=%S;secMode=%{WlanSecMode};useWpaPsk=%u;connMode=%{WlanConnMode}",
hgs
parents: 31
diff changeset
   603
            iapId,
hgs
parents: 31
diff changeset
   604
            ssid,
hgs
parents: 31
diff changeset
   605
            secMode,
hgs
parents: 31
diff changeset
   606
            useWpaPsk,
hgs
parents: 31
diff changeset
   607
            connMode);
hgs
parents: 31
diff changeset
   608
        break;
hgs
parents: 31
diff changeset
   609
hgs
parents: 31
diff changeset
   610
    case WLANQTUTILS_IAP_TRACE_CREATE:
hgs
parents: 31
diff changeset
   611
        OstTraceExt5(
hgs
parents: 31
diff changeset
   612
            TRACE_NORMAL,
hgs
parents: 31
diff changeset
   613
            WLANQTUTILSIAPSETTINGS_TRACEIAP_CREATE,
hgs
parents: 31
diff changeset
   614
            "WlanQtUtilsIapSettings::traceIap Created;iapId=%u;ssid=%S;secMode=%{WlanSecMode};useWpaPsk=%u;connMode=%{WlanConnMode}",
hgs
parents: 31
diff changeset
   615
            iapId,
hgs
parents: 31
diff changeset
   616
            ssid,
hgs
parents: 31
diff changeset
   617
            secMode,
hgs
parents: 31
diff changeset
   618
            useWpaPsk,
hgs
parents: 31
diff changeset
   619
            connMode);
hgs
parents: 31
diff changeset
   620
        break;
hgs
parents: 31
diff changeset
   621
hgs
parents: 31
diff changeset
   622
    case WLANQTUTILS_IAP_TRACE_UPDATE:
hgs
parents: 31
diff changeset
   623
        OstTraceExt5(
hgs
parents: 31
diff changeset
   624
            TRACE_NORMAL,
hgs
parents: 31
diff changeset
   625
            WLANQTUTILSIAPSETTINGS_TRACEIAP_UPDATE,
hgs
parents: 31
diff changeset
   626
            "WlanQtUtilsIapSettings::traceIap Updated;iapId=%u;ssid=%S;secMode=%{WlanSecMode};useWpaPsk=%u;connMode=%{WlanConnMode}",
hgs
parents: 31
diff changeset
   627
            iapId,
hgs
parents: 31
diff changeset
   628
            ssid,
hgs
parents: 31
diff changeset
   629
            secMode,
hgs
parents: 31
diff changeset
   630
            useWpaPsk,
hgs
parents: 31
diff changeset
   631
            connMode);
hgs
parents: 31
diff changeset
   632
        break;
hgs
parents: 31
diff changeset
   633
    }
hgs
parents: 31
diff changeset
   634
#endif
hgs
parents: 31
diff changeset
   635
}