|
1 /* |
|
2 * Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of the License "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: Interface to read and write WLAN device specific settings. |
|
15 * |
|
16 */ |
|
17 |
|
18 /* |
|
19 * %version: 17 % |
|
20 */ |
|
21 |
|
22 // INCLUDE FILES |
|
23 #include <commdb.h> |
|
24 #include <centralrepository.h> |
|
25 #include <commsdattypesv1_1.h> |
|
26 #include <e32std.h> |
|
27 |
|
28 #include "am_debug.h" |
|
29 #include "wlandevicesettings.h" |
|
30 #include "wlandevicesettingsprivatecrkeys.h" |
|
31 |
|
32 // CONSTANTS |
|
33 // Ids for Wlan settings type. |
|
34 const TUint32 KWlanDefaultSettings = 0; |
|
35 const TUint32 KWlanUserSettings = 1; |
|
36 const TUint32 KMaxCommsDbWriteAttempts = 10; |
|
37 const TUint32 KRetryIntervalUsIfCommsDbLocked = 100000; |
|
38 |
|
39 // Table name |
|
40 _LIT( KWlanDeviceSettings, "WLANDeviceTable" ); |
|
41 _LIT( KTableVersion, "Version"); |
|
42 _LIT( KWlanDeviceSettingsType, "WlanDeviceSettingsType" ); |
|
43 _LIT( KBgScanInterval, "WlanBgScanInterval" ); |
|
44 _LIT( KUseDefaultSettings, "WlanUseDefaultSettings" ); |
|
45 _LIT( KWlanLongRetry, "WlanLongRetry" ); |
|
46 _LIT( KWlanRTSThreshold, "WlanRTS" ); |
|
47 _LIT( KWlanShortRetry, "WlanShortRetry" ); |
|
48 _LIT( KWlanTxPowerLevel, "WlanTxPowerLevel" ); |
|
49 _LIT( KWlanAllowRadioMeasurements, "AllowRadioMeasurements" ); |
|
50 _LIT( KWlanPowerMode, "WlanPowerMode" ); |
|
51 |
|
52 // Increase version every time the content of the table changes! |
|
53 const TUint32 KWlanDeviceSettingsTableVersion = 9; |
|
54 |
|
55 // LOCAL FUNCTION PROTOTYPES |
|
56 |
|
57 // ==================== LOCAL FUNCTIONS ==================== |
|
58 |
|
59 // ================= MEMBER FUNCTIONS ======================= |
|
60 |
|
61 // --------------------------------------------------------- |
|
62 // CWlanDeviceSettings::CWlanDeviceSettings |
|
63 // NOTE! This class is derived from CBase, so, it is |
|
64 // initialised with zero. The initialisation of its |
|
65 // attributes is unnecessary. |
|
66 // --------------------------------------------------------- |
|
67 // |
|
68 CWlanDeviceSettings::CWlanDeviceSettings() |
|
69 { |
|
70 } |
|
71 |
|
72 // --------------------------------------------------------- |
|
73 // CWlanDeviceSettings::ConstructL |
|
74 // --------------------------------------------------------- |
|
75 // |
|
76 void CWlanDeviceSettings::ConstructL() |
|
77 { |
|
78 DEBUG( "CWlanDeviceSettings::ConstructL()" ); |
|
79 // Open the CommsDB. |
|
80 iDb = CCommsDatabase::NewL(); |
|
81 |
|
82 // Check that the version of WlanDeviceSettings is correct. |
|
83 TRAPD( err, CheckWlanDeviceSettingsTableL() ); |
|
84 |
|
85 if ( err != KErrNone ) |
|
86 { |
|
87 // Okay, the version is not correct or the table is not found. |
|
88 DEBUG( "ERROR: SETTINGS NOT OK!!" ); |
|
89 delete iDb; |
|
90 iDb = NULL; |
|
91 User::Leave( err ); |
|
92 } |
|
93 |
|
94 // Open the WLAN device settings table. |
|
95 OpenTableL(); |
|
96 DEBUG( "CWlanDeviceSettings::ConstructL() Tables opened ok." ); |
|
97 } |
|
98 |
|
99 // --------------------------------------------------------- |
|
100 // CWlanDeviceSettings::NewL |
|
101 // --------------------------------------------------------- |
|
102 // |
|
103 EXPORT_C CWlanDeviceSettings* CWlanDeviceSettings::NewL() |
|
104 { |
|
105 DEBUG( "CWlanDeviceSettings::NewL()" ); |
|
106 |
|
107 CWlanDeviceSettings* self = new (ELeave) CWlanDeviceSettings; |
|
108 CleanupStack::PushL( self ); |
|
109 self->ConstructL(); |
|
110 CleanupStack::Pop( self ); |
|
111 return self; |
|
112 } |
|
113 |
|
114 // --------------------------------------------------------- |
|
115 // CWlanDeviceSettings::~CWlanDeviceSettings |
|
116 // --------------------------------------------------------- |
|
117 // |
|
118 EXPORT_C CWlanDeviceSettings::~CWlanDeviceSettings() |
|
119 { |
|
120 DEBUG( "CWlanDeviceSettings::~CWlanDeviceSettings()" ); |
|
121 delete iDefTable; |
|
122 delete iUsrTable; |
|
123 delete iDb; |
|
124 } |
|
125 |
|
126 // --------------------------------------------------------- |
|
127 // CWlanDeviceSettings::GetDefaultSettings |
|
128 // --------------------------------------------------------- |
|
129 // |
|
130 EXPORT_C void CWlanDeviceSettings::GetDefaultSettings( |
|
131 SWlanDeviceSettings& aSettings ) |
|
132 { |
|
133 DEBUG( "CWlanDeviceSettings::GetDefaultSettings()" ); |
|
134 |
|
135 aSettings.beacon = KWlanDefaultBeacon; |
|
136 aSettings.longRetry = KWlanDefaultLongRetryLimit; |
|
137 aSettings.rts = KWlanDefaultRTSThreshold; |
|
138 aSettings.shortRetry = KWlanDefaultShortRetryLimit; |
|
139 aSettings.backgroundScanInterval = KWlanDefaultBackgroundScanInterval; |
|
140 aSettings.txPowerLevel = KWlanDefaultTxPowerLevel; |
|
141 aSettings.scanRate = E1Mbps; |
|
142 aSettings.rcpiTrigger = KWlanDefaultRcpiTrigger; |
|
143 aSettings.minActiveChannelTime = KWlanDefaultMinChanneltime; |
|
144 aSettings.maxActiveChannelTime = KWlanDefaultMaxChanneltime; |
|
145 aSettings.maxTxMSDULifeTime = KWlanDefaultMaxTransmitMSDULifetime; |
|
146 aSettings.useDefaultSettings = ETrue; |
|
147 aSettings.scanExpirationTimer = KWlanDefaultScanExpirationTimer; |
|
148 aSettings.unloadDriverTimer = KWlanDefaultUnloadDriverTimer; |
|
149 aSettings.roamTimer = KWlanDefaultRoamTimer; |
|
150 aSettings.rcpiDifference = KWlanDefaultRcpiDifference; |
|
151 aSettings.connRegainTimer = KWlanDefaultConnRegainTimer; |
|
152 aSettings.maxTriesToFindNw = KWlanDefaultMaxTriesToFindNw; |
|
153 aSettings.delayBetweenFindNw = KWlanDefaultDelayBetweenFindNw; |
|
154 aSettings.powerMode = KWlanDefaultowerMode; |
|
155 aSettings.allowRadioMeasurements = ETrue; |
|
156 aSettings.minPassiveChannelTime = KWlanDefaultMinPassiveChannelTime; |
|
157 aSettings.maxPassiveChannelTime = KWlanDefaultMaxPassiveChannelTime; |
|
158 aSettings.maxApFailureCount = KWlanDefaultMaxApFailureCount; |
|
159 aSettings.maxApAuthFailureCount = KWlanDefaultMaxApAuthFailureCount; |
|
160 aSettings.longBeaconFindCount = KWlanDefaultLongBeaconFindCount; |
|
161 aSettings.qosNullFrameInterval = KWlanDefaultQosNullFrameInterval; |
|
162 aSettings.qosNullFrameTimeout = KWlanDefaultQosNullFrameTimeout; |
|
163 aSettings.keepAliveInterval = KWlanDefaultKeepAliveInterval; |
|
164 aSettings.scanStopRcpiThreshold = KWlanDefaultScanStopRcpiThreshold; |
|
165 aSettings.minRcpiForIapAvailability = KWlanDefaultMinRcpiForIapAvailability; |
|
166 aSettings.qosNullFrameEntryTimeout = KWlanDefaultQoSNullFrameEntryTimeout; |
|
167 aSettings.maxApDeauthenticationCount = KWlanDefaultMaxApDeauthenticationCount; |
|
168 aSettings.apDeauthenticationTimeout = KWlanDefaultApDeauthenticationTimeout; |
|
169 aSettings.showBrokenPowerSaveNote = ETrue; |
|
170 aSettings.maxDtimSkipInterval = KWlanDefaultMaxDtimSkipInterval; |
|
171 aSettings.psActiveToLightTimeout = KWlanDefaultPsActiveToLightTimeout; |
|
172 aSettings.psActiveToLightThreshold = KWlanDefaultPsActiveToLightThreshold; |
|
173 aSettings.psLightToActiveTimeout = KWlanDefaultPsLightToActiveTimeout; |
|
174 aSettings.psLightToActiveThreshold = KWlanDefaultPsLightToActiveThreshold; |
|
175 aSettings.psLightToDeepTimeout = KWlanDefaultPsLightToDeepTimeout; |
|
176 aSettings.psLightToDeepThreshold = KWlanDefaultPsLightToDeepThreshold; |
|
177 aSettings.psUapsdRxThreshold = KWlanDefaultPsUapsdRxFrameLengthThreshold; |
|
178 aSettings.rcpiRoamMinInterval = KWlanDefaultRcpiRoamMinInterval; |
|
179 aSettings.rcpiRoamMaxInterval = KWlanDefaultRcpiRoamMaxInterval; |
|
180 aSettings.rcpiRoamAttemptsPerInterval = KWlanDefaultRcpiRoamAttemptsPerInterval; |
|
181 aSettings.rcpiRoamNextIntervalFactor = KWlanDefaultRcpiRoamNextIntervalFactor; |
|
182 aSettings.rcpiRoamNextIntervalAddition = KWlanDefaultRcpiRoamNextIntervalAddition; |
|
183 aSettings.scanListExpirationTime = KWlanDefaultScanListExpirationTime; |
|
184 aSettings.qosNullFrameEntryTxCount = KWlanDefaultQoSNullFrameEntryTxCount; |
|
185 aSettings.spRcpiTarget = KWlanDefaultSpRcpiTarget; |
|
186 aSettings.spTimeTarget = KWlanDefaultSpTimeTarget; |
|
187 aSettings.spMinIndicationInterval = KWlanDefaultSpMinIndicationInterval; |
|
188 aSettings.bssLostRoamMinInterval = KWlanDefaultBssLostRoamMinInterval; |
|
189 aSettings.bssLostRoamMaxInterval = KWlanDefaultBssLostRoamMaxInterval; |
|
190 aSettings.bssLostRoamAttemptsPerInterval = KWlanDefaultBssLostRoamAttemptsPerInterval; |
|
191 aSettings.bssLostRoamNextIntervalFactor = KWlanDefaultBssLostRoamNextIntervalFactor; |
|
192 aSettings.bssLostRoamNextIntervalAddition = KWlanDefaultBssLostRoamNextIntervalAddition; |
|
193 aSettings.bssLostRoamMaxTriesToFindNw = KWlanDefaultBssLostRoamMaxTriesToFindNw; |
|
194 aSettings.trafficStreamCreationTimeout = KWlanDefaultTrafficStreamCreationTimeout; |
|
195 aSettings.beaconLostThreshold = KWlanDefaultBeaconLostThreshold; |
|
196 aSettings.btBeaconLostThreshold = KWlanDefaultBtBeaconLostThreshold; |
|
197 aSettings.txFailThreshold = KWlanDefaultTxFailThreshold; |
|
198 aSettings.btTxFailThreshold = KWlanDefaultBtTxFailThreshold; |
|
199 aSettings.powerSaveDelay = KWlanDefaultPowerSaveDelay; |
|
200 aSettings.regionExpirationTime = KWlanDefaultRegionExpirationTime; |
|
201 aSettings.rrmMinMeasurementInterval = KWlanDefaultRrmMinMeasurementInterval; |
|
202 aSettings.psmServerMode = KWlanDefaultPsmServerMode; |
|
203 aSettings.bgScanPeakPeriodStart = KWlanDefaultBgScanPeakPeriodStart; |
|
204 aSettings.bgScanPeakPeriodEnd = KWlanDefaultBgScanPeakPeriodEnd; |
|
205 aSettings.bgScanIntervalPeak = KWlanDefaultBgScanIntervalPeakPeriod; |
|
206 aSettings.bgScanIntervalOffPeak = KWlanDefaultBgScanIntervalOffPeakPeriod; |
|
207 aSettings.automaticTrafficStreamMgmt = ETrue; |
|
208 aSettings.region = KWlanDefaultRegion; |
|
209 aSettings.regionTimestamp = KWlanDefaultRegionTimestamp; |
|
210 } |
|
211 |
|
212 // --------------------------------------------------------- |
|
213 // CWlanDeviceSettings::ReadL |
|
214 // Read data from CommDB and copies it to the parameter. |
|
215 // --------------------------------------------------------- |
|
216 // |
|
217 EXPORT_C void CWlanDeviceSettings::ReadL( SWlanDeviceSettings& aSettings ) |
|
218 { |
|
219 DEBUG( "CWlanDeviceSettings::ReadL()" ); |
|
220 |
|
221 ReadL( EFalse, aSettings ); |
|
222 if ( aSettings.useDefaultSettings ) |
|
223 { |
|
224 ReadL( ETrue, aSettings ); |
|
225 } |
|
226 } |
|
227 |
|
228 // --------------------------------------------------------- |
|
229 // CWlanDeviceSettings::ReadL |
|
230 // Read data from CommDB and copies it to the parameter. |
|
231 // --------------------------------------------------------- |
|
232 // |
|
233 EXPORT_C void CWlanDeviceSettings::ReadL( |
|
234 TBool aGetDefaultSettings, |
|
235 SWlanDeviceSettings& aSettings ) |
|
236 { |
|
237 DEBUG1( "CWlanDeviceSettings::ReadL() - GetDefaultSettings == %u", |
|
238 aGetDefaultSettings ); |
|
239 |
|
240 // Initialize to hard coded default values |
|
241 GetDefaultSettings( aSettings ); |
|
242 |
|
243 // Read private settings from CenRep |
|
244 ReadPrivateData( aSettings ); |
|
245 |
|
246 DEBUG( "CWlanDeviceSettings::ReadL() - private data read!" ); |
|
247 |
|
248 // Start reading CommsDat |
|
249 // Both tables has to been found |
|
250 User::LeaveIfNull( iDefTable ); |
|
251 User::LeaveIfNull( iUsrTable ); |
|
252 |
|
253 CCommsDbTableView* table; |
|
254 if ( aGetDefaultSettings ) |
|
255 { |
|
256 table = iDefTable; |
|
257 } |
|
258 else |
|
259 { |
|
260 table = iUsrTable; |
|
261 } |
|
262 |
|
263 // Read (and convert enumerated) data. |
|
264 // NOTE! backgroundScanInterval is |
|
265 // always read from user table because they are not part of |
|
266 // advanced settings. |
|
267 // |
|
268 iUsrTable->ReadUintL( KBgScanInterval, aSettings.backgroundScanInterval ); |
|
269 table->ReadBoolL( KUseDefaultSettings, aSettings.useDefaultSettings ); |
|
270 table->ReadUintL( KWlanLongRetry, aSettings.longRetry ); |
|
271 table->ReadUintL( KWlanShortRetry, aSettings.shortRetry ); |
|
272 table->ReadUintL( KWlanRTSThreshold, aSettings.rts ); |
|
273 table->ReadUintL( KWlanTxPowerLevel, aSettings.txPowerLevel ); |
|
274 table->ReadBoolL( KWlanAllowRadioMeasurements, aSettings.allowRadioMeasurements ); |
|
275 table->ReadUintL( KWlanPowerMode, aSettings.powerMode ); |
|
276 DEBUG( "CWlanDeviceSettings::ReadL() - done" ); |
|
277 |
|
278 #ifdef _DEBUG |
|
279 // LogSettings( aSettings ); |
|
280 #endif // _DEBUG |
|
281 } |
|
282 |
|
283 // --------------------------------------------------------- |
|
284 // CWlanDeviceSettings::WriteL |
|
285 // Save data to CommDB. |
|
286 // --------------------------------------------------------- |
|
287 // |
|
288 EXPORT_C void CWlanDeviceSettings::WriteL( |
|
289 const SWlanDeviceSettings& aSettings) |
|
290 { |
|
291 DEBUG( "CWlanDeviceSettings::WriteL()" ); |
|
292 |
|
293 // Write private settings to CenRep |
|
294 WritePrivateData( aSettings ); |
|
295 |
|
296 // Write CommsDat settings |
|
297 User::LeaveIfNull( iUsrTable ); |
|
298 User::LeaveIfError( iUsrTable->UpdateRecord() ); // Begin changes. |
|
299 |
|
300 iUsrTable->WriteUintL( KBgScanInterval, aSettings.backgroundScanInterval ); |
|
301 iUsrTable->WriteBoolL( KUseDefaultSettings, aSettings.useDefaultSettings ); |
|
302 iUsrTable->WriteUintL( KWlanLongRetry, aSettings.longRetry ); |
|
303 iUsrTable->WriteUintL( KWlanShortRetry, aSettings.shortRetry ); |
|
304 iUsrTable->WriteUintL( KWlanRTSThreshold, aSettings.rts ); |
|
305 iUsrTable->WriteUintL( KWlanTxPowerLevel, aSettings.txPowerLevel ); |
|
306 iUsrTable->WriteBoolL( KWlanAllowRadioMeasurements, aSettings.allowRadioMeasurements ); |
|
307 iUsrTable->WriteUintL( KWlanPowerMode, aSettings.powerMode ); |
|
308 |
|
309 TInt err = iUsrTable->PutRecordChanges(); // End and save changes. |
|
310 |
|
311 if( err == KErrLocked ) |
|
312 { |
|
313 for( TInt retryCount = 1; retryCount <= KMaxCommsDbWriteAttempts; retryCount++ ) |
|
314 { |
|
315 DEBUG2( "CWlanDeviceSettings::WriteL() - CommsDb locked, waiting for %u us before retrying, retryCount: %u", |
|
316 KRetryIntervalUsIfCommsDbLocked, |
|
317 retryCount ); |
|
318 User::After( TTimeIntervalMicroSeconds32( KRetryIntervalUsIfCommsDbLocked ) ); |
|
319 err = iUsrTable->PutRecordChanges(); |
|
320 if( err != KErrLocked ) |
|
321 { |
|
322 break; |
|
323 } |
|
324 } |
|
325 } |
|
326 |
|
327 User::LeaveIfError( err ); |
|
328 |
|
329 DEBUG( "CWlanDeviceSettings::WriteL() - done" ); |
|
330 } |
|
331 |
|
332 // --------------------------------------------------------- |
|
333 // CWlanDeviceSettings::ReadPrivateData |
|
334 // --------------------------------------------------------- |
|
335 // |
|
336 TInt CWlanDeviceSettings::ReadPrivateData( SWlanDeviceSettings& aSettings ) |
|
337 { |
|
338 DEBUG( "CWlanDeviceSettings::ReadPrivateData()" ); |
|
339 |
|
340 TInt err = KErrNone; |
|
341 CRepository* repository = NULL; |
|
342 TRAP( err, repository = CRepository::NewL( KCRUidWlanDeviceSettingsRegistryId ) ); |
|
343 if( err != KErrNone ) |
|
344 { |
|
345 DEBUG1( "CWlanDeviceSettings::ReadPrivateData() - Could not access repository (%d), using hardcoded values", err ); |
|
346 return err; |
|
347 } |
|
348 // No need to use CleanupStack because no possibility to leave |
|
349 |
|
350 // Read KWlanBeacon |
|
351 TInt temp = 0; |
|
352 err = repository->Get( KWlanBeacon, temp ); |
|
353 if( err == KErrNone ) |
|
354 { |
|
355 aSettings.beacon = temp; |
|
356 } |
|
357 |
|
358 // Read KWlanScanRate |
|
359 err = repository->Get( KWlanScanRate, temp ); |
|
360 if( err == KErrNone ) |
|
361 { |
|
362 aSettings.scanRate = static_cast<TRate>( temp ); |
|
363 } |
|
364 |
|
365 // Read KWlanRcpiTrigger |
|
366 err = repository->Get( KWlanRcpiTrigger, temp ); |
|
367 if( err == KErrNone ) |
|
368 { |
|
369 aSettings.rcpiTrigger = temp; |
|
370 } |
|
371 |
|
372 // Read KWlanMinActiveChannelTime |
|
373 err = repository->Get( KWlanMinActiveChannelTime, temp ); |
|
374 if( err == KErrNone ) |
|
375 { |
|
376 aSettings.minActiveChannelTime = temp; |
|
377 } |
|
378 |
|
379 // Read KWlanMaxActiveChannelTime |
|
380 err = repository->Get( KWlanMaxActiveChannelTime, temp ); |
|
381 if( err == KErrNone ) |
|
382 { |
|
383 aSettings.maxActiveChannelTime = temp; |
|
384 } |
|
385 |
|
386 // Read KWlanMaxTxMSDULifeTime |
|
387 err = repository->Get( KWlanMaxTxMSDULifeTime, temp ); |
|
388 if( err == KErrNone ) |
|
389 { |
|
390 aSettings.maxTxMSDULifeTime = temp; |
|
391 } |
|
392 |
|
393 // Read KWlanScanExpirationTimer |
|
394 err = repository->Get( KWlanScanExpirationTimer, temp ); |
|
395 if( err == KErrNone ) |
|
396 { |
|
397 aSettings.scanExpirationTimer = temp; |
|
398 } |
|
399 |
|
400 // Read KWlanUnloadDriverTimer |
|
401 err = repository->Get( KWlanUnloadDriverTimer, temp ); |
|
402 if( err == KErrNone ) |
|
403 { |
|
404 aSettings.unloadDriverTimer = temp; |
|
405 } |
|
406 |
|
407 // Read KWlanRoamTimer |
|
408 err = repository->Get( KWlanRoamTimer, temp ); |
|
409 if( err == KErrNone ) |
|
410 { |
|
411 aSettings.roamTimer = temp; |
|
412 } |
|
413 |
|
414 // Read KWlanRcpiDifference |
|
415 err = repository->Get( KWlanRcpiDifference, temp ); |
|
416 if( err == KErrNone ) |
|
417 { |
|
418 aSettings.rcpiDifference = temp; |
|
419 } |
|
420 |
|
421 // Read KWlanConnRegainTimer |
|
422 err = repository->Get( KWlanConnRegainTimer, temp ); |
|
423 if( err == KErrNone ) |
|
424 { |
|
425 aSettings.connRegainTimer = temp; |
|
426 } |
|
427 |
|
428 // Read KWlanMaxTriesToFindNw |
|
429 err = repository->Get( KWlanMaxTriesToFindNw, temp ); |
|
430 if( err == KErrNone ) |
|
431 { |
|
432 aSettings.maxTriesToFindNw = temp; |
|
433 } |
|
434 |
|
435 // Read KWlanDelayBetweenFindNw |
|
436 err = repository->Get( KWlanDelayBetweenFindNw, temp ); |
|
437 if( err == KErrNone ) |
|
438 { |
|
439 aSettings.delayBetweenFindNw = temp; |
|
440 } |
|
441 |
|
442 // Read KWlanMinPassiveChannelTime |
|
443 err = repository->Get( KWlanMinPassiveChannelTime, temp ); |
|
444 if( err == KErrNone ) |
|
445 { |
|
446 aSettings.minPassiveChannelTime = temp; |
|
447 } |
|
448 |
|
449 // Read KWlanMaxPassiveChannelTime |
|
450 err = repository->Get( KWlanMaxPassiveChannelTime, temp ); |
|
451 if( err == KErrNone ) |
|
452 { |
|
453 aSettings.maxPassiveChannelTime = temp; |
|
454 } |
|
455 |
|
456 // Read KWlanMaxApFailureCount |
|
457 err = repository->Get( KWlanMaxApFailureCount, temp ); |
|
458 if( err == KErrNone ) |
|
459 { |
|
460 aSettings.maxApFailureCount = temp; |
|
461 } |
|
462 |
|
463 // Read KWlanLongBeaconFindCount |
|
464 err = repository->Get( KWlanLongBeaconFindCount, temp ); |
|
465 if( err == KErrNone ) |
|
466 { |
|
467 aSettings.longBeaconFindCount = temp; |
|
468 } |
|
469 |
|
470 // Read KWlanQosNullFrameInterval |
|
471 err = repository->Get( KWlanQosNullFrameInterval, temp ); |
|
472 if( err == KErrNone ) |
|
473 { |
|
474 aSettings.qosNullFrameInterval = temp; |
|
475 } |
|
476 |
|
477 // Read KWlanQosNullFrameTimeout |
|
478 err = repository->Get( KWlanQosNullFrameTimeout, temp ); |
|
479 if( err == KErrNone ) |
|
480 { |
|
481 aSettings.qosNullFrameTimeout = temp; |
|
482 } |
|
483 |
|
484 // Read KWlanKeepAliveInterval |
|
485 err = repository->Get( KWlanKeepAliveInterval, temp ); |
|
486 if( err == KErrNone ) |
|
487 { |
|
488 aSettings.keepAliveInterval = temp; |
|
489 } |
|
490 |
|
491 // Read KWlanScanStopRcpiThreshold |
|
492 err = repository->Get( KWlanScanStopRcpiThreshold, temp ); |
|
493 if( err == KErrNone ) |
|
494 { |
|
495 aSettings.scanStopRcpiThreshold = temp; |
|
496 } |
|
497 |
|
498 // Read KWlanMinRcpiForIapAvailability |
|
499 err = repository->Get( KWlanMinRcpiForIapAvailability, temp ); |
|
500 if( err == KErrNone ) |
|
501 { |
|
502 aSettings.minRcpiForIapAvailability = temp; |
|
503 } |
|
504 |
|
505 // Read KWlanQoSNullFrameEntryTimeout |
|
506 err = repository->Get( KWlanQoSNullFrameEntryTimeout, temp ); |
|
507 if( err == KErrNone ) |
|
508 { |
|
509 aSettings.qosNullFrameEntryTimeout = temp; |
|
510 } |
|
511 |
|
512 // Read KWlanMaxApDeauthenticationCount |
|
513 err = repository->Get( KWlanMaxApDeauthenticationCount, temp ); |
|
514 if( err == KErrNone ) |
|
515 { |
|
516 aSettings.maxApDeauthenticationCount = temp; |
|
517 } |
|
518 |
|
519 // Read KWlanApDeauthenticationTimeout |
|
520 err = repository->Get( KWlanApDeauthenticationTimeout, temp ); |
|
521 if( err == KErrNone ) |
|
522 { |
|
523 aSettings.apDeauthenticationTimeout = temp; |
|
524 } |
|
525 |
|
526 // Read KWlanShowBrokenPowerSaveNote |
|
527 err = repository->Get( KWlanShowBrokenPowerSaveNote, temp ); |
|
528 if( err == KErrNone ) |
|
529 { |
|
530 aSettings.showBrokenPowerSaveNote = static_cast<TBool>( temp ); |
|
531 } |
|
532 |
|
533 // Read KWlanMaxDtimSkipInterval |
|
534 err = repository->Get( KWlanMaxDtimSkipInterval, temp ); |
|
535 if( err == KErrNone ) |
|
536 { |
|
537 aSettings.maxDtimSkipInterval = temp; |
|
538 } |
|
539 |
|
540 // Read KWlanPsActiveToLightTimeout |
|
541 err = repository->Get( KWlanPsActiveToLightTimeout, temp ); |
|
542 if( err == KErrNone ) |
|
543 { |
|
544 aSettings.psActiveToLightTimeout = temp; |
|
545 } |
|
546 |
|
547 // Read KWlanPsActiveToLightThreshold |
|
548 err = repository->Get( KWlanPsActiveToLightThreshold, temp ); |
|
549 if( err == KErrNone ) |
|
550 { |
|
551 aSettings.psActiveToLightThreshold = temp; |
|
552 } |
|
553 |
|
554 // Read KWlanPsLightToActiveTimeout |
|
555 err = repository->Get( KWlanPsLightToActiveTimeout, temp ); |
|
556 if( err == KErrNone ) |
|
557 { |
|
558 aSettings.psLightToActiveTimeout = temp; |
|
559 } |
|
560 |
|
561 // Read KWlanPsLightToActiveThreshold |
|
562 err = repository->Get( KWlanPsLightToActiveThreshold, temp ); |
|
563 if( err == KErrNone ) |
|
564 { |
|
565 aSettings.psLightToActiveThreshold = temp; |
|
566 } |
|
567 |
|
568 // Read KWlanPsLightToDeepTimeout |
|
569 err = repository->Get( KWlanPsLightToDeepTimeout, temp ); |
|
570 if( err == KErrNone ) |
|
571 { |
|
572 aSettings.psLightToDeepTimeout = temp; |
|
573 } |
|
574 |
|
575 // Read KWlanPsLightToDeepThreshold |
|
576 err = repository->Get( KWlanPsLightToDeepThreshold, temp ); |
|
577 if( err == KErrNone ) |
|
578 { |
|
579 aSettings.psLightToDeepThreshold = temp; |
|
580 } |
|
581 |
|
582 // Read KWlanPsUapsdRxFrameLengthThreshold |
|
583 err = repository->Get( KWlanPsUapsdRxFrameLengthThreshold, temp ); |
|
584 if( err == KErrNone ) |
|
585 { |
|
586 aSettings.psUapsdRxThreshold = temp; |
|
587 } |
|
588 |
|
589 // Read KWlanRcpiRoamMinInterval |
|
590 err = repository->Get( KWlanRcpiRoamMinInterval, temp ); |
|
591 if( err == KErrNone ) |
|
592 { |
|
593 aSettings.rcpiRoamMinInterval = temp; |
|
594 } |
|
595 |
|
596 // Read KWlanRcpiRoamMaxInterval |
|
597 err = repository->Get( KWlanRcpiRoamMaxInterval, temp ); |
|
598 if( err == KErrNone ) |
|
599 { |
|
600 aSettings.rcpiRoamMaxInterval = temp; |
|
601 } |
|
602 |
|
603 // Read KWlanRcpiRoamAttemptsPerInterval |
|
604 err = repository->Get( KWlanRcpiRoamAttemptsPerInterval, temp ); |
|
605 if( err == KErrNone ) |
|
606 { |
|
607 aSettings.rcpiRoamAttemptsPerInterval = temp; |
|
608 } |
|
609 |
|
610 // Read KWlanRcpiRoamNextIntervalFactor |
|
611 err = repository->Get( KWlanRcpiRoamNextIntervalFactor, temp ); |
|
612 if( err == KErrNone ) |
|
613 { |
|
614 aSettings.rcpiRoamNextIntervalFactor = temp; |
|
615 } |
|
616 |
|
617 // Read KWlanRcpiRoamNextIntervalAddition |
|
618 err = repository->Get( KWlanRcpiRoamNextIntervalAddition, temp ); |
|
619 if( err == KErrNone ) |
|
620 { |
|
621 aSettings.rcpiRoamNextIntervalAddition = temp; |
|
622 } |
|
623 |
|
624 // Read KWlanScanListExpirationTime |
|
625 err = repository->Get( KWlanScanListExpirationTime, temp ); |
|
626 if( err == KErrNone ) |
|
627 { |
|
628 aSettings.scanListExpirationTime = temp; |
|
629 } |
|
630 |
|
631 // Read KWlanQoSNullFrameEntryTxCount |
|
632 err = repository->Get( KWlanQoSNullFrameEntryTxCount, temp ); |
|
633 if( err == KErrNone ) |
|
634 { |
|
635 aSettings.qosNullFrameEntryTxCount = temp; |
|
636 } |
|
637 |
|
638 // Read KWlanSpRcpiTarget |
|
639 err = repository->Get( KWlanSpRcpiTarget, temp ); |
|
640 if( err == KErrNone ) |
|
641 { |
|
642 aSettings.spRcpiTarget = temp; |
|
643 } |
|
644 |
|
645 // Read KWlanSpTimeTarget |
|
646 err = repository->Get( KWlanSpTimeTarget, temp ); |
|
647 if( err == KErrNone ) |
|
648 { |
|
649 aSettings.spTimeTarget = temp; |
|
650 } |
|
651 |
|
652 // Read KWlanSpMinIndicationInterval |
|
653 err = repository->Get( KWlanSpMinIndicationInterval, temp ); |
|
654 if( err == KErrNone ) |
|
655 { |
|
656 aSettings.spMinIndicationInterval = temp; |
|
657 } |
|
658 |
|
659 // Read KWlanBssLostRoamMinInterval |
|
660 err = repository->Get( KWlanBssLostRoamMinInterval, temp ); |
|
661 if( err == KErrNone ) |
|
662 { |
|
663 aSettings.bssLostRoamMinInterval = temp; |
|
664 } |
|
665 |
|
666 // Read KWlanBssLostRoamMaxInterval |
|
667 err = repository->Get( KWlanBssLostRoamMaxInterval, temp ); |
|
668 if( err == KErrNone ) |
|
669 { |
|
670 aSettings.bssLostRoamMaxInterval = temp; |
|
671 } |
|
672 |
|
673 // Read KWlanBssLostRoamAttemptsPerInterval |
|
674 err = repository->Get( KWlanBssLostRoamAttemptsPerInterval, temp ); |
|
675 if( err == KErrNone ) |
|
676 { |
|
677 aSettings.bssLostRoamAttemptsPerInterval = temp; |
|
678 } |
|
679 |
|
680 // Read KWlanBssLostRoamNextIntervalFactor |
|
681 err = repository->Get( KWlanBssLostRoamNextIntervalFactor, temp ); |
|
682 if( err == KErrNone ) |
|
683 { |
|
684 aSettings.bssLostRoamNextIntervalFactor = temp; |
|
685 } |
|
686 |
|
687 // Read KWlanBssLostRoamNextIntervalAddition |
|
688 err = repository->Get( KWlanBssLostRoamNextIntervalAddition, temp ); |
|
689 if( err == KErrNone ) |
|
690 { |
|
691 aSettings.bssLostRoamNextIntervalAddition = temp; |
|
692 } |
|
693 |
|
694 // Read KWlanBssLostRoamMaxTriesToFindNw |
|
695 err = repository->Get( KWlanBssLostRoamMaxTriesToFindNw, temp ); |
|
696 if( err == KErrNone ) |
|
697 { |
|
698 aSettings.bssLostRoamMaxTriesToFindNw = temp; |
|
699 } |
|
700 |
|
701 // Read KWlanTrafficStreamCreationTimeout |
|
702 err = repository->Get( KWlanTrafficStreamCreationTimeout, temp ); |
|
703 if( err == KErrNone ) |
|
704 { |
|
705 aSettings.trafficStreamCreationTimeout = temp; |
|
706 } |
|
707 |
|
708 // Read KWlanBeaconLostThreshold |
|
709 err = repository->Get( KWlanBeaconLostThreshold, temp ); |
|
710 if( err == KErrNone ) |
|
711 { |
|
712 aSettings.beaconLostThreshold = temp; |
|
713 } |
|
714 |
|
715 // Read KWlanBtBeaconLostThreshold |
|
716 err = repository->Get( KWlanBtBeaconLostThreshold, temp ); |
|
717 if( err == KErrNone ) |
|
718 { |
|
719 aSettings.btBeaconLostThreshold = temp; |
|
720 } |
|
721 |
|
722 // Read KWlanTxFailThreshold |
|
723 err = repository->Get( KWlanTxFailThreshold, temp ); |
|
724 if( err == KErrNone ) |
|
725 { |
|
726 aSettings.txFailThreshold = temp; |
|
727 } |
|
728 |
|
729 // Read KWlanBtTxFailThreshold |
|
730 err = repository->Get( KWlanBtTxFailThreshold, temp ); |
|
731 if( err == KErrNone ) |
|
732 { |
|
733 aSettings.btTxFailThreshold = temp; |
|
734 } |
|
735 |
|
736 // Read KWlanPowerSaveDelay |
|
737 err = repository->Get( KWlanPowerSaveDelay, temp ); |
|
738 if( err == KErrNone ) |
|
739 { |
|
740 aSettings.powerSaveDelay = temp; |
|
741 } |
|
742 |
|
743 // Read KWlanRegionExpirationTime |
|
744 err = repository->Get( KWlanRegionExpirationTime, temp ); |
|
745 if( err == KErrNone ) |
|
746 { |
|
747 aSettings.regionExpirationTime = temp; |
|
748 } |
|
749 |
|
750 // Read KWlanRrmMinMeasurementInterval |
|
751 err = repository->Get( KWlanRrmMinMeasurementInterval, temp ); |
|
752 if( err == KErrNone ) |
|
753 { |
|
754 aSettings.rrmMinMeasurementInterval = temp; |
|
755 } |
|
756 |
|
757 // Read KWlanPsmSrvMode |
|
758 err = repository->Get( KWlanPsmSrvMode, temp ); |
|
759 if( err == KErrNone ) |
|
760 { |
|
761 aSettings.psmServerMode = temp; |
|
762 } |
|
763 |
|
764 // Read KWlanBgScanPeakPeriodStart |
|
765 err = repository->Get( KWlanBgScanPeakPeriodStart, temp ); |
|
766 if( err == KErrNone ) |
|
767 { |
|
768 aSettings.bgScanPeakPeriodStart = temp; |
|
769 } |
|
770 |
|
771 // Read KWlanBgScanPeakPeriodEnd |
|
772 err = repository->Get( KWlanBgScanPeakPeriodEnd, temp ); |
|
773 if( err == KErrNone ) |
|
774 { |
|
775 aSettings.bgScanPeakPeriodEnd = temp; |
|
776 } |
|
777 |
|
778 // Read KWlanBgScanIntervalPeakPeriod |
|
779 err = repository->Get( KWlanBgScanIntervalPeakPeriod, temp ); |
|
780 if( err == KErrNone ) |
|
781 { |
|
782 aSettings.bgScanIntervalPeak = temp; |
|
783 } |
|
784 |
|
785 // Read KWlanBgScanIntervalOffPeakPeriod |
|
786 err = repository->Get( KWlanBgScanIntervalOffPeakPeriod, temp ); |
|
787 if( err == KErrNone ) |
|
788 { |
|
789 aSettings.bgScanIntervalOffPeak = temp; |
|
790 } |
|
791 |
|
792 // Read KWlanAutomaticTrafficStreamMgmt |
|
793 err = repository->Get( KWlanAutomaticTrafficStreamMgmt, temp ); |
|
794 if( err == KErrNone ) |
|
795 { |
|
796 aSettings.automaticTrafficStreamMgmt = static_cast<TBool>( temp ); |
|
797 } |
|
798 |
|
799 // Read KWlanRegion |
|
800 err = repository->Get( KWlanRegion, temp ); |
|
801 if( err == KErrNone ) |
|
802 { |
|
803 aSettings.region = temp; |
|
804 } |
|
805 |
|
806 // Read KWlanRegionTimestamp |
|
807 err = repository->Get( KWlanRegionTimestamp, temp ); |
|
808 if( err == KErrNone ) |
|
809 { |
|
810 aSettings.regionTimestamp = temp; |
|
811 } |
|
812 |
|
813 // Cleanup |
|
814 delete repository; |
|
815 DEBUG( "CWlanDeviceSettings::ReadPrivateData() - done" ); |
|
816 return KErrNone; |
|
817 } |
|
818 |
|
819 // --------------------------------------------------------- |
|
820 // CWlanDeviceSettings::WriteCenRepKeyL |
|
821 // --------------------------------------------------------- |
|
822 // |
|
823 EXPORT_C void CWlanDeviceSettings::WriteCenRepKeyL( const TUint32 aKey, const TInt aValue ) const |
|
824 { |
|
825 DEBUG2( "CWlanDeviceSettings::WriteCenRepKeyL( aKey: 0x%X, aValue: %d )", aKey, aValue ); |
|
826 |
|
827 CRepository* repository = CRepository::NewL( KCRUidWlanDeviceSettingsRegistryId ); |
|
828 |
|
829 TInt err = repository->Set( aKey, aValue ); |
|
830 if( err != KErrNone ) |
|
831 { |
|
832 DEBUG2( "CWlanDeviceSettings::WriteCenRepKeyL() - Could not set value %d to key 0x%X", aValue, aKey ); |
|
833 } |
|
834 |
|
835 // Cleanup |
|
836 delete repository; |
|
837 |
|
838 User::LeaveIfError( err ); |
|
839 } |
|
840 |
|
841 // --------------------------------------------------------- |
|
842 // CWlanDeviceSettings::WritePrivateData |
|
843 // --------------------------------------------------------- |
|
844 // |
|
845 TInt CWlanDeviceSettings::WritePrivateData( const SWlanDeviceSettings& aSettings ) |
|
846 { |
|
847 DEBUG( "CWlanDeviceSettings::WritePrivateData()" ); |
|
848 |
|
849 TInt err = KErrNone; |
|
850 CRepository* repository = NULL; |
|
851 TRAP( err, repository = CRepository::NewL( KCRUidWlanDeviceSettingsRegistryId ) ); |
|
852 if( err != KErrNone ) |
|
853 { |
|
854 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - Could not access repository (%d), not saving", err ); |
|
855 return err; |
|
856 } |
|
857 // No need to use CleanupStack because no possibility to leave |
|
858 |
|
859 // Write KWlanBeacon |
|
860 err = repository->Set( |
|
861 KWlanBeacon, |
|
862 static_cast<TInt>( aSettings.beacon ) ); |
|
863 if( err ) |
|
864 { |
|
865 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBeacon ); |
|
866 } |
|
867 |
|
868 // Write KWlanScanRate |
|
869 err = repository->Set( |
|
870 KWlanScanRate, |
|
871 static_cast<TInt>( aSettings.scanRate ) ); |
|
872 if( err ) |
|
873 { |
|
874 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanScanRate ); |
|
875 } |
|
876 |
|
877 // Write KWlanRcpiTrigger |
|
878 err = repository->Set( |
|
879 KWlanRcpiTrigger, |
|
880 static_cast<TInt>( aSettings.rcpiTrigger ) ); |
|
881 if( err ) |
|
882 { |
|
883 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiTrigger ); |
|
884 } |
|
885 |
|
886 // Write KWlanMinActiveChannelTime |
|
887 err = repository->Set( |
|
888 KWlanMinActiveChannelTime, |
|
889 static_cast<TInt>( aSettings.minActiveChannelTime ) ); |
|
890 if( err ) |
|
891 { |
|
892 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMinActiveChannelTime ); |
|
893 } |
|
894 |
|
895 // Write KWlanMaxActiveChannelTime |
|
896 err = repository->Set( |
|
897 KWlanMaxActiveChannelTime, |
|
898 static_cast<TInt>( aSettings.maxActiveChannelTime ) ); |
|
899 if( err ) |
|
900 { |
|
901 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxActiveChannelTime ); |
|
902 } |
|
903 |
|
904 // Write KWlanMaxTxMSDULifeTime |
|
905 err = repository->Set( |
|
906 KWlanMaxTxMSDULifeTime, |
|
907 static_cast<TInt>( aSettings.maxTxMSDULifeTime ) ); |
|
908 if( err ) |
|
909 { |
|
910 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxTxMSDULifeTime ); |
|
911 } |
|
912 |
|
913 // Write KWlanScanExpirationTimer |
|
914 err = repository->Set( |
|
915 KWlanScanExpirationTimer, |
|
916 static_cast<TInt>( aSettings.scanExpirationTimer ) ); |
|
917 if( err ) |
|
918 { |
|
919 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanScanExpirationTimer ); |
|
920 } |
|
921 |
|
922 // Write KWlanUnloadDriverTimer |
|
923 err = repository->Set( |
|
924 KWlanUnloadDriverTimer, |
|
925 static_cast<TInt>( aSettings.unloadDriverTimer ) ); |
|
926 if( err ) |
|
927 { |
|
928 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanUnloadDriverTimer ); |
|
929 } |
|
930 |
|
931 // Write KWlanRoamTimer |
|
932 err = repository->Set( |
|
933 KWlanRoamTimer, |
|
934 static_cast<TInt>( aSettings.roamTimer ) ); |
|
935 if( err ) |
|
936 { |
|
937 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRoamTimer ); |
|
938 } |
|
939 |
|
940 // Write KWlanRcpiDifference |
|
941 err = repository->Set( |
|
942 KWlanRcpiDifference, |
|
943 static_cast<TInt>( aSettings.rcpiDifference ) ); |
|
944 if( err ) |
|
945 { |
|
946 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiDifference ); |
|
947 } |
|
948 |
|
949 // Write KWlanConnRegainTimer |
|
950 err = repository->Set( |
|
951 KWlanConnRegainTimer, |
|
952 static_cast<TInt>( aSettings.connRegainTimer ) ); |
|
953 if( err ) |
|
954 { |
|
955 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanConnRegainTimer ); |
|
956 } |
|
957 |
|
958 // Write KWlanMaxTriesToFindNw |
|
959 err = repository->Set( |
|
960 KWlanMaxTriesToFindNw, |
|
961 static_cast<TInt>( aSettings.maxTriesToFindNw ) ); |
|
962 if( err ) |
|
963 { |
|
964 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxTriesToFindNw ); |
|
965 } |
|
966 |
|
967 // Write KWlanDelayBetweenFindNw |
|
968 err = repository->Set( |
|
969 KWlanDelayBetweenFindNw, |
|
970 static_cast<TInt>( aSettings.delayBetweenFindNw ) ); |
|
971 if( err ) |
|
972 { |
|
973 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanDelayBetweenFindNw ); |
|
974 } |
|
975 |
|
976 // Write KWlanMinPassiveChannelTime |
|
977 err = repository->Set( |
|
978 KWlanMinPassiveChannelTime, |
|
979 static_cast<TInt>( aSettings.minPassiveChannelTime ) ); |
|
980 if( err ) |
|
981 { |
|
982 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMinPassiveChannelTime ); |
|
983 } |
|
984 |
|
985 // Write KWlanMaxPassiveChannelTime |
|
986 err = repository->Set( |
|
987 KWlanMaxPassiveChannelTime, |
|
988 static_cast<TInt>( aSettings.maxPassiveChannelTime ) ); |
|
989 if( err ) |
|
990 { |
|
991 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxPassiveChannelTime ); |
|
992 } |
|
993 |
|
994 // Write KWlanMaxApFailureCount |
|
995 err = repository->Set( |
|
996 KWlanMaxApFailureCount, |
|
997 static_cast<TInt>( aSettings.maxApFailureCount ) ); |
|
998 if( err ) |
|
999 { |
|
1000 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxApFailureCount ); |
|
1001 } |
|
1002 |
|
1003 // Write KWlanLongBeaconFindCount |
|
1004 err = repository->Set( |
|
1005 KWlanLongBeaconFindCount, |
|
1006 static_cast<TInt>( aSettings.longBeaconFindCount ) ); |
|
1007 if( err ) |
|
1008 { |
|
1009 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanLongBeaconFindCount ); |
|
1010 } |
|
1011 |
|
1012 // Write KWlanQosNullFrameInterval |
|
1013 err = repository->Set( |
|
1014 KWlanQosNullFrameInterval, |
|
1015 static_cast<TInt>( aSettings.qosNullFrameInterval ) ); |
|
1016 if( err ) |
|
1017 { |
|
1018 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanQosNullFrameInterval ); |
|
1019 } |
|
1020 |
|
1021 // Write KWlanQosNullFrameTimeout |
|
1022 err = repository->Set( |
|
1023 KWlanQosNullFrameTimeout, |
|
1024 static_cast<TInt>( aSettings.qosNullFrameTimeout ) ); |
|
1025 if( err ) |
|
1026 { |
|
1027 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanQosNullFrameTimeout ); |
|
1028 } |
|
1029 |
|
1030 // Write KWlanKeepAliveInterval |
|
1031 err = repository->Set( |
|
1032 KWlanKeepAliveInterval, |
|
1033 static_cast<TInt>( aSettings.keepAliveInterval ) ); |
|
1034 if( err ) |
|
1035 { |
|
1036 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanKeepAliveInterval ); |
|
1037 } |
|
1038 |
|
1039 // Write KWlanScanStopRcpiThreshold |
|
1040 err = repository->Set( |
|
1041 KWlanScanStopRcpiThreshold, |
|
1042 static_cast<TInt>( aSettings.scanStopRcpiThreshold ) ); |
|
1043 if( err ) |
|
1044 { |
|
1045 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanScanStopRcpiThreshold ); |
|
1046 } |
|
1047 |
|
1048 // Write KWlanMinRcpiForIapAvailability |
|
1049 err = repository->Set( |
|
1050 KWlanMinRcpiForIapAvailability, |
|
1051 static_cast<TInt>( aSettings.minRcpiForIapAvailability ) ); |
|
1052 if( err ) |
|
1053 { |
|
1054 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMinRcpiForIapAvailability ); |
|
1055 } |
|
1056 |
|
1057 // Write KWlanQoSNullFrameEntryTimeout |
|
1058 err = repository->Set( |
|
1059 KWlanQoSNullFrameEntryTimeout, |
|
1060 static_cast<TInt>( aSettings.qosNullFrameEntryTimeout ) ); |
|
1061 if( err ) |
|
1062 { |
|
1063 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanQoSNullFrameEntryTimeout ); |
|
1064 } |
|
1065 |
|
1066 // Write KWlanMaxApDeauthenticationCount |
|
1067 err = repository->Set( |
|
1068 KWlanMaxApDeauthenticationCount, |
|
1069 static_cast<TInt>( aSettings.maxApDeauthenticationCount ) ); |
|
1070 if( err ) |
|
1071 { |
|
1072 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxApDeauthenticationCount ); |
|
1073 } |
|
1074 |
|
1075 // Write KWlanApDeauthenticationTimeout |
|
1076 err = repository->Set( |
|
1077 KWlanApDeauthenticationTimeout, |
|
1078 static_cast<TInt>( aSettings.apDeauthenticationTimeout ) ); |
|
1079 if( err ) |
|
1080 { |
|
1081 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanApDeauthenticationTimeout ); |
|
1082 } |
|
1083 |
|
1084 // Write KWlanShowBrokenPowerSaveNote |
|
1085 err = repository->Set( |
|
1086 KWlanShowBrokenPowerSaveNote, |
|
1087 static_cast<TInt>( aSettings.showBrokenPowerSaveNote ) ); |
|
1088 if( err ) |
|
1089 { |
|
1090 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanShowBrokenPowerSaveNote ); |
|
1091 } |
|
1092 |
|
1093 // Write KWlanMaxDtimSkipInterval |
|
1094 err = repository->Set( |
|
1095 KWlanMaxDtimSkipInterval, |
|
1096 static_cast<TInt>( aSettings.maxDtimSkipInterval ) ); |
|
1097 if( err ) |
|
1098 { |
|
1099 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanMaxDtimSkipInterval ); |
|
1100 } |
|
1101 |
|
1102 // Write KWlanPsActiveToLightTimeout |
|
1103 err = repository->Set( |
|
1104 KWlanPsActiveToLightTimeout, |
|
1105 static_cast<TInt>( aSettings.psActiveToLightTimeout ) ); |
|
1106 if( err ) |
|
1107 { |
|
1108 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsActiveToLightTimeout ); |
|
1109 } |
|
1110 |
|
1111 // Write KWlanPsActiveToLightThreshold |
|
1112 err = repository->Set( |
|
1113 KWlanPsActiveToLightThreshold, |
|
1114 static_cast<TInt>( aSettings.psActiveToLightThreshold ) ); |
|
1115 if( err ) |
|
1116 { |
|
1117 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsActiveToLightThreshold ); |
|
1118 } |
|
1119 |
|
1120 // Write KWlanPsLightToActiveTimeout |
|
1121 err = repository->Set( |
|
1122 KWlanPsLightToActiveTimeout, |
|
1123 static_cast<TInt>( aSettings.psLightToActiveTimeout ) ); |
|
1124 if( err ) |
|
1125 { |
|
1126 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsLightToActiveTimeout ); |
|
1127 } |
|
1128 |
|
1129 // Write KWlanPsLightToActiveThreshold |
|
1130 err = repository->Set( |
|
1131 KWlanPsLightToActiveThreshold, |
|
1132 static_cast<TInt>( aSettings.psLightToActiveThreshold ) ); |
|
1133 if( err ) |
|
1134 { |
|
1135 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsLightToActiveThreshold ); |
|
1136 } |
|
1137 |
|
1138 // Write KWlanPsLightToDeepTimeout |
|
1139 err = repository->Set( |
|
1140 KWlanPsLightToDeepTimeout, |
|
1141 static_cast<TInt>( aSettings.psLightToDeepTimeout ) ); |
|
1142 if( err ) |
|
1143 { |
|
1144 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsLightToDeepTimeout ); |
|
1145 } |
|
1146 |
|
1147 // Write KWlanPsLightToDeepThreshold |
|
1148 err = repository->Set( |
|
1149 KWlanPsLightToDeepThreshold, |
|
1150 static_cast<TInt>( aSettings.psLightToDeepThreshold ) ); |
|
1151 if( err ) |
|
1152 { |
|
1153 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsLightToDeepThreshold ); |
|
1154 } |
|
1155 |
|
1156 // Write KWlanPsUapsdRxFrameLengthThreshold |
|
1157 err = repository->Set( |
|
1158 KWlanPsUapsdRxFrameLengthThreshold, |
|
1159 static_cast<TInt>( aSettings.psUapsdRxThreshold ) ); |
|
1160 if( err ) |
|
1161 { |
|
1162 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsUapsdRxFrameLengthThreshold ); |
|
1163 } |
|
1164 |
|
1165 // Write KWlanRcpiRoamMinInterval |
|
1166 err = repository->Set( |
|
1167 KWlanRcpiRoamMinInterval, |
|
1168 static_cast<TInt>( aSettings.rcpiRoamMinInterval ) ); |
|
1169 if( err ) |
|
1170 { |
|
1171 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiRoamMinInterval ); |
|
1172 } |
|
1173 |
|
1174 // Write KWlanRcpiRoamMaxInterval |
|
1175 err = repository->Set( |
|
1176 KWlanRcpiRoamMaxInterval, |
|
1177 static_cast<TInt>( aSettings.rcpiRoamMaxInterval ) ); |
|
1178 if( err ) |
|
1179 { |
|
1180 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiRoamMaxInterval ); |
|
1181 } |
|
1182 |
|
1183 // Write KWlanRcpiRoamAttemptsPerInterval |
|
1184 err = repository->Set( |
|
1185 KWlanRcpiRoamAttemptsPerInterval, |
|
1186 static_cast<TInt>( aSettings.rcpiRoamAttemptsPerInterval ) ); |
|
1187 if( err ) |
|
1188 { |
|
1189 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiRoamAttemptsPerInterval ); |
|
1190 } |
|
1191 |
|
1192 // Write KWlanRcpiRoamNextIntervalFactor |
|
1193 err = repository->Set( |
|
1194 KWlanRcpiRoamNextIntervalFactor, |
|
1195 static_cast<TInt>( aSettings.rcpiRoamNextIntervalFactor ) ); |
|
1196 if( err ) |
|
1197 { |
|
1198 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiRoamNextIntervalFactor ); |
|
1199 } |
|
1200 |
|
1201 // Write KWlanRcpiRoamNextIntervalAddition |
|
1202 err = repository->Set( |
|
1203 KWlanRcpiRoamNextIntervalAddition, |
|
1204 static_cast<TInt>( aSettings.rcpiRoamNextIntervalAddition ) ); |
|
1205 if( err ) |
|
1206 { |
|
1207 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRcpiRoamNextIntervalAddition ); |
|
1208 } |
|
1209 |
|
1210 // Write KWlanScanListExpirationTime |
|
1211 err = repository->Set( |
|
1212 KWlanScanListExpirationTime, |
|
1213 static_cast<TInt>( aSettings.scanListExpirationTime ) ); |
|
1214 if( err ) |
|
1215 { |
|
1216 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanScanListExpirationTime ); |
|
1217 } |
|
1218 |
|
1219 // Write KWlanQoSNullFrameEntryTxCount |
|
1220 err = repository->Set( |
|
1221 KWlanQoSNullFrameEntryTxCount, |
|
1222 static_cast<TInt>( aSettings.qosNullFrameEntryTxCount ) ); |
|
1223 if( err ) |
|
1224 { |
|
1225 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanQoSNullFrameEntryTxCount ); |
|
1226 } |
|
1227 |
|
1228 // Write KWlanSpRcpiTarget |
|
1229 err = repository->Set( |
|
1230 KWlanSpRcpiTarget, |
|
1231 static_cast<TInt>( aSettings.spRcpiTarget ) ); |
|
1232 if( err ) |
|
1233 { |
|
1234 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanSpRcpiTarget ); |
|
1235 } |
|
1236 |
|
1237 // Write KWlanSpTimeTarget |
|
1238 err = repository->Set( |
|
1239 KWlanSpTimeTarget, |
|
1240 static_cast<TInt>( aSettings.spTimeTarget ) ); |
|
1241 if( err ) |
|
1242 { |
|
1243 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanSpTimeTarget ); |
|
1244 } |
|
1245 |
|
1246 // Write KWlanSpMinIndicationInterval |
|
1247 err = repository->Set( |
|
1248 KWlanSpMinIndicationInterval, |
|
1249 static_cast<TInt>( aSettings.spMinIndicationInterval ) ); |
|
1250 if( err ) |
|
1251 { |
|
1252 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanSpMinIndicationInterval ); |
|
1253 } |
|
1254 |
|
1255 // Write KWlanBssLostRoamMinInterval |
|
1256 err = repository->Set( |
|
1257 KWlanBssLostRoamMinInterval, |
|
1258 static_cast<TInt>( aSettings.bssLostRoamMinInterval ) ); |
|
1259 if( err ) |
|
1260 { |
|
1261 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamMinInterval ); |
|
1262 } |
|
1263 |
|
1264 // Write KWlanBssLostRoamMaxInterval |
|
1265 err = repository->Set( |
|
1266 KWlanBssLostRoamMaxInterval, |
|
1267 static_cast<TInt>( aSettings.bssLostRoamMaxInterval ) ); |
|
1268 if( err ) |
|
1269 { |
|
1270 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamMaxInterval ); |
|
1271 } |
|
1272 |
|
1273 // Write KWlanBssLostRoamAttemptsPerInterval |
|
1274 err = repository->Set( |
|
1275 KWlanBssLostRoamAttemptsPerInterval, |
|
1276 static_cast<TInt>( aSettings.bssLostRoamAttemptsPerInterval ) ); |
|
1277 if( err ) |
|
1278 { |
|
1279 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamAttemptsPerInterval ); |
|
1280 } |
|
1281 |
|
1282 // Write KWlanBssLostRoamNextIntervalFactor |
|
1283 err = repository->Set( |
|
1284 KWlanBssLostRoamNextIntervalFactor, |
|
1285 static_cast<TInt>( aSettings.bssLostRoamNextIntervalFactor ) ); |
|
1286 if( err ) |
|
1287 { |
|
1288 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamNextIntervalFactor ); |
|
1289 } |
|
1290 |
|
1291 // Write KWlanBssLostRoamNextIntervalAddition |
|
1292 err = repository->Set( |
|
1293 KWlanBssLostRoamNextIntervalAddition, |
|
1294 static_cast<TInt>( aSettings.bssLostRoamNextIntervalAddition ) ); |
|
1295 if( err ) |
|
1296 { |
|
1297 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamNextIntervalAddition ); |
|
1298 } |
|
1299 |
|
1300 // Write KWlanBssLostRoamMaxTriesToFindNw |
|
1301 err = repository->Set( |
|
1302 KWlanBssLostRoamMaxTriesToFindNw, |
|
1303 static_cast<TInt>( aSettings.bssLostRoamMaxTriesToFindNw ) ); |
|
1304 if( err ) |
|
1305 { |
|
1306 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBssLostRoamMaxTriesToFindNw ); |
|
1307 } |
|
1308 |
|
1309 // Write KWlanTrafficStreamCreationTimeout |
|
1310 err = repository->Set( |
|
1311 KWlanTrafficStreamCreationTimeout, |
|
1312 static_cast<TInt>( aSettings.trafficStreamCreationTimeout ) ); |
|
1313 if( err ) |
|
1314 { |
|
1315 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanTrafficStreamCreationTimeout ); |
|
1316 } |
|
1317 |
|
1318 // Write KWlanBeaconLostThreshold |
|
1319 err = repository->Set( |
|
1320 KWlanBeaconLostThreshold, |
|
1321 static_cast<TInt>( aSettings.beaconLostThreshold ) ); |
|
1322 if( err ) |
|
1323 { |
|
1324 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBeaconLostThreshold ); |
|
1325 } |
|
1326 |
|
1327 // Write KWlanBtBeaconLostThreshold |
|
1328 err = repository->Set( |
|
1329 KWlanBtBeaconLostThreshold, |
|
1330 static_cast<TInt>( aSettings.btBeaconLostThreshold ) ); |
|
1331 if( err ) |
|
1332 { |
|
1333 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBtBeaconLostThreshold ); |
|
1334 } |
|
1335 |
|
1336 // Write KWlanTxFailThreshold |
|
1337 err = repository->Set( |
|
1338 KWlanTxFailThreshold, |
|
1339 static_cast<TInt>( aSettings.txFailThreshold ) ); |
|
1340 if( err ) |
|
1341 { |
|
1342 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanTxFailThreshold ); |
|
1343 } |
|
1344 |
|
1345 // Write KWlanBtTxFailThreshold |
|
1346 err = repository->Set( |
|
1347 KWlanBtTxFailThreshold, |
|
1348 static_cast<TInt>( aSettings.btTxFailThreshold ) ); |
|
1349 if( err ) |
|
1350 { |
|
1351 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBtTxFailThreshold ); |
|
1352 } |
|
1353 |
|
1354 // Write KWlanPowerSaveDelay |
|
1355 err = repository->Set( |
|
1356 KWlanPowerSaveDelay, |
|
1357 static_cast<TInt>( aSettings.powerSaveDelay ) ); |
|
1358 if( err ) |
|
1359 { |
|
1360 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPowerSaveDelay ); |
|
1361 } |
|
1362 |
|
1363 // Write KWlanRrmMinMeasurementInterval |
|
1364 err = repository->Set( |
|
1365 KWlanRrmMinMeasurementInterval, |
|
1366 static_cast<TInt>( aSettings.rrmMinMeasurementInterval ) ); |
|
1367 if( err ) |
|
1368 { |
|
1369 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRrmMinMeasurementInterval ); |
|
1370 } |
|
1371 |
|
1372 // Write KWlanPsmSrvMode |
|
1373 err = repository->Set( |
|
1374 KWlanPsmSrvMode, |
|
1375 static_cast<TInt>( aSettings.psmServerMode ) ); |
|
1376 if( err ) |
|
1377 { |
|
1378 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanPsmSrvMode ); |
|
1379 } |
|
1380 |
|
1381 // Write KWlanBgScanPeakPeriodStart |
|
1382 err = repository->Set( |
|
1383 KWlanBgScanPeakPeriodStart, |
|
1384 static_cast<TInt>( aSettings.bgScanPeakPeriodStart ) ); |
|
1385 if( err ) |
|
1386 { |
|
1387 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBgScanPeakPeriodStart ); |
|
1388 } |
|
1389 |
|
1390 // Write KWlanBgScanPeakPeriodEnd |
|
1391 err = repository->Set( |
|
1392 KWlanBgScanPeakPeriodEnd, |
|
1393 static_cast<TInt>( aSettings.bgScanPeakPeriodEnd ) ); |
|
1394 if( err ) |
|
1395 { |
|
1396 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBgScanPeakPeriodEnd ); |
|
1397 } |
|
1398 |
|
1399 // Write KWlanBgScanIntervalPeakPeriod |
|
1400 err = repository->Set( |
|
1401 KWlanBgScanIntervalPeakPeriod, |
|
1402 static_cast<TInt>( aSettings.bgScanIntervalPeak ) ); |
|
1403 if( err ) |
|
1404 { |
|
1405 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBgScanIntervalPeakPeriod ); |
|
1406 } |
|
1407 |
|
1408 // Write KWlanBgScanIntervalOffPeakPeriod |
|
1409 err = repository->Set( |
|
1410 KWlanBgScanIntervalOffPeakPeriod, |
|
1411 static_cast<TInt>( aSettings.bgScanIntervalOffPeak ) ); |
|
1412 if( err ) |
|
1413 { |
|
1414 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanBgScanIntervalOffPeakPeriod ); |
|
1415 } |
|
1416 |
|
1417 // Write KWlanAutomaticTrafficStreamMgmt |
|
1418 err = repository->Set( |
|
1419 KWlanAutomaticTrafficStreamMgmt, |
|
1420 static_cast<TInt>( aSettings.automaticTrafficStreamMgmt ) ); |
|
1421 if( err ) |
|
1422 { |
|
1423 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanAutomaticTrafficStreamMgmt ); |
|
1424 } |
|
1425 |
|
1426 // Write KWlanRegion |
|
1427 err = repository->Set( |
|
1428 KWlanRegion, |
|
1429 static_cast<TInt>( aSettings.region ) ); |
|
1430 if( err ) |
|
1431 { |
|
1432 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRegion ); |
|
1433 } |
|
1434 |
|
1435 // Write KWlanRegionTimestamp |
|
1436 err = repository->Set( |
|
1437 KWlanRegionTimestamp, |
|
1438 static_cast<TInt>( aSettings.regionTimestamp ) ); |
|
1439 if( err ) |
|
1440 { |
|
1441 DEBUG1( "CWlanDeviceSettings::WritePrivateData() - could not set key 0x%X", KWlanRegionTimestamp ); |
|
1442 } |
|
1443 |
|
1444 // Cleanup |
|
1445 delete repository; |
|
1446 |
|
1447 DEBUG( "CWlanDeviceSettings::WritePrivateData() - done" ); |
|
1448 return KErrNone; |
|
1449 } |
|
1450 |
|
1451 // --------------------------------------------------------- |
|
1452 // CWlanDeviceSettings::CheckWlanDeviceSettingsTableL |
|
1453 // --------------------------------------------------------- |
|
1454 // |
|
1455 void CWlanDeviceSettings::CheckWlanDeviceSettingsTableL() |
|
1456 { |
|
1457 DEBUG( "CWlanDeviceSettings::CheckWlanDeviceSettingsTableL()" ); |
|
1458 |
|
1459 User::LeaveIfNull( iDb ); |
|
1460 |
|
1461 CCommsDbTableView* view; |
|
1462 |
|
1463 // Open view to table where version field matches the current value |
|
1464 view = iDb->OpenViewMatchingUintLC( |
|
1465 KWlanDeviceSettings(), |
|
1466 KTableVersion, |
|
1467 KWlanDeviceSettingsTableVersion ); |
|
1468 |
|
1469 // Check if there's at least one row in the view |
|
1470 User::LeaveIfError( view->GotoFirstRecord() ); |
|
1471 |
|
1472 CleanupStack::PopAndDestroy(view); |
|
1473 } |
|
1474 |
|
1475 // --------------------------------------------------------- |
|
1476 // CWlanDeviceSettings::OpenTableL |
|
1477 // --------------------------------------------------------- |
|
1478 // |
|
1479 void CWlanDeviceSettings::OpenTableL() |
|
1480 { |
|
1481 DEBUG( "CWlanDeviceSettings::OpenTableL()" ); |
|
1482 |
|
1483 User::LeaveIfNull( iDb ); |
|
1484 |
|
1485 // Open default settings. |
|
1486 iDefTable = iDb->OpenViewMatchingUintLC( KWlanDeviceSettings, |
|
1487 KWlanDeviceSettingsType, |
|
1488 KWlanDefaultSettings ); |
|
1489 |
|
1490 CleanupStack::Pop(iDefTable); |
|
1491 |
|
1492 if ( iDefTable->GotoFirstRecord() != KErrNone ) |
|
1493 { |
|
1494 NewRecordL( KWlanDefaultSettings ); |
|
1495 User::LeaveIfError( iDefTable->GotoFirstRecord() ); |
|
1496 } |
|
1497 |
|
1498 // Open user settings. |
|
1499 iUsrTable = iDb->OpenViewMatchingUintLC( KWlanDeviceSettings, |
|
1500 KWlanDeviceSettingsType, |
|
1501 KWlanUserSettings ); |
|
1502 |
|
1503 CleanupStack::Pop(iUsrTable); |
|
1504 |
|
1505 if ( iUsrTable->GotoFirstRecord() != KErrNone ) |
|
1506 { |
|
1507 NewRecordL( KWlanUserSettings ); |
|
1508 User::LeaveIfError( iUsrTable->GotoFirstRecord() ); |
|
1509 } |
|
1510 } |
|
1511 |
|
1512 // --------------------------------------------------------- |
|
1513 // CWlanDeviceSettings::NewRecordL |
|
1514 // --------------------------------------------------------- |
|
1515 // |
|
1516 void CWlanDeviceSettings::NewRecordL( TUint32 aTableType ) |
|
1517 { |
|
1518 DEBUG1( "CWlanDeviceSettings::NewRecordL() Type=%d", aTableType ); |
|
1519 |
|
1520 CCommsDbTableView* table; |
|
1521 if ( aTableType == KWlanDefaultSettings ) |
|
1522 { |
|
1523 table = iDefTable; |
|
1524 } |
|
1525 else |
|
1526 { |
|
1527 table = iUsrTable; |
|
1528 } |
|
1529 |
|
1530 TUint32 id; |
|
1531 User::LeaveIfError( table->InsertRecord( id ) ); |
|
1532 |
|
1533 SWlanDeviceSettings settings; |
|
1534 GetDefaultSettings( settings ); |
|
1535 |
|
1536 table->WriteUintL( KWlanDeviceSettingsType, aTableType ); |
|
1537 table->WriteUintL( KTableVersion, KWlanDeviceSettingsTableVersion ); |
|
1538 table->WriteUintL( KBgScanInterval, settings.backgroundScanInterval ); |
|
1539 table->WriteBoolL( KUseDefaultSettings, settings.useDefaultSettings ); |
|
1540 table->WriteUintL( KWlanLongRetry, settings.longRetry ); |
|
1541 table->WriteUintL( KWlanShortRetry, settings.shortRetry ); |
|
1542 table->WriteUintL( KWlanRTSThreshold, settings.rts ); |
|
1543 table->WriteUintL( KWlanTxPowerLevel, settings.txPowerLevel ); |
|
1544 table->WriteBoolL( KWlanAllowRadioMeasurements, settings.allowRadioMeasurements ); |
|
1545 table->WriteUintL( KWlanPowerMode, settings.powerMode ); |
|
1546 |
|
1547 User::LeaveIfError( table->PutRecordChanges() ); |
|
1548 } |
|
1549 |
|
1550 #ifdef _DEBUG |
|
1551 // --------------------------------------------------------- |
|
1552 // CWlanDeviceSettings::LogSettings |
|
1553 // --------------------------------------------------------- |
|
1554 // |
|
1555 void CWlanDeviceSettings::LogSettings( const SWlanDeviceSettings& aSettings ) const |
|
1556 { |
|
1557 DEBUG1( "CWlanDeviceSettings::LogSettings() - beacon == %u", |
|
1558 aSettings.beacon ); |
|
1559 DEBUG1( "CWlanDeviceSettings::LogSettings() - longRetry == %u", |
|
1560 aSettings.longRetry ); |
|
1561 DEBUG1( "CWlanDeviceSettings::LogSettings() - rts == %u", |
|
1562 aSettings.rts ); |
|
1563 DEBUG1( "CWlanDeviceSettings::LogSettings() - shortRetry == %u", |
|
1564 aSettings.shortRetry ); |
|
1565 DEBUG1( "CWlanDeviceSettings::LogSettings() - backgroundScanInterval == %u", |
|
1566 aSettings.backgroundScanInterval ); |
|
1567 DEBUG1( "CWlanDeviceSettings::LogSettings() - txPowerLevel == %u", |
|
1568 aSettings.txPowerLevel ); |
|
1569 DEBUG1( "CWlanDeviceSettings::LogSettings() - scanRate == %u", |
|
1570 static_cast<TUint32>( aSettings.scanRate ) ); |
|
1571 DEBUG1( "CWlanDeviceSettings::LogSettings() - rpciTrigger == %u", |
|
1572 aSettings.rcpiTrigger ); |
|
1573 DEBUG1( "CWlanDeviceSettings::LogSettings() - minActiveChannelTime == %u", |
|
1574 aSettings.minActiveChannelTime ); |
|
1575 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxActiveChannelTime == %u", |
|
1576 aSettings.maxActiveChannelTime ); |
|
1577 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxTxMSDULifeTime == %u", |
|
1578 aSettings.maxTxMSDULifeTime ); |
|
1579 DEBUG1( "CWlanDeviceSettings::LogSettings() - useDefaultSettings == %u", |
|
1580 aSettings.useDefaultSettings ); |
|
1581 DEBUG1( "CWlanDeviceSettings::LogSettings() - scanExpirationTimer == %u", |
|
1582 aSettings.scanExpirationTimer ); |
|
1583 DEBUG1( "CWlanDeviceSettings::LogSettings() - unloadDriverTimer == %u", |
|
1584 aSettings.unloadDriverTimer ); |
|
1585 DEBUG1( "CWlanDeviceSettings::LogSettings() - roamTimer == %u", |
|
1586 aSettings.roamTimer ); |
|
1587 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiDifference == %u", |
|
1588 aSettings.rcpiDifference ); |
|
1589 DEBUG1( "CWlanDeviceSettings::LogSettings() - connRegainTimer == %u", |
|
1590 aSettings.connRegainTimer ); |
|
1591 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxTriesToFindNw == %u", |
|
1592 aSettings.maxTriesToFindNw ); |
|
1593 DEBUG1( "CWlanDeviceSettings::LogSettings() - delayBetweenFindNw == %u", |
|
1594 aSettings.delayBetweenFindNw ); |
|
1595 DEBUG1( "CWlanDeviceSettings::LogSettings() - wlanPowerMode == %u", |
|
1596 aSettings.powerMode ); |
|
1597 DEBUG1( "CWlanDeviceSettings::LogSettings() - allowRadioMeasurements == %u", |
|
1598 aSettings.allowRadioMeasurements ); |
|
1599 DEBUG1( "CWlanDeviceSettings::LogSettings() - minPassiveChannelTime == %u", |
|
1600 aSettings.minPassiveChannelTime ); |
|
1601 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxPassiveChannelTime == %u", |
|
1602 aSettings.maxPassiveChannelTime ); |
|
1603 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxApFailureCount == %u", |
|
1604 aSettings.maxApFailureCount ); |
|
1605 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxApAuthFailureCount == %u", |
|
1606 aSettings.maxApAuthFailureCount ); |
|
1607 DEBUG1( "CWlanDeviceSettings::LogSettings() - longBeaconFindCount == %u", |
|
1608 aSettings.longBeaconFindCount ); |
|
1609 DEBUG1( "CWlanDeviceSettings::LogSettings() - qosNullFrameInterval == %u", |
|
1610 aSettings.qosNullFrameInterval ); |
|
1611 DEBUG1( "CWlanDeviceSettings::LogSettings() - qosNullFrameTimeout == %u", |
|
1612 aSettings.qosNullFrameTimeout ); |
|
1613 DEBUG1( "CWlanDeviceSettings::LogSettings() - keepAliveInterval == %u", |
|
1614 aSettings.keepAliveInterval ); |
|
1615 DEBUG1( "CWlanDeviceSettings::LogSettings() - scanStopRcpiThreshold == %u", |
|
1616 aSettings.scanStopRcpiThreshold ); |
|
1617 DEBUG1( "CWlanDeviceSettings::LogSettings() - minRcpiForIapAvailability == %u", |
|
1618 aSettings.minRcpiForIapAvailability ); |
|
1619 DEBUG1( "CWlanDeviceSettings::LogSettings() - qosNullFrameEntryTimeout == %u", |
|
1620 aSettings.qosNullFrameEntryTimeout ); |
|
1621 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxApDeauthenticationCount == %u", |
|
1622 aSettings.maxApDeauthenticationCount ); |
|
1623 DEBUG1( "CWlanDeviceSettings::LogSettings() - apDeauthenticationTimeout == %u", |
|
1624 aSettings.apDeauthenticationTimeout ); |
|
1625 DEBUG1( "CWlanDeviceSettings::LogSettings() - showBrokenPowerSaveNote == %u", |
|
1626 static_cast<TUint32>( aSettings.showBrokenPowerSaveNote ) ); |
|
1627 DEBUG1( "CWlanDeviceSettings::LogSettings() - maxDtimSkipInterval == %u", |
|
1628 aSettings.maxDtimSkipInterval ); |
|
1629 DEBUG1( "CWlanDeviceSettings::LogSettings() - psActiveToLightTimeout == %u", |
|
1630 aSettings.psActiveToLightTimeout ); |
|
1631 DEBUG1( "CWlanDeviceSettings::LogSettings() - psActiveToLightThreshold == %u", |
|
1632 aSettings.psActiveToLightThreshold ); |
|
1633 DEBUG1( "CWlanDeviceSettings::LogSettings() - psLightToActiveTimeout == %u", |
|
1634 aSettings.psLightToActiveTimeout ); |
|
1635 DEBUG1( "CWlanDeviceSettings::LogSettings() - psLightToActiveThreshold == %u", |
|
1636 aSettings.psLightToActiveThreshold ); |
|
1637 DEBUG1( "CWlanDeviceSettings::LogSettings() - psLightToDeepTimeout == %u", |
|
1638 aSettings.psLightToDeepTimeout ); |
|
1639 DEBUG1( "CWlanDeviceSettings::LogSettings() - psLightToDeepThreshold == %u", |
|
1640 aSettings.psLightToDeepThreshold ); |
|
1641 DEBUG1( "CWlanDeviceSettings::LogSettings() - psUapsdRxThreshold == %u", |
|
1642 aSettings.psUapsdRxThreshold ); |
|
1643 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiRoamMinInterval == %u", |
|
1644 aSettings.rcpiRoamMinInterval ); |
|
1645 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiRoamMaxInterval == %u", |
|
1646 aSettings.rcpiRoamMaxInterval ); |
|
1647 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiRoamAttemptsPerInterval == %u", |
|
1648 aSettings.rcpiRoamAttemptsPerInterval ); |
|
1649 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiRoamNextIntervalFactor == %u", |
|
1650 aSettings.rcpiRoamNextIntervalFactor ); |
|
1651 DEBUG1( "CWlanDeviceSettings::LogSettings() - rcpiRoamNextIntervalAddition == %u", |
|
1652 aSettings.rcpiRoamNextIntervalAddition ); |
|
1653 DEBUG1( "CWlanDeviceSettings::LogSettings() - scanListExpirationTime == %u", |
|
1654 aSettings.scanListExpirationTime ); |
|
1655 DEBUG1( "CWlanDeviceSettings::LogSettings() - qosNullFrameEntryTxCount == %u", |
|
1656 aSettings.qosNullFrameEntryTxCount ); |
|
1657 DEBUG1( "CWlanDeviceSettings::LogSettings() - spRcpiTarget == %u", |
|
1658 aSettings.spRcpiTarget ); |
|
1659 DEBUG1( "CWlanDeviceSettings::LogSettings() - spTimeTarget == %u", |
|
1660 aSettings.spTimeTarget ); |
|
1661 DEBUG1( "CWlanDeviceSettings::LogSettings() - spMinIndicationInterval == %u", |
|
1662 aSettings.spMinIndicationInterval ); |
|
1663 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamMinInterval == %u", |
|
1664 aSettings.bssLostRoamMinInterval ); |
|
1665 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamMaxInterval == %u", |
|
1666 aSettings.bssLostRoamMaxInterval ); |
|
1667 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamAttemptsPerInterval == %u", |
|
1668 aSettings.bssLostRoamAttemptsPerInterval ); |
|
1669 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamNextIntervalFactor == %u", |
|
1670 aSettings.bssLostRoamNextIntervalFactor ); |
|
1671 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamNextIntervalAddition == %u", |
|
1672 aSettings.bssLostRoamNextIntervalAddition ); |
|
1673 DEBUG1( "CWlanDeviceSettings::LogSettings() - bssLostRoamMaxTriesToFindNw == %u", |
|
1674 aSettings.bssLostRoamMaxTriesToFindNw ); |
|
1675 DEBUG1( "CWlanDeviceSettings::LogSettings() - trafficStreamCreationTimeout == %u", |
|
1676 aSettings.trafficStreamCreationTimeout ); |
|
1677 DEBUG1( "CWlanDeviceSettings::LogSettings() - beaconLostThreshold == %u", |
|
1678 aSettings.beaconLostThreshold ); |
|
1679 DEBUG1( "CWlanDeviceSettings::LogSettings() - btBeaconLostThreshold == %u", |
|
1680 aSettings.btBeaconLostThreshold ); |
|
1681 DEBUG1( "CWlanDeviceSettings::LogSettings() - txFailThreshold == %u", |
|
1682 aSettings.txFailThreshold ); |
|
1683 DEBUG1( "CWlanDeviceSettings::LogSettings() - btTxFailThreshold == %u", |
|
1684 aSettings.btTxFailThreshold ); |
|
1685 DEBUG1( "CWlanDeviceSettings::LogSettings() - powerSaveDelay == %u", |
|
1686 aSettings.powerSaveDelay ); |
|
1687 DEBUG1( "CWlanDeviceSettings::LogSettings() - rrmMinMeasurementInterval == %u", |
|
1688 aSettings.rrmMinMeasurementInterval ); |
|
1689 DEBUG1( "CWlanDeviceSettings::LogSettings() - psmServerMode == %d", |
|
1690 aSettings.psmServerMode ); |
|
1691 DEBUG1( "CWlanDeviceSettings::LogSettings() - bgScanPeakPeriodStart == %d", |
|
1692 aSettings.bgScanPeakPeriodStart ); |
|
1693 DEBUG1( "CWlanDeviceSettings::LogSettings() - bgScanPeakPeriodEnd == %d", |
|
1694 aSettings.bgScanPeakPeriodEnd ); |
|
1695 DEBUG1( "CWlanDeviceSettings::LogSettings() - bgScanIntervalPeak == %d", |
|
1696 aSettings.bgScanIntervalPeak ); |
|
1697 DEBUG1( "CWlanDeviceSettings::LogSettings() - bgScanIntervalOffPeak == %d", |
|
1698 aSettings.bgScanIntervalOffPeak ); |
|
1699 DEBUG1( "CWlanDeviceSettings::LogSettings() - automaticTrafficStreamMgmt == %u", |
|
1700 static_cast<TUint32>( aSettings.automaticTrafficStreamMgmt ) ); |
|
1701 DEBUG1( "CWlanDeviceSettings::LogSettings() - region == %u", |
|
1702 aSettings.region ); |
|
1703 DEBUG1( "CWlanDeviceSettings::LogSettings() - regionTimestamp == %d", |
|
1704 aSettings.regionTimestamp ); |
|
1705 } |
|
1706 #endif // _DEBUG |
|
1707 |
|
1708 // ================= OTHER EXPORTED FUNCTIONS ============== |
|
1709 |
|
1710 // End of File |