equal
deleted
inserted
replaced
25 const TInt KDefaultFlags = 0; |
25 const TInt KDefaultFlags = 0; |
26 const TInt KTcpTriggeredKeepAlive = 2; |
26 const TInt KTcpTriggeredKeepAlive = 2; |
27 const TInt KSocketRecvBufSize = 16 * 1024; |
27 const TInt KSocketRecvBufSize = 16 * 1024; |
28 const TInt KSocketSendBufSize = 16 * 1024; |
28 const TInt KSocketSendBufSize = 16 * 1024; |
29 const TInt KSocketDefaultSendBufSize = 4 * 1024; |
29 const TInt KSocketDefaultSendBufSize = 4 * 1024; |
30 const TUint32 KSoTcpLingerinMicroSec = 0x101F55F6;//linger constant to send close connection fast |
30 |
|
31 const TUint32 TSoTcpLingerinMicroSec = 0x101F55F6;//linger constant to send close connection fast |
|
32 |
31 |
33 |
32 CSocket* CSocket::NewL(MCommsInfoProvider& aCommsInfoProvider, TSocketType aSocketType) |
34 CSocket* CSocket::NewL(MCommsInfoProvider& aCommsInfoProvider, TSocketType aSocketType) |
33 /** |
35 /** |
34 The factory constructor. |
36 The factory constructor. |
35 @param aCommsInfoProvider The comms info provider object. |
37 @param aCommsInfoProvider The comms info provider object. |
136 if(aSocketType != EBlankSocket) |
138 if(aSocketType != EBlankSocket) |
137 { |
139 { |
138 iSocket.SetOpt(KSoTcpNoDelay,KSolInetTcp,1); // Disable the nagle. |
140 iSocket.SetOpt(KSoTcpNoDelay,KSolInetTcp,1); // Disable the nagle. |
139 iSocket.SetOpt(KSORecvBuf, KSOLSocket, KSocketRecvBufSize); // Set the socket recv buf to be 16K |
141 iSocket.SetOpt(KSORecvBuf, KSOLSocket, KSocketRecvBufSize); // Set the socket recv buf to be 16K |
140 } |
142 } |
141 |
|
142 TInt lingerTimeout = iCommsInfoProvider.GetSocketImmediateCloseTimeout(); |
143 TInt lingerTimeout = iCommsInfoProvider.GetSocketImmediateCloseTimeout(); |
143 if (lingerTimeout != KErrNotFound) |
144 if (lingerTimeout != KErrNotFound) |
144 { |
145 { |
145 TPckgBuf<TSoTcpLingerOpt> linger; |
146 TPckgBuf<TSoTcpLingerOpt> linger; |
146 linger().iOnOff = 1; |
147 linger().iOnOff = 1; |
147 linger().iLinger = lingerTimeout; |
148 linger().iLinger = lingerTimeout; |
148 iSocket.SetOpt(KSoTcpLingerinMicroSec, KSolInetTcp, linger); |
149 iSocket.SetOpt(TSoTcpLingerinMicroSec, KSolInetTcp, linger); |
149 } |
150 } |
150 |
|
151 } |
151 } |
152 return error; |
152 return error; |
153 } |
153 } |
154 |
154 |
155 TInt CSocket::Listen(TUint aQSize, TUint16 aPort) |
155 TInt CSocket::Listen(TUint aQSize, TUint16 aPort) |