201029_02
authorhgs
Sat, 31 Jul 2010 02:05:39 +0530
changeset 49 b285782036ce
parent 45 cc67bf60355a
child 55 5eca823bbf17
201029_02
build.config.xml
linklayercontrol/networkinterfacemgr/inc/nifman_internal.h
linklayercontrol/networkinterfacemgr/netcfgext/inc/netcfgextnotify.h
linklayercontrol/networkinterfacemgr/netcfgext/src/netcfgextnotify.cpp
networkcontrol/ipnetworklayer/inc/IPProtoCPR.h
networkcontrol/ipnetworklayer/inc/ipprotodeftscpr.h
networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp
networkcontrol/ipnetworklayer/src/IPProtoCprStates.cpp
networkcontrol/ipnetworklayer/src/ipprotodeftscpr.cpp
networkcontrol/ipnetworklayer/src/ipprotodeftscprstates.cpp
--- a/build.config.xml	Tue Jul 20 22:06:16 2010 +0530
+++ b/build.config.xml	Sat Jul 31 02:05:39 2010 +0530
@@ -151,7 +151,7 @@
 		<unit unitID="test46" mrp="" bldFile="sf\os\commsfw\datacommsserver\networkingdialogapi\agentnotifier\group" name="test46" />
 		<unit unitID="test47" mrp="" bldFile="sf\os\cellularsrv\telephonyprotocols\pdplayer\umts\test\te_mbms\group" name="test47" />
 		<unit unitID="test48" mrp="" bldFile="sf\os\security\authorisation\userpromptutils\group" name="test48" />
-		<unit unitID="test49" mrp="" bldFile="sf\os\commsfw\commsfwtools\preparedefaultcommsdatabase\Tools\ced\te_ced\group" name="test49" />	
+<!--		<unit unitID="test49" mrp="" bldFile="sf\os\commsfw\commsfwtools\preparedefaultcommsdatabase\Tools\ced\te_ced\group" name="test49" />	 -->
       </module>
     </layer>
   </systemModel>
--- a/linklayercontrol/networkinterfacemgr/inc/nifman_internal.h	Tue Jul 20 22:06:16 2010 +0530
+++ b/linklayercontrol/networkinterfacemgr/inc/nifman_internal.h	Sat Jul 31 02:05:39 2010 +0530
@@ -24,10 +24,12 @@
 #define __NIFMAN_INTERNAL_H__
 
 #include <es_prot.h>
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-#include <es_prot_internal.h>
-#include <es_sock_partner.h>
-#endif
+
+// public headers not to include platform headers
+// #ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+// #include <es_prot_internal.h>
+// #include <es_sock_partner.h>
+// #endif
 
 
 /**
--- a/linklayercontrol/networkinterfacemgr/netcfgext/inc/netcfgextnotify.h	Tue Jul 20 22:06:16 2010 +0530
+++ b/linklayercontrol/networkinterfacemgr/netcfgext/inc/netcfgextnotify.h	Sat Jul 31 02:05:39 2010 +0530
@@ -38,6 +38,7 @@
 	   MNifIfNotify interface
 	   Only IfProgress, DoReadDes and DoReadInt supported.
 	*/
+	~CNetCfgExtNotify();
 	void LinkLayerDown(TInt aReason, TAction aAction);
 	void LinkLayerUp();
     void NegotiationFailed(CNifIfBase* aIf, TInt aReason);
--- a/linklayercontrol/networkinterfacemgr/netcfgext/src/netcfgextnotify.cpp	Tue Jul 20 22:06:16 2010 +0530
+++ b/linklayercontrol/networkinterfacemgr/netcfgext/src/netcfgextnotify.cpp	Sat Jul 31 02:05:39 2010 +0530
@@ -35,11 +35,18 @@
 	{
 	}
 
+CNetCfgExtNotify::~CNetCfgExtNotify()
+    {
+    iScpr = NULL;
+    }
 void CNetCfgExtNotify::IfProgress(TInt aStage, TInt aError)
 	{
 	TStateChange change(aStage, aError);
+	if(iScpr)
+	    {
 	RClientInterface::OpenPostMessageClose(iScpr->Id(), iScpr->Id(),
 		TCFMessage::TStateChange(change).CRef());
+	    }
 	}
 
 TInt CNetCfgExtNotify::DoReadInt(const TDesC& aField, TUint32& aValue,const RMessagePtr2* /*aMessage*/)
--- a/networkcontrol/ipnetworklayer/inc/IPProtoCPR.h	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/inc/IPProtoCPR.h	Sat Jul 31 02:05:39 2010 +0530
@@ -194,6 +194,7 @@
 	TBool iLinkUp:1;
 	TBool iConnectionControlActivity:1;
 	TBool iTimerExpired:1;
+	TBool iTimerStopped:1;
 	TBool iTimerRunning:1;
 	TBool iSubConnEventDataSent:1;	// Hack to cope with multiple DataClientStatusChange notifications for 'stopped'
 	TBool iNodeLocalExtensionsCreated;
--- a/networkcontrol/ipnetworklayer/inc/ipprotodeftscpr.h	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/inc/ipprotodeftscpr.h	Sat Jul 31 02:05:39 2010 +0530
@@ -103,6 +103,8 @@
 	CNifConfigurationControl* iControl;
     Messages::RNodeInterface iFlow;
 	TBool iIoctlCancelled;
+public:
+	TBool iNetworkConfigurationState;
 	};
 
 #endif //SYMBIAN_IPPROTODEFTSCPR_H
--- a/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp	Sat Jul 31 02:05:39 2010 +0530
@@ -757,6 +757,7 @@
 	if (!iTimerExpired)
 		{
 		iTimerExpired = ETrue;
+		iTimerStopped =  ETrue; 
 		CancelTimer();
 		if (CountActivities(ECFActivityStop) == 0 && CountActivities(ECFActivityDestroy) == 0)
 			{
--- a/networkcontrol/ipnetworklayer/src/IPProtoCprStates.cpp	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/src/IPProtoCprStates.cpp	Sat Jul 31 02:05:39 2010 +0530
@@ -150,7 +150,7 @@
 	// stop has been caused by timer expiry, remove self from originators list, because we
 	// are not waiting for TStopped and in certain situations it would arrive after the node has been
 	// destroyed
-	if (iContext.Node().iTimerExpired)
+	if (iContext.Node().iTimerStopped)
 		{
 		TInt selfidx = iContext.iNodeActivity->FindOriginator(iContext.Node().SelfInterface());
 		ASSERT(selfidx != KErrNotFound);
@@ -378,6 +378,7 @@
 	iContext.Node().SetUsageProfile(KConnProfileMedium);
 	iContext.Node().SetTimerMode(CIPProtoConnectionProvider::ETimerMedium);
 
+    iContext.Node().iTimerStopped = EFalse;
 	CoreNetStates::TSendStarted transition(iContext);
 	transition.DoL();
 	}
--- a/networkcontrol/ipnetworklayer/src/ipprotodeftscpr.cpp	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/src/ipprotodeftscpr.cpp	Sat Jul 31 02:05:39 2010 +0530
@@ -164,7 +164,8 @@
 	 ALegacySubConnectionActiveApiExt(this),
 	 TIfStaticFetcherNearestInHierarchy(this),
 	 iNotify(NULL),
-	 iControl(NULL)
+	 iControl(NULL),
+	 iNetworkConfigurationState(EFalse)
     {
     LOG_NODE_CREATE(KIPProtoDeftScprTag, CIPProtoDeftSubConnectionProvider);
     }
@@ -195,10 +196,21 @@
 
 CIPProtoDeftSubConnectionProvider::~CIPProtoDeftSubConnectionProvider()
     {
+   if(iNetworkConfigurationState == EFalse)
+       {
+       if(iNotify)
+           {
+           delete iNotify;
+           iNotify = NULL;
+           }
+       }
 	if (iControl)
 		delete iControl;
 	if (iNotify)
+	    {
 		delete iNotify;
+		iNotify = NULL;
+		}
 
     LOG_NODE_DESTROY(KIPProtoDeftScprTag, CIPProtoDeftSubConnectionProvider);
     }
--- a/networkcontrol/ipnetworklayer/src/ipprotodeftscprstates.cpp	Tue Jul 20 22:06:16 2010 +0530
+++ b/networkcontrol/ipnetworklayer/src/ipprotodeftscprstates.cpp	Sat Jul 31 02:05:39 2010 +0530
@@ -162,6 +162,7 @@
 
 	if (msg.iStateChange.iStage == KLinkLayerOpen)
 		{
+		iContext.Node().iNetworkConfigurationState = ETrue;
 		return KNetworkConfigured;
 		}
 
@@ -171,6 +172,7 @@
 DEFINE_SMELEMENT(TNetworkConfiguredOrErrorTagOrCancelTagOrNoTagBackward, NetStateMachine::MStateFork, IPProtoDeftSCpr::TContext)
 TInt IPProtoDeftSCpr::TNetworkConfiguredOrErrorTagOrCancelTagOrNoTagBackward::TransitionTag()
 	{
+	iContext.Node().iNetworkConfigurationState = EFalse;
 	TInt tag = IPProtoDeftSCpr::TNetworkConfiguredOrErrorTagOrCancelTagOrNoTag::TransitionTag();
 	if (tag == KNoTag)
 		return tag | NetStateMachine::EBackward;