134 aIAPName.Zero(); |
134 aIAPName.Zero(); |
135 aIAPName.Copy(iDefaultIAPName); |
135 aIAPName.Copy(iDefaultIAPName); |
136 aTls = ETrue; |
136 aTls = ETrue; |
137 aPskTls = EFalse; |
137 aPskTls = EFalse; |
138 aIsIapDialogShown = ETrue; |
138 aIsIapDialogShown = ETrue; |
|
139 |
|
140 CServerParams* param = CServerParams::NewL(); |
|
141 CleanupStack::PushL(param); |
|
142 |
|
143 //Find out if this alternative generated SUPL server is in the SUPL Settings list |
|
144 TInt err = iSuplSettings.GetSlpInfoAddress(iGenratedHslpAddress, param); |
|
145 if(err == KErrNotFound) |
|
146 { |
|
147 //Server does not exist |
|
148 iTrace->Trace(_L("Server does not exist in list so adding it in."),KTraceFileName, __LINE__); |
|
149 CServerParams* newParam=CServerParams::NewL(); |
|
150 CleanupStack::PushL(newParam); |
|
151 User::LeaveIfError(newParam->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); |
|
152 |
|
153 err = iSuplSettings.AddNewServer( newParam, aSLPId ); //Ignore error |
|
154 LogBuffer.Copy(_L("AddNewServer() completed with err: ")); |
|
155 LogBuffer.AppendNum(err); |
|
156 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
|
157 |
|
158 CleanupStack::PopAndDestroy(&newParam); |
|
159 } |
|
160 else |
|
161 { |
|
162 //Server exists, get the SLP ID and the IAP Access point for this server |
|
163 HBufC* hslpAddress = HBufC::NewL(KHSLPAddressLength); |
|
164 HBufC* iapName = HBufC::NewL(KMaxIapNameLength); |
|
165 TBool serverEnabled; |
|
166 TBool simChangeRemove; |
|
167 TBool usageInHomeNw; |
|
168 TBool editable; |
|
169 |
|
170 iTrace->Trace(_L("Server already exists, getting the SLP ID and Access Point."),KTraceFileName, __LINE__); |
|
171 |
|
172 param->Get(aSLPId,hslpAddress->Des(),iapName->Des(),serverEnabled,simChangeRemove,usageInHomeNw,editable); |
|
173 aIAPName.Copy(iapName->Des()); |
|
174 |
|
175 delete hslpAddress; |
|
176 delete iapName; |
|
177 } |
|
178 |
|
179 CleanupStack::PopAndDestroy(¶m); |
139 |
180 |
140 iTrace->Trace(_L("Fallback allowed & TLSAuth failed"),KTraceFileName, __LINE__); |
181 iTrace->Trace(_L("Fallback allowed & TLSAuth failed"),KTraceFileName, __LINE__); |
141 iTrace->Trace(_L("Server being used:"),KTraceFileName, __LINE__); |
182 iTrace->Trace(_L("Server being used:"),KTraceFileName, __LINE__); |
142 LogBuffer.Copy(aHslpToBeUsedAddress); |
183 LogBuffer.Copy(aHslpToBeUsedAddress); |
143 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
184 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
190 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
231 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
191 |
232 |
192 iTrace->Trace(_L("iap being used:"),KTraceFileName, __LINE__); |
233 iTrace->Trace(_L("iap being used:"),KTraceFileName, __LINE__); |
193 LogBuffer.Copy(aIAPName); |
234 LogBuffer.Copy(aIAPName); |
194 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
235 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
|
236 |
|
237 //Add the server to the list for future connections |
|
238 CServerParams* param=CServerParams::NewL(); |
|
239 CleanupStack::PushL(param); |
|
240 User::LeaveIfError(param->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); |
|
241 |
|
242 TInt err = iSuplSettings.AddNewServer( param, aSLPId ); //Ignore error |
|
243 LogBuffer.Copy(_L("AddNewServer() completed with err: ")); |
|
244 LogBuffer.AppendNum(err); |
|
245 iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); |
|
246 |
|
247 CleanupStack::PopAndDestroy(¶m); |
195 |
248 |
196 return KErrNone; |
249 return KErrNone; |
197 } |
250 } |
198 |
251 |
199 if( iSLPList->Count() <= 0 || iCurrentServerCounter >= iSLPList->Count() ) |
252 if( iSLPList->Count() <= 0 || iCurrentServerCounter >= iSLPList->Count() ) |