319 CleanupStack::PopAndDestroy(authenticationProcessData); |
319 CleanupStack::PopAndDestroy(authenticationProcessData); |
320 CleanupStack::PopAndDestroy(&dataBuf); |
320 CleanupStack::PopAndDestroy(&dataBuf); |
321 aMessage.Complete(err); |
321 aMessage.Complete(err); |
322 } |
322 } |
323 break; |
323 break; |
|
324 |
|
325 case ESmfCheckServiceAuthorization: |
|
326 { |
|
327 //create buffer to read |
|
328 HBufC* authAppId = HBufC::NewLC(aMessage.GetDesLength(0)); |
|
329 TPtr authAppIdPtr(authAppId->Des()); |
|
330 aMessage.ReadL(0, authAppIdPtr); |
|
331 |
|
332 TBool isAuthenticated = EFalse; |
|
333 iDbUser->checkServiceAuthenticationL(*authAppId, isAuthenticated); |
|
334 |
|
335 HBufC8* isAuthenticatedBuf8 = HBufC8::NewLC(4); |
|
336 TPtr8 isAuthenticatedBufPtr8(isAuthenticatedBuf8->Des()); |
|
337 isAuthenticatedBufPtr8.AppendNum(isAuthenticated); |
|
338 |
|
339 TInt err = aMessage.Write(1, isAuthenticatedBufPtr8); |
|
340 |
|
341 CleanupStack::PopAndDestroy(isAuthenticatedBuf8); |
|
342 CleanupStack::PopAndDestroy(authAppId); |
|
343 |
|
344 aMessage.Complete(err); |
|
345 } |
|
346 break; |
|
347 |
|
348 case EDeleteAuthData: |
|
349 { |
|
350 //create buffer to read the received data |
|
351 RBuf8 dataBuf; |
|
352 CleanupClosePushL(dataBuf); |
|
353 dataBuf.CreateL(aMessage.GetDesLength(0)); |
|
354 aMessage.ReadL(0, dataBuf); |
|
355 CSmfFetchAuthTokenSet* deleteAuthTokenParams = |
|
356 new (ELeave) CSmfFetchAuthTokenSet; |
|
357 |
|
358 CleanupStack::PushL(deleteAuthTokenParams); |
|
359 deleteAuthTokenParams->InternalizeL(dataBuf); |
|
360 |
|
361 //create buffer to read |
|
362 HBufC* authAppId = HBufC::NewLC(aMessage.GetDesLength(1)); |
|
363 TPtr authAppIdPtr(authAppId->Des()); |
|
364 aMessage.ReadL(1, authAppIdPtr); |
|
365 |
|
366 TBool deleted = EFalse; |
|
367 |
|
368 TBuf<KMaxBufSize> authAppIDBuf; |
|
369 iDbUser->readAuthAppIdInRegTokenTable(deleteAuthTokenParams->iRegistrationToken->Des(), |
|
370 authAppIDBuf); |
|
371 |
|
372 if(0 == authAppIdPtr.Compare(authAppIDBuf)) |
|
373 { |
|
374 deleted = deleteAuthAppInfoL(authAppIdPtr); |
|
375 } |
|
376 |
|
377 HBufC8* deletedBuf8 = HBufC8::NewLC(4); |
|
378 TPtr8 deletedBufPtr8(deletedBuf8->Des()); |
|
379 deletedBufPtr8.AppendNum(deleted); |
|
380 |
|
381 TInt err = aMessage.Write(2, deletedBufPtr8); |
|
382 |
|
383 CleanupStack::PopAndDestroy(deletedBuf8); |
|
384 CleanupStack::PopAndDestroy(authAppId); |
|
385 CleanupStack::PopAndDestroy(deleteAuthTokenParams); |
|
386 CleanupStack::PopAndDestroy(&dataBuf); |
|
387 |
|
388 aMessage.Complete(err); |
|
389 } |
|
390 break; |
324 |
391 |
325 case ESmfHMACSHA1SignMessage: |
392 case ESmfHMACSHA1SignMessage: |
326 case ESmfRSASignMessage: |
393 case ESmfRSASignMessage: |
327 case ESmfStoreRSAKey: |
394 case ESmfStoreRSAKey: |
328 case ESmfDeleteKeys: |
395 case ESmfDeleteKeys: |
329 { |
396 { |
330 iKeyStore->HandleMessageL(aMessage); |
397 iKeyStore->HandleMessageL(aMessage); |
331 } |
398 } |
332 break; |
399 break; |
|
400 |
333 default: |
401 default: |
334 //todo -panic client |
402 //todo -panic client |
335 break; |
403 break; |
336 } |
404 } |
337 } |
405 } |
404 TBuf<KMaxBufSize> authAppIDBuf; |
472 TBuf<KMaxBufSize> authAppIDBuf; |
405 iDbUser->readAuthAppIdInRegTokenTable(aParams->iRegistrationToken->Des(), |
473 iDbUser->readAuthAppIdInRegTokenTable(aParams->iRegistrationToken->Des(), |
406 authAppIDBuf); |
474 authAppIDBuf); |
407 iDbUser->readAuthTokensL(authAppIDBuf, aParams->iAuthTokenArray); |
475 iDbUser->readAuthTokensL(authAppIDBuf, aParams->iAuthTokenArray); |
408 } |
476 } |
|
477 |
|
478 bool CSmfCredMgrServerSession::deleteAuthAppInfoL( const TDesC& aAuthAppId ) |
|
479 { |
|
480 bool deleted = EFalse; |
|
481 deleted = iDbUser->deleteAuthDataSetL(aAuthAppId); |
|
482 deleted = iDbUser->deletePluginListL(aAuthAppId); |
|
483 deleted = iDbUser->deleteRegTokenValidityL(aAuthAppId); |
|
484 deleted = iDbUser->deleteURLListL(aAuthAppId); |
|
485 |
|
486 return deleted; |
|
487 } |