2010-08-11  Gonzalo Paniagua Javier  <gonzalo.mono@gmail.com>

	Adapt to new exception in threadpool behavior.

	Since an exception in the threadpool can kill the application,
	silently ignore it when we know it is not harmful.

2008-09-18  Robert Jordan  <robertj@gmx.net>

	* TcpConnectionPool.cs: Set NoDelay on both profiles.

2008-09-18  Zoltan Varga  <vargaz@gmail.com>

	* TcpConnectionPool.cs: Set the NoDelay flag on the socket to avoid 
	excessive waiting by the tcp stack. Fixes #416462.

2008-09-17  Jeffrey Stedfast  <fejj@novell.com>

	* TcpChannel.cs (ParseTcpURL): If given "tcp://", don't set host
	to "", leave it as null.

	* TcpClientChannel.cs (TcpClientChannel): Use the default
	SinkProviders if the sinkProvider argument is null.

	* TcpChannel.cs (ParseTcpURL): TcpClientTransportSink needs the
	host component, so extract that info into its own string as well.

2008-09-12  Jeffrey Stedfast  <fejj@novell.com>

	Fix for bug #320298

	* TcpClientTransportSink.cs: Updated for change to
	TcpChannel.ParseTcpURL(). We now need to do our own integer
	conversion/validation of the port.

	* TcpChannel.cs (ParseTcpURL): We need to match the
	protocol ("tcp") case-insensitively. The objectURI is supposed to
	include the leading '/' character. Also, we need to ignore invalid
	port designators since Microsoft's .NET implementation of
	TcpChannel.Parse() doesn't seem to care that they are valid.

2008-08-09  Gert Driesen  <drieseng@users.sourceforge.net>

	* TcpChannel.cs: Fixed argument names to match MS.
	* TcpServerChannel.cs: Fixed argument names to match MS.

2008-06-18  Robert Jordan  <robertj@gmx.net>

	* TcpMessageIO.cs: Handle zero length streams. Fixes #398783.

2008-01-25  Zoltan Varga  <vargaz@gmail.com>

	* TcpChannel.cs (Init): Handle properties == null.

	* TcpClientChannel.cs (.ctor): Ditto. Fixes #355905.
	
2006-01-09  Robert Jordan  <robertj@gmx.net>

	* TcpServerChannel.cs (ProcessMessages): Flush the stream only when
	necessary (TcpServerTransportSink.InternalProcessMessage does it anyway),
	otherwise pending OneWay & async messages are lost.
	* TcpMessageIO.cs (SendMessageStream): Mark OneWay messages as such.
	Fixes MS.NET interoperability.
	* TcpClientTransportSink.cs (AsyncProcessRequest):
	Use the new TcpMessageIO.SendMessageStream overload to mark OneWay
	requests. Fixes bug #80406.

2007-01-08  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpChannel.cs, TcpServerChannel.cs: Moved StartListening call to
	  the constructor of TcpServerChannel.

2006-12-18  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpChannel.cs: The remoting infrastructure does not call
	  StartListening() anymore, so it has to be called by the channel.

2006-09-15  Lluis Sanchez Gual  <lluis@novell.com> 

	* TcpServerTransportSink.cs, TcpServerChannel.cs: 
	When sending an async call response, don't use the original request
	stream because it may have been used by another call.

2006-05-31  Gert Driesen  <drieseng@users.sourceforge.net>

	* TcpClientChannel.cs: Marked CreateMessageSink virtual.
	* TcpServerChannel.cs: Marked GetUrlsForUri virtual.

2006-05-31  Gert Driesen  <drieseng@users.sourceforge.net>

	* TcpClientChannel.cs: Set eol-style to native.
	* TcpChannel.cs: Fixed line endings. Set eol-style to native.
	* TcpServerTransportSink.cs: Fixed line endings. Set eol-style to
	native.
	* TcpConnectionPool.cs: Fixed line endings. Set eol-style to CRLF.
	* TcpClientTransportSinkProvider.cs: Fixed line endings. Set eol-style
	to native.
	* TcpMessageIO.cs: Set eol-style to native.
	* TcpServerChannel.cs: Fixed line endings. Set eol-style to native.
	* TcpClientTransportSink.cs: Fixed line endings. Set eol-style to
	native.

2005-11-08  Lluis Sanchez Gual  <lluis@novell.com> 

	* TcpServerChannel.cs: Fix null ref exception.

2005-11-06  Svetlana Zholkovsky  <svetlanaz@mainsoft.com>

	* TcpServerChannel.cs, TcpConnectionPool.cs: only TARGET_JVM changes

2005-07-25  Lluis Sanchez Gual  <lluis@novell.com> 

	* TcpChannel.cs: Don't create a server channel when the
	default constructor is used. Fixes bug #75626.

2005-05-31  Lluis Sanchez Gual  <lluis@novell.com> 

	* TcpServerTransportSink.cs: Remove the channel uri from the
	received uri.
	
2005-05-31  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpServerChannel.cs: Use IP address in object uris by default.
	Fixes bug #54234. Removed unused field.
	* TcpClientTransportSink.cs: Fix warning.

2005-05-18  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpServerChannel.cs: In StopListening, wait for the server thread
	to stop before returning. This fixes bug #74962.

2005-01-25  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpServerTransportSink.cs: Set IPAddress and ConnectionId
	transport headers. This fixes bug #71423.
	* TcpServerChannel.cs: Use Socket instead of TcpClient, so we can
	easily get the IP address of the client. Added properties in
	ClientConnection to get the IP address and the connection id.

2005-01-21  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpMessageIO.cs: Added a buffer parameter to ReceiveMessageStatus,
	to avoid creating unneded buffers.
	* TcpServerChannel.cs, TcpClientTransportSink.cs: Use new buffer
	parameter in ReceiveMessageStatus.

2005-01-14  Lluis Sanchez Gual  <lluis@novell.com>

	* TcpConnectionPool.cs: Don't limit client connections.
	This fixes bug #70700. Create connections from outside the pool lock.
	* TcpMessageIO.cs: Throw real exceptions when errors occur.
	* TcpServerChannel.cs: Use the new RemotingThreadPool to manage threads.
	This also fixes bug #70700.

2004-12-17  Lluis Sanchez Gual <lluis@novell.com>

	* TcpMessageIO.cs: Removed some more WriteByte calls.
	* TcpClientTransportSink.cs: Flush the net stream after writing
	a message.

2004-12-10  Lluis Sanchez Gual <lluis@novell.com>

	* TcpChannel.cs: Don't use regular expressions to parse the url, it's
	too slow.
	* TcpMessageIO.cs: Read byte chunks using the new StreamRead method,
	which won't block if the connection is closed.
	* TcpServerChannel.cs: Flush the stream after writing the response.
	Wrap the close call in a try/catch (some bytes can be left in the
	buffered stream if a connection is suddently closed, and it will fail
	when trying to flush them).

2004-12-09  Lluis Sanchez Gual <lluis@novell.com>

	* TcpConnectionPool.cs: Access the socket stream through a
	BufferedStream.
	* TcpMessageIO.cs: Avoid ReadByte().
	* TcpServerChannel.cs: Access the socket stream through a
	BufferedStream. Abort the connection if an unknown message is received.
	All this fixes performance bug #70337.

2004-10-22  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpClientChannel.cs: In CreateMessageSink, process the remote channel
	  data if the provided url does not have the expected format. This fixes
	  a regression from the fix for bug #66768 and fixes #68669.

2004-07-15  Lluis Sanchez Gual <lluis@novell.com>

	* TcpServerChannel.cs: Set channel name from the provided properties.
	  This fixes bug #61592.

2004-05-13  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpChannel.cs: Made Init private.
	* TcpClientTransportSink.cs, TcpClientTransportSinkProvider.cs,
	  TcpServerTransportSink.cs: Made internal.

2004-04-16  Lluis Sanchez Gual  <lluis@ximian.com>

	* TcpClientChannel.cs: Initialize the sink provider in the default
	  constructor.

2004-03-04  Lluis Sanchez Gual  <lluis@ximian.com>

	* TcpServerChannel.cs: In the ProcessMessages() loop, moved the closing of
	  the stream to the finally block, so it is called if the thread is aborted.

2004-02-27  Lluis Sanchez Gual  <lluis@ximian.com>

	* TcpClientTransportSink.cs: Set the RequestUri transport header before 
	  sending the request.

2004-02-23  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpClientTransportSink.cs: Release the connection after sending an
	  OneWay call. This fixes bug #54671.

2003-12-23  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpServerChannel.cs: If useIpAddress and bindAddress are both specified,
	  set bindAddress as the host address for the client.

2003-12-19  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpServerChannel.cs: Fixes in channel initialization.

2003-12-12  Lluis Sanchez Gual  <lluis@ximian.com>

	* TcpChannel.cs: Added null check.

2003-11-16  Lluis Sanchez Gual  <lluis@ximian.com>

	* TcpClientChannel.cs: Added support for name and priority properties.
	* TcpServerChannel.cs: Added support for priority, bindTo, useIpAddress,
	  machineName and supressChannelData properties.
	* TcpChannel.cs, TcpServerTransportSink.cs: Formatting change.
		  
2003-11-13  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpChannel.cs: take into account name and priority properties.
	
2003-11-12  Lluis Sanchez Gual <lluis@ximian.com>

	* TcpServerChannel.cs: Remove listener initialization and StartListening
	  call from constructor. It is called now by the remoting framework.
	* TcpConnectionPool.cs: Removed fixme.
	
	Older log entries can be found in the System.Runtime.Remoting ChangeLog.

