networkprotocols/tcpipv4v6prt/inc/tcp.h
changeset 37 052078dda061
parent 18 39bb7c3571e9
child 56 ea8d11a88e23
equal deleted inserted replaced
18:39bb7c3571e9 37:052078dda061
   234 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   234 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   235 	//Function to set and get receive window
   235 	//Function to set and get receive window
   236 	void SetRecvWin(TUint aRecvWin) { iRecvBuf = aRecvWin;}
   236 	void SetRecvWin(TUint aRecvWin) { iRecvBuf = aRecvWin;}
   237 	TUint GetRecvWinSize()			{ return iRecvBuf;	 }
   237 	TUint GetRecvWinSize()			{ return iRecvBuf;	 }
   238 	TUint RecvMaxWnd()              { return iTcpMaxRecvWin;}
   238 	TUint RecvMaxWnd()              { return iTcpMaxRecvWin;}
       
   239 	TUint RecvBufFromIniFile()      { return iRecvBufFromIniFile; }
   239 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   240 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   240 
   241 
   241 #ifdef _LOG
   242 #ifdef _LOG
   242 	static void LogPacket(char aDir, RMBufChain& aPacket, RMBufPktInfo *info = 0, TInt aOffset = 0);
   243 	static void LogPacket(char aDir, RMBufChain& aPacket, RMBufPktInfo *info = 0, TInt aOffset = 0);
   243 #endif
   244 #endif
   293 
   294 
   294 	TUint32 iRandomIncrement;
   295 	TUint32 iRandomIncrement;
   295 	RMBufAllocator iBufAllocator;
   296 	RMBufAllocator iBufAllocator;
   296 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   297 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   297 	TUint iTcpMaxRecvWin;
   298 	TUint iTcpMaxRecvWin;
       
   299 	TUint iRecvBufFromIniFile;
   298 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   300 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   299 	};
   301 	};
   300 
   302 
   301 
   303 
   302 /**
   304 /**
   440 	TUint32 iHiddenFreeWindow;
   442 	TUint32 iHiddenFreeWindow;
   441 	//  Size of Window Shrink
   443 	//  Size of Window Shrink
   442 	TUint32 iShrinkedWindowSize;
   444 	TUint32 iShrinkedWindowSize;
   443 	// Window size set by user. This will override the default values for the bearers
   445 	// Window size set by user. This will override the default values for the bearers
   444 	TBool   iWindowSetByUser;
   446 	TBool   iWindowSetByUser;
       
   447 	//Flag for socket startup case. No tcp window expand/shrink in this case.
       
   448 	TBool iSocketStartupCase;
   445 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   449 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
   446 
   450 
   447 	// Maximum Segment Sizes
   451 	// Maximum Segment Sizes
   448 	TUint           iMSS;   //< Maximum set by user
   452 	TUint           iMSS;   //< Maximum set by user
   449 	TUint		    iSMSS;  //< Send MSS
   453 	TUint		    iSMSS;  //< Send MSS
   611 	void ResetCwnd(TUint aSMSS);
   615 	void ResetCwnd(TUint aSMSS);
   612 	void SchedMsl2Wait();
   616 	void SchedMsl2Wait();
   613 	void ProcessSegments();
   617 	void ProcessSegments();
   614 	void SendSegments(TBool aNagleOverride = EFalse);
   618 	void SendSegments(TBool aNagleOverride = EFalse);
   615 	void RetransmitTimeout();
   619 	void RetransmitTimeout();
   616 	void RetransmitSegments();
   620 	TBool RetransmitSegments();
   617 	void ClearSYNSettings();
   621 	void ClearSYNSettings();
   618 
   622 
   619 	/**
   623 	/**
   620 	 * Reduce congestion window. The following events may cause this: 1. ICMP Source Quench,
   624 	 * Reduce congestion window. The following events may cause this: 1. ICMP Source Quench,
   621 	 * 2. notification from link layer, 3. ECN congestion echo. The method ensures that congestion
   625 	 * 2. notification from link layer, 3. ECN congestion echo. The method ensures that congestion