cmmanager/cmmgr/Plugins/cmpluginvpn/src/cmpluginvpn.cpp
changeset 3 f7816ffc66ed
parent 0 5a93021fdf25
child 4 77415202bfc8
equal deleted inserted replaced
2:086aae6fc07e 3:f7816ffc66ed
    34 #include <SettingsInternalCRKeys.h>
    34 #include <SettingsInternalCRKeys.h>
    35 #include <featmgr.h>
    35 #include <featmgr.h>
    36 #include <ConeResLoader.h>
    36 #include <ConeResLoader.h>
    37 #include <bautils.h>
    37 #include <bautils.h>
    38 
    38 
       
    39 #include <commsdattypesv1_1_partner.h>
       
    40 #include <commsdattypeinfov1_1_internal.h>
       
    41 
    39 #include "cmlogger.h"
    42 #include "cmlogger.h"
    40 #include "cmmanagerimpl.h"
    43 #include "cmmanagerimpl.h"
    41 #include "cmdestinationimpl.h"
    44 #include "cmdestinationimpl.h"
    42 #include "cmvpncommonconstants.h"
    45 #include "cmvpncommonconstants.h"
    43 #include <cmcommonconstants.h>
    46 #include <cmcommonconstants.h>
   461                 User::Leave( KErrNotSupported );
   464                 User::Leave( KErrNotSupported );
   462                 }
   465                 }
   463             
   466             
   464             ServiceRecord().iServiceIAP = aValue;
   467             ServiceRecord().iServiceIAP = aValue;
   465             ServiceRecord().iServiceNetwork = 0;
   468             ServiceRecord().iServiceNetwork = 0;
       
   469             ServiceRecord().iServiceSNAP = 0;
   466             iVirtualRecord->iNextLayerIAP = aValue;
   470             iVirtualRecord->iNextLayerIAP = aValue;
   467             iVirtualRecord->iNextLayerSNAP = 0;            
   471             iVirtualRecord->iNextLayerSNAP = 0;            
   468             }
   472             }
   469             break;
   473             break;
   470 
   474 
   479                 User::Leave( KErrNotSupported );
   483                 User::Leave( KErrNotSupported );
   480                 }
   484                 }
   481 
   485 
   482             TInt destinationId( 0 );
   486             TInt destinationId( 0 );
   483             destinationId = CheckValidityAndConvertDestinationIdL( aValue );
   487             destinationId = CheckValidityAndConvertDestinationIdL( aValue );
   484             
   488             TMDBElementId defaultAP = DefaultAPRecordL();
   485             ServiceRecord().iServiceIAP = 0;          
   489             
   486             ServiceRecord().iServiceNetwork = destinationId - KCmDefaultDestinationAPTagId;
   490             ServiceRecord().iServiceIAP = 0;
       
   491             ServiceRecord().iServiceNetwork = 0;
       
   492             ServiceRecord().iServiceSNAP = defaultAP;
   487             iVirtualRecord->iNextLayerIAP = 0;
   493             iVirtualRecord->iNextLayerIAP = 0;
   488             iVirtualRecord->iNextLayerSNAP = destinationId;       
   494             iVirtualRecord->iNextLayerSNAP = destinationId;
   489             }
   495             }
   490             break;
   496             break;
   491 
   497 
   492         case ECmSeamlessnessLevel:
   498         case ECmSeamlessnessLevel:
   493         case ECmProxyPortNumber:
   499         case ECmProxyPortNumber:
   896 
   902 
   897     CLOG_WRITE("New service record, policy emptied");
   903     CLOG_WRITE("New service record, policy emptied");
   898     ServiceRecord().iServicePolicy.SetL( KNullDesC );
   904     ServiceRecord().iServicePolicy.SetL( KNullDesC );
   899     ServiceRecord().iServiceIAP = 0;
   905     ServiceRecord().iServiceIAP = 0;
   900     ServiceRecord().iServiceNetwork = 0;
   906     ServiceRecord().iServiceNetwork = 0;
       
   907     ServiceRecord().iServiceSNAP = 0;
   901 
   908 
   902     
   909     
   903     iProxyRecord->iPortNumber = KVpnProxyPortNumberDefault;
   910     iProxyRecord->iPortNumber = KVpnProxyPortNumberDefault;
   904 
   911 
   905     SetIntAttributeL( ECmSeamlessnessLevel, ESeamlessnessShowprogress );
   912     SetIntAttributeL( ECmSeamlessnessLevel, ESeamlessnessShowprogress );
  2045          }
  2052          }
  2046     
  2053     
  2047     return id;
  2054     return id;
  2048     }
  2055     }
  2049 
  2056 
       
  2057 // --------------------------------------------------------------------------
       
  2058 // CCmPluginVpn::DefaultAPRecordL
       
  2059 // --------------------------------------------------------------------------
       
  2060 //
       
  2061 const TMDBElementId CCmPluginVpn::DefaultAPRecordL( const TInt aTierIdentifier )
       
  2062     {
       
  2063     LOGGER_ENTERFN( "CCmPluginVpn::DefaultAPRecordL" );
       
  2064     // Resolve the Default SNAP AP elementid 
       
  2065     //
       
  2066     CCDTierRecord* tierRecord = static_cast<CCDTierRecord *>(
       
  2067             CCDRecordBase::RecordFactoryL( KCDTIdTierRecord ) );
       
  2068     
       
  2069     CleanupStack::PushL( tierRecord );
       
  2070 
       
  2071     // Find the correct tier table based on given identifier.
       
  2072     //
       
  2073     tierRecord->iRecordTag = aTierIdentifier;
       
  2074     if ( !tierRecord->FindL( Session() ) )
       
  2075         {
       
  2076         User::Leave( KErrCorrupt );
       
  2077         }
       
  2078     
       
  2079     // Find out the default AP for IP connections.
       
  2080     //
       
  2081     TMDBElementId defaultAP = tierRecord->iDefaultAccessPoint;
       
  2082 
       
  2083     // Cleanup tier record.
       
  2084     //
       
  2085     CleanupStack::PopAndDestroy( tierRecord );
       
  2086         
       
  2087     return defaultAP;
       
  2088     }
       
  2089 
  2050 // eof
  2090 // eof