vpnengine/ikev1lib/src/ikev1pluginsession.cpp
branchRCL_3
changeset 46 29c8f9bc68e1
parent 41 e06095241a65
child 49 5960d2d03390
--- a/vpnengine/ikev1lib/src/ikev1pluginsession.cpp	Tue Sep 14 23:16:15 2010 +0300
+++ b/vpnengine/ikev1lib/src/ikev1pluginsession.cpp	Wed Sep 15 13:20:54 2010 +0300
@@ -902,7 +902,7 @@
 //    
 TInt CIkev1PluginSession::AuthDialogCompletedL( CAuthDialogInfo* aUserInfo )
     {
-    CIkev1Negotiation* negotiation = FindNegotiation( aUserInfo->SAId() );
+    CIkev1Negotiation* negotiation = aUserInfo->iNegotiation;
     if ( negotiation )
         {
         DEBUG_LOG1( _L("Dialog completed for SAID: %d"),
@@ -920,6 +920,31 @@
     return KErrNotFound;
     }
 
+// ---------------------------------------------------------------------------
+// Handles completion of error dialog processing.
+// ---------------------------------------------------------------------------
+//    
+TInt CIkev1PluginSession::ErrDialogCompletedL( CAuthDialogInfo* aUserInfo )
+    {
+    
+    CIkev1Negotiation* negotiation = aUserInfo->iNegotiation;
+    if ( negotiation )
+        {
+        DEBUG_LOG1( _L("Dialog completed for SAID: %d"),
+                aUserInfo->SAId() );
+        
+        negotiation->ErrDialogCompletedL();
+        if ( negotiation->Finished() )
+            {
+            DeleteNegotiation( negotiation );
+            }   
+        return KErrNone;
+        }   
+    DEBUG_LOG1( _L("Dialog completed, no negotiation found for SAID: %d"),
+            aUserInfo->SAId() );
+            
+    return KErrNotFound;    
+    }
 
 // ---------------------------------------------------------------------------
 // Handles change of internal address.
@@ -1053,6 +1078,16 @@
 MKmdEventLoggerIf& CIkev1PluginSession::EventLogger()
     {
     return iPlugin.EventLogger();
+    }
+
+// ---------------------------------------------------------------------------
+// Returns SoftToken interface.
+// ---------------------------------------------------------------------------
+//
+//MSoftTokenPluginIf* CIkev1PluginSession::SoftToken()
+CSoftTokenPluginIf* CIkev1PluginSession::SoftToken()
+    {
+    return iPlugin.SoftToken();
     }      
 
 // ---------------------------------------------------------------------------