cmmanager/cmmgr/Framework/Src/cmpluginlanbase.cpp
changeset 20 9c97ad6591ae
parent 18 fcbbe021d614
child 21 b8e8e15e80f2
child 23 7ec726f93df1
child 28 860702281757
--- a/cmmanager/cmmgr/Framework/Src/cmpluginlanbase.cpp	Fri Apr 16 15:21:37 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,328 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Implementation of base for Lan Plugin interface 
-*                for Lan Bearer.
-*
-*/
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-#include <commsdat_partner.h>
-#endif
-#include <cmpluginlanbase.h>
-#include "cmlogger.h"
-#include <ecom/ecom.h>        // For REComSession
-#include <mcmdexec.h>
-#include <cmpbasesettingsdlg.h>
-#include "cmmanagerimpl.h"
-#include <cmmanager.rsg>
-#include <cmpsettingsconsts.h>
-
-using namespace CMManager;
-using namespace CommsDat;
-
-// default values for fields...
-// CONSTANTS
-_LIT( KEmpty, "");
-
-_LIT( KLanBearerName, "LANBearer" );
-_LIT( KLanBearerAgent, "lanagt.agt" );
-_LIT( KLanBearerNif, "lannif" );
-
-_LIT( KLanLDDName, "not used" );
-_LIT( KLanPDDName, "not used" );
-
-const TInt KLanLastSocketActivityTimeout = -1;
-const TInt KLanLastSocketClosedTimeout = -1;
-
-const TBool KDefIpAddrFromServer = ETrue;
-const TBool KDefIpDnsAddrFromServer = ETrue;
-const TBool KDefIp6DnsAddrFromServer = ETrue;
-
-static const TCmAttribConvTable SLanConvTbl[] = 
-    {
-    { ELanBaseIfNetworks, ELanBaseRangeMax, NULL },
-    { ELanBaseIfNetworks, KCDTIdLANIfNetworks, NULL },        
-    { ELanBaseIpNetMask, KCDTIdLANIpNetMask, &CheckIPv4ValidityL,
-      R_QTN_NETW_SETT_SUBNET_MASK,
-      KIpAddressWidth, EConvCompulsory | EConvIPv4, R_QTN_SELEC_SETTING_COMPULSORY, 0, NULL, NULL },
-    { ELanBaseIpGateway, KCDTIdLANIpGateway, &CheckIPv4ValidityL,
-      R_QTN_NETW_SETT_DEFAULT_GATEWAY,
-      KIpAddressWidth, EConvCompulsory | EConvIPv4, R_QTN_SELEC_SETTING_COMPULSORY, 0, NULL, NULL },
-    { ELanBaseIpAddrFromServer, KCDTIdLANIpAddrFromServer, NULL },
-    { ELanBaseIpAddr, KCDTIdLANIpAddr, &CheckIPv4ValidityL,
-      R_QTN_SET_IP_ADDRESS,
-      KIpAddressWidth, EConvIPv4, R_QTN_SET_IP_ADDRESS_DYNAMIC, 0, NULL, NULL },
-    { ELanBaseIpDNSAddrFromServer, KCDTIdLANIpDNSAddrFromServer, NULL,
-      R_QTN_SET_DNS_SERVERS_IP,
-      0, 0, 0, 0, NULL, NULL },
-    { ELanBaseIpNameServer1, KCDTIdLANIpNameServer1, &CheckIPv4ValidityL,
-      R_QTN_SET_PRIMARY_DNS,
-      KMaxIPv4NameServerLength, EConvIPv4, R_QTN_SET_DNS_SERVERS_AUTOMATIC, 0, NULL, NULL },
-    { ELanBaseIpNameServer2, KCDTIdLANIpNameServer2, &CheckIPv4ValidityL,
-      R_QTN_SET_SECONDARY_DNS,
-      KMaxIPv4NameServerLength, EConvIPv4, R_QTN_SET_DNS_SERVERS_AUTOMATIC, 0, NULL, NULL },    
-    { ELanBaseIp6DNSAddrFromServer, KCDTIdLANIp6DNSAddrFromServer, NULL,
-      R_QTN_SET_DNS_SERVERS_IP,
-      0, 0, 0, 0, NULL, NULL },
-    { ELanBaseIp6NameServer1, KCDTIdLANIp6NameServer1, &CheckIPv6ValidityL },
-    { ELanBaseIp6NameServer2, KCDTIdLANIp6NameServer2, &CheckIPv6ValidityL },
-    { ELanBaseIpAddrLeaseValidFrom, KCDTIdLANIpAddrLeaseValidFrom, NULL },
-    { ELanBaseIpAddrLeaseValidTo, KCDTIdLANIpAddrLeaseValidTo, NULL },
-    { ELanBaseConfigDaemonManagerName, KCDTIdLANConfigDaemonManagerName, NULL },
-    { ELanBaseConfigDaemonName, KCDTIdLANConfigDaemonName, NULL },
-    { ELanBaseServiceExtensionTableName, KCDTIdLANServiceExtensionTableName, NULL },
-    { ELanBaseServiceExtensionTableRecordId, KCDTIdLANServiceExtensionTableRecordId, &CheckRecordIdValidityL },
-    { 0,0, NULL }
-    };
-
-static const TCmCommonAttrConvArrayItem SCommonConvTbl[] =
-{
-    { ELanBaseIfNetworks, ECmIFNetworks },
-    { ELanBaseIpNetMask, ECmIPNetmask },
-    { ELanBaseIpGateway, ECmIPGateway },
-    { ELanBaseIpAddrFromServer, ECmIPAddFromServer },
-    { ELanBaseIpAddr, ECmIPAddress },
-    { ELanBaseIpDNSAddrFromServer, ECmIPDNSAddrFromServer },
-    { ELanBaseIpNameServer1, ECmIPNameServer1 },
-    { ELanBaseIpNameServer2, ECmIPNameServer2 },
-    { ELanBaseIp6DNSAddrFromServer, ECmIP6DNSAddrFromServer },
-    { ELanBaseIp6NameServer1, ECmIP6NameServer1 },
-    { ELanBaseIp6NameServer2, ECmIP6NameServer2 },
-    { ELanBaseIpAddrLeaseValidFrom, ECmIPAddrLeaseValidFrom },
-    { ELanBaseIpAddrLeaseValidTo, ECmIPAddrLeaseValidTo },
-    { ELanBaseConfigDaemonManagerName, ECmConfigDaemonManagerName },
-    { ELanBaseConfigDaemonName, ECmConfigDaemonName },
-    { 0, 0 }
-    };
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::CCmPluginLanBase()
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CCmPluginLanBase::CCmPluginLanBase( TCmPluginInitParam* aInitParam )
-    : CCmPluginBaseEng( aInitParam )
-    {
-    CLOG_CREATE;
-
-
-    }
-
-EXPORT_C CCmPluginLanBase::~CCmPluginLanBase()
-    {
-    CLOG_CLOSE;
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::ConstructL()
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CCmPluginLanBase::ConstructL()
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::ConstructL" );
-    
-    CCmPluginBaseEng::ConstructL();
-    
-    AddConverstionTableL( (CCDRecordBase**)&iServiceRecord, NULL, SLanConvTbl );
-	AddCommonConversionTableL( SCommonConvTbl );
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::RunSettingsL()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C TInt CCmPluginLanBase::RunSettingsL()
-    {
-    User::Leave( KErrNotSupported );
-    return 0;
-    }
-        
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::InitializeWithUiL()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C TBool CCmPluginLanBase::InitializeWithUiL( 
-                                            TBool /*aManuallyConfigure*/ )
-    {
-    User::Leave(KErrNotSupported);
-    return ETrue;
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::LoadServiceSettingL()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C void CCmPluginLanBase::LoadServiceSettingL()
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::LoadServiceSettingL" );
-    
-    if( TPtrC(KCDTypeNameLANService) == iIapRecord->iServiceType  )
-        {
-        iServiceRecord = static_cast<CCDLANServiceRecord *>
-                    (CCDRecordBase::RecordFactoryL(KCDTIdLANServiceRecord));
-        }
-    else
-        // this IAP service is not supported by this plugin.
-        {
-        User::Leave( KErrNotSupported );
-        }
-
-    CCmPluginBaseEng::LoadServiceSettingL();
-    }
-    
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::ServiceRecord()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C CCDLANServiceRecord& CCmPluginLanBase::ServiceRecord()const
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::ServiceRecord" );
-    return *static_cast<CCDLANServiceRecord*>(iServiceRecord);
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::ServiceRecordIdLC
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CCmPluginLanBase::ServiceRecordIdLC( HBufC* &aName, 
-                                                   TUint32& aRecordId )
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::ServiceRecordIdLC" );
-
-    aName = TPtrC( KCDTypeNameLANService ).AllocLC();    
-    aRecordId = iServiceRecord->RecordId();
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::BearerRecordIdLC()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C void CCmPluginLanBase::BearerRecordIdLC( HBufC* &aBearerName, 
-                                                  TUint32& aRecordId )
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::BearerRecordIdLC" );
-                
-    CCDLANBearerRecord* tmprec = static_cast<CCDLANBearerRecord*>
-                        (CCDRecordBase::RecordFactoryL( KCDTIdLANBearerRecord ));
-    CleanupStack::PushL( tmprec );
-
-    tmprec->iRecordName.SetL( TPtrC(iBearerRecName) );
-    if ( !tmprec->FindL( Session() ) )
-        { // bearer not found -> create dummy values
-        CLOG_WRITE( "No bearer found" );
-
-        tmprec->SetRecordId( KCDNewRecordRequest );
-        tmprec->iBearerAgent = KLanBearerAgent;
-        tmprec->iRecordName = KLanBearerName;
-        tmprec->iLanBearerNifName = KLanBearerNif;
-        tmprec->iLanBearerLddName = KLanLDDName;
-        tmprec->iLanBearerPddName = KLanPDDName;
-        tmprec->iLastSocketActivityTimeout = 
-                                        (TUint32)KLanLastSocketActivityTimeout;
-        tmprec->iLastSocketClosedTimeout = 
-                                        (TUint32)KLanLastSocketClosedTimeout;
-
-        tmprec->StoreL( Session() );
-        }
-
-    aRecordId = tmprec->RecordId();
-    
-    CLOG_WRITE_2( "Name: [%S], id: [%d]", 
-                  &tmprec->iRecordName.GetL(), 
-                  aRecordId );
-
-    CleanupStack::PopAndDestroy( tmprec );
-
-    aBearerName = TPtrC(KCDTypeNameLANBearer).AllocLC();    
-    }
-
-// ---------------------------------------------------------------------------
-// CCmPluginLanBase::CreateNewServiceRecordL()
-// ---------------------------------------------------------------------------
-//        
-EXPORT_C void CCmPluginLanBase::CreateNewServiceRecordL()
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::CreateNewServiceRecordL" );
-
-    delete iServiceRecord; 
-    iServiceRecord = NULL;
-    
-    iServiceRecord = static_cast<CCDServiceRecordBase *>
-                (CCDRecordBase::RecordFactoryL(KCDTIdLANServiceRecord));
-
-    // I do not think that we have to use the default record,
-    // but for compatibility with ApEngine, we write all fields 
-
-    CCDLANServiceRecord* record = 
-                            static_cast<CCDLANServiceRecord *>(iServiceRecord);
-
-
-    if( FeatureSupported( KFeatureIdIPv6 ) )
-        {
-        record->iIfNetworks.SetL( KDefIspIfNetworksIPv4IPv6LAN );
-        }
-    else
-        {
-        record->iIfNetworks.SetL( KDefIspIfNetworksIPv4 );
-        }
-
-//    record->iIpNetmask.SetL();
-    
-    record->iIpGateway.SetL( KUnspecifiedIPv4 );        
-    record->iIpAddrFromServer.SetL( KDefIpAddrFromServer );
-    
-    record->iIpAddr.SetL( KUnspecifiedIPv4 );
-    
-    record->iIpDnsAddrFromServer.SetL( KDefIpDnsAddrFromServer );
-    
-    record->iIpNameServer1.SetL( KUnspecifiedIPv4 );
-    record->iIpNameServer2.SetL( KUnspecifiedIPv4 );
-    record->iIp6DnsAddrFromServer.SetL( KDefIp6DnsAddrFromServer );
-    record->iIp6NameServer1.SetL( KDynamicIpv6Address );
-    record->iIp6NameServer2.SetL( KDynamicIpv6Address );
-        
-//        record->iIpAddrLeaseValidFrom.SetL();
-//        record->iIpAddrLeaseValidTo.SetL();
-        
-    if ( KDefIpAddrFromServer )
-        {
-        record->iConfigDaemonManagerName.SetL( KDaemonManagerName );
-        record->iConfigDaemonName.SetL( KConfigDaemonName );
-        }
-    else
-        {
-        record->iConfigDaemonManagerName.SetL( KEmpty );
-        record->iConfigDaemonName.SetL( KEmpty );
-        }
-
-//        record->iServiceExtensionTableName.SetL();
-//        record->iServiceExtensionTableRecordId.SetL();
-    }
-
-// --------------------------------------------------------------------------
-// CCmPluginLanBase::PrepareToUpdateRecordsL()
-// --------------------------------------------------------------------------
-//        
-EXPORT_C void CCmPluginLanBase::PrepareToUpdateRecordsL()
-    {
-    LOGGER_ENTERFN( "CCmPluginLanBase::PrepareToUpdateRecordsL" );
-    
-    CheckDNSServerAddressL( ETrue, 
-                            ServiceRecord().iIp6NameServer1,
-                            ServiceRecord().iIp6NameServer2,
-                            ServiceRecord().iIp6DnsAddrFromServer );
-                            
-    CheckDNSServerAddressL( EFalse,
-                            ServiceRecord().iIpNameServer1,
-                            ServiceRecord().iIpNameServer2,
-                            ServiceRecord().iIpDnsAddrFromServer );
-    }