/[resiprocate]/main/sip/resiprocate/TcpBaseTransport.cxx
ViewVC logotype

Log of /main/sip/resiprocate/TcpBaseTransport.cxx

Parent Directory Parent Directory | Revision Log Revision Log


Sticky Revision:
(Current path doesn't exist after revision 5294)

Revision 4599 - (view) (download) (annotate) - [select for diffs]
Modified Wed May 11 23:10:19 2005 UTC (14 years, 6 months ago) by derek
File length: 10876 byte(s)
Diff to previous 4445
set svn:eol-style to LF

Revision 4445 - (view) (download) (annotate) - [select for diffs]
Modified Mon Apr 25 15:14:45 2005 UTC (14 years, 7 months ago) by sgodin
File length: 10876 byte(s)
Diff to previous 4416
Some TCP-Connection optimizations if there are no ready FD's in fdset.

Revision 4416 - (view) (download) (annotate) - [select for diffs]
Modified Fri Apr 22 20:19:47 2005 UTC (14 years, 7 months ago) by sgodin
File length: 10831 byte(s)
Diff to previous 3999
Modified ConnectionManager.getNextRead so that it will only return a connection that has data waiting (ie. is signalled by the select).

Revision 3999 - (view) (download) (annotate) - [select for diffs]
Modified Wed Mar 16 19:41:28 2005 UTC (14 years, 8 months ago) by derek
File length: 10826 byte(s)
Diff to previous 3877
Merged in of async branch:

Major changes:

Alternative "async/external" Processing Model

The SipStack & DUM can now run w/out being in a build/select/process
loop.  This is accomplished witht ransports that provide their own cycles, as well
as an external timer api.  The SipStack is constructed w/ an
AsyncProcessHandler which gets notified when a message is put into the
StateMacFifo, or when SipStack::postMs or SipStack::post is called.  This can be
optimized a bit more; in some cases only a timer adjustment may be required, but
the stack might not require cycles.  DumProcessHandler, located in the Dum
directory, is a example of how to use this.  Note that it provides ares w/ a 50
ms timer when there is an active query.  DnsInterface now has a requiresProcess
method to facilitate this; it should possibly become another
getTimeTillNextProcess method.

Transport Refactoring/Cleanup

TransportSelector now only understands objects that derive from Transport.  The
SipStack is responsible for the Transport Factory behaviour of addTransport.  A
lot of the Transport has moved into InternalTransport, to keep the Transport
abstraction clean.  Also, the tcp transports have been cleaned up; most of dlb's
rant in ConnectionBase.hxx has been answered. 

IpVersion vs Bool IpV4

bool is no longer used to represnt IpVersion, the enum is used in tuple and
anywhere else I spotted it.

The result of this merge/cleanup has been regressed; I still need to re-write
testTransportSelector.cxx.  The async model has not been used yet with the
esult of this merge, but it was sued extensively in the branch.


Revision 3877 - (view) (download) (annotate) - [select for diffs]
Modified Tue Feb 8 14:01:35 2005 UTC (14 years, 10 months ago) by sgodin
File length: 11371 byte(s)
Diff to previous 3548
fix for shutting down transport threads

Revision 3548 - (view) (download) (annotate) - [select for diffs]
Modified Mon Nov 22 23:11:20 2004 UTC (15 years ago) by fluffy
File length: 11361 byte(s)
Diff to previous 3190
Change API to Transport consturctors

Revision 3190 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 31 18:50:09 2004 UTC (15 years, 4 months ago) by dlb
File length: 11344 byte(s)
Diff to previous 3177
added StackThread
added StatisticsManager
refactored Message


Revision 3177 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 30 22:57:34 2004 UTC (15 years, 4 months ago) by alan
File length: 11334 byte(s)
Diff to previous 3175
exceptions support for fd sets -- addresses windows streaming transport connection error issues

Revision 3175 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 30 01:13:28 2004 UTC (15 years, 4 months ago) by jason
File length: 10515 byte(s)
Diff to previous 3118
fix a memory leak (shouldn't happen very often)


Revision 3118 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 17 04:47:28 2004 UTC (15 years, 4 months ago) by alan
File length: 10403 byte(s)
Diff to previous 3084
Security and TLS updates

Revision 3084 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 9 16:05:16 2004 UTC (15 years, 5 months ago) by jason
File length: 10387 byte(s)
Diff to previous 2972
use Transport::error in all cases where strerror was used


Revision 2972 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jun 11 16:46:57 2004 UTC (15 years, 5 months ago) by jason
File length: 10253 byte(s)
Diff to previous 2964
fix contributed by Frederik Bayart

"If I test fdset.readyToRead(conn->getSocket()) immediately after
TcpBaseTransport.cxx:236, this test returns true, although the socket didn't
exist at the time of the select (I'm using solaris 2.8 and gcc 3.2.2). This
has as consequence that on TcpBaseTransport.cxx:133, the test
fdset.readyToRead(currConnection->getSocket()) succeeds and the stack tries
to read even if the connection setup is not yet completed. I didn't verify
whether select sets a bit in the fdset for non-existing sockets, but I
solved the problem by clearing the flag for the socket immediately after
socket creation :"


Revision 2964 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jun 10 22:22:21 2004 UTC (15 years, 5 months ago) by alan
File length: 10225 byte(s)
Diff to previous 2456
formatting

Revision 2456 - (view) (download) (annotate) - [select for diffs]
Modified Fri Mar 5 18:32:18 2004 UTC (15 years, 9 months ago) by jason
File length: 10214 byte(s)
Diff to previous 2367
remove debug


Revision 2367 - (view) (download) (annotate) - [select for diffs]
Modified Sat Feb 14 19:00:28 2004 UTC (15 years, 9 months ago) by rohan
File length: 10247 byte(s)
Diff to previous 2252
Fixed sizeof assumption problem affecting IPv6 on the Mac in TcpBaseTransport.cxx


Revision 2252 - (view) (download) (annotate) - [select for diffs]
Modified Tue Dec 23 06:26:03 2003 UTC (15 years, 11 months ago) by jason
File length: 10237 byte(s)
Diff to previous 2236
hasDataToRead always returns false! this is wrong but necessary to resolve a bug
in TcpBaseTransport for now


Revision 2236 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 12 06:26:39 2003 UTC (15 years, 11 months ago) by jason
File length: 10239 byte(s)
Diff to previous 2212
fix bug with changing the supposedly immutable mTuple on Transports


Revision 2212 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 5 21:26:55 2003 UTC (16 years ago) by fluffy
File length: 10217 byte(s)
Diff to previous 2209
fixed issus with TCP and TLS where there was confusiong between getting 0 bytes
on a read and getting a transport error


Revision 2209 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 5 19:30:58 2003 UTC (16 years ago) by jason
File length: 10080 byte(s)
Diff to previous 2196
fix several ipv6 bugs in sending and receiving - using wrong sockaddr
also fixed problem with deleting connection on tls when returned bytesRead=0


Revision 2196 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 5 01:32:52 2003 UTC (16 years ago) by fluffy
File length: 10082 byte(s)
Diff to previous 2195
no change after merge conflict


Revision 2195 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 5 00:26:44 2003 UTC (16 years ago) by jason
File length: 10081 byte(s)
Diff to previous 2180
tentative fix to problem when 0 bytes read (means far end closed connection)


Revision 2180 - (view) (download) (annotate) - [select for diffs]
Modified Thu Dec 4 02:02:57 2003 UTC (16 years ago) by fluffy
File length: 9965 byte(s)
Diff to previous 1981
Updated a few asserts to track donw unitialzed transport


Revision 1981 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 19 17:19:26 2003 UTC (16 years, 1 month ago) by jason
File length: 9672 byte(s)
Diff to previous 1929
remove DnsResolver


Revision 1929 - (view) (download) (annotate) - [select for diffs]
Modified Tue Oct 7 23:35:00 2003 UTC (16 years, 2 months ago) by alan
File length: 9653 byte(s)
Diff to previous 1913
Completed via-less malformed message recovery.
Framework for other recoveries in Transport::basicCheck()
 Modified Files:
 	configure.ac resiprocate/Connection.cxx
 	resiprocate/Connection.hxx resiprocate/SipMessage.cxx
 	resiprocate/TcpBaseTransport.cxx
  Tag: b-dev-ah-20031006-viafix
 	resiprocate/Transport.cxx
  No tag
 	resiprocate/os/Tuple.hxx resiprocate/test/Makefile.am
 	resiprocate/test/testData.cxx resiprocate/test/testUdp.cxx
 Added Files:
 	resiprocate/test/testResponses.cxx
VS: ----------------------------------------------------------------------


Revision 1913 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 5 02:33:12 2003 UTC (16 years, 2 months ago) by fluffy
File length: 9500 byte(s)
Diff to previous 1902
don't print error for EWOULDBLOCK


Revision 1902 - (view) (download) (annotate) - [select for diffs]
Modified Sat Oct 4 17:51:47 2003 UTC (16 years, 2 months ago) by jason
File length: 9438 byte(s)
Diff to previous 1883
fix shutdown of transports in multithreaded case


Revision 1883 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 2 23:28:39 2003 UTC (16 years, 2 months ago) by jason
File length: 9423 byte(s)
Diff to previous 1876
reorganize ipv6 stuff in TransportSelector, Transports and Tuple
change datastructure for storing the Transports in the TransportSelector to be
more efficient


Revision 1876 - (view) (download) (annotate) - [select for diffs]
Modified Wed Oct 1 17:53:33 2003 UTC (16 years, 2 months ago) by jason
File length: 9416 byte(s)
Diff to previous 1873
fix the cullen whirlwind


Revision 1873 - (view) (download) (annotate) - [select for diffs]
Modified Wed Oct 1 15:35:19 2003 UTC (16 years, 2 months ago) by fluffy
File length: 9416 byte(s)
Diff to previous 1848
fix errno stuff


Revision 1848 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 28 00:21:20 2003 UTC (16 years, 2 months ago) by jason
File length: 9202 byte(s)
Diff to previous 1846
fix bug when read returns 0 bytes - means far side closed


Revision 1846 - (view) (download) (annotate) - [select for diffs]
Modified Sat Sep 27 21:50:52 2003 UTC (16 years, 2 months ago) by jason
File length: 9025 byte(s)
Diff to previous 1839
change some debug levels


Revision 1839 - (view) (download) (annotate) - [select for diffs]
Modified Sat Sep 27 01:49:38 2003 UTC (16 years, 2 months ago) by jason
File length: 8869 byte(s)
Diff to previous 1837
refactored the Tuple
required interface changes to the Tuple
store network address in a sockaddr structure to be generic for v4 and v6
fixed a bug in Tuple::operator<


Revision 1837 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 26 16:47:31 2003 UTC (16 years, 2 months ago) by jason
File length: 8905 byte(s)
Diff to previous 1813
added a method Transport::bind to replace the static so we can store the bound
sockaddr in the Transport for use by TransportSelector


Revision 1813 - (view) (download) (annotate) - [select for diffs]
Modified Tue Sep 23 20:25:09 2003 UTC (16 years, 2 months ago) by jason
File length: 8946 byte(s)
Diff to previous 1812
*** empty log message ***


Revision 1812 - (view) (download) (annotate) - [select for diffs]
Modified Mon Sep 22 07:05:18 2003 UTC (16 years, 2 months ago) by jason
File length: 8807 byte(s)
Diff to previous 1800
fix some problems with cleanup when delete TcpTransport and/or Connection


Revision 1800 - (view) (download) (annotate) - [select for diffs]
Added Thu Sep 18 17:16:03 2003 UTC (16 years, 2 months ago) by davidb
File length: 8803 byte(s)
refactored tcp code
refactored tls code
full support for tcpv6 with more general use
support for binding to specific interfaces
added many new DnsUtil and utilities in Tuple class


This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

webmaster AT resiprocate DOT org
ViewVC Help
Powered by ViewVC 1.1.27