2004-06-23 Gonzalo Paniagua Javier * Socket.cs: wrong error code in connect and accept. EWOULDBLOCK is 10035. Fixes bug #60563. 2004-06-20 Gonzalo Paniagua Javier * Socket.cs: fixed Accept for non-blocking sockets. 2004-06-10 Gert Driesen * LingerOption.cs: marked field private to fix API signature * MulticastOption.cs: marked field private to fix API signature 2004-06-05 Gonzalo Paniagua Javier * Socket.cs: throw ArgumentNullException if all the list are null OR empty. Fixes bug #59632. 2004-05-21 Patrik Torstensson * TcpListener.cs: Fixes a lot of the problems with remoting nunit tests. (AcceptTcpClient): Don't create TcpClient before a connection is accepted. (LocalEndPoint): Use Server LocalEndPoint if connected otherwise use endpoint from ctor. (Init): Save end point, not server endpoint. This did cause TcpListener to ignore port sent via constructor. (Pending): Fixed wait time (method should return directly) (Start): Moved Bind here instead of Init method; old method caused us to bind ports even if the listener was stopped. (Stop): Null server when stopping 2004-05-13 Dick Porter * UdpClient.cs: * TcpClient.cs: Public API fixes 2004-05-07 Gonzalo Paniagua Javier * Socket.cs: fixed Connect for non-blocking sockets. Closes bug #58169. 2004-05-03 Gonzalo Paniagua Javier * Socket.cs: fix for BeginConnect and non-blocking sockets. 2004-05-03 Lluis Sanchez Gual * Socket.cs: Use assembly name const to load Mono.Posix. 2004-05-01 Gonzalo Paniagua Javier * Socket.cs: only enable socket AIO if MONO_ENABLE_SOCKET_AIO is there. I will remove this once THE bug is hunted. 2004-04-28 Gonzalo Paniagua Javier * Socket.cs: added support for unmanaged asynchronous IO. Speed up error checking. * UdpClient.cs: fixed Dispose so that it only closes the socket when called explicitly. 2004-04-24 Gonzalo Paniagua Javier * Socket.cs: added GetSupportsAsync and Poll_internal internal calls. Cleaned up Worker class: moved fields to SocketAsyncResult and use Poll when the socket is non-blocking before getting EWOULDBLOCK error. 2004-04-08 Dick Porter * Socket.cs: Rearrange the internal calls so that the exceptions are thrown from managed code 2004-03-21 Gonzalo Paniagua Javier * Socket.cs: when Dispose (bool) is called from the finalizer, always do the cleanup. Fixes yet another nullref with xsp. 2004-02-19 Gonzalo Paniagua Javier * Socket.cs: implemented IOControl. 2004-02-18 Gonzalo Paniagua Javier * Socket.cs: use the threadpool for asynchronous calls instead of creating new threads. 2004-02-12 Gonzalo Paniagua Javier * Socket.cs: added locks around waithandle assign and comparison in class Worker. Handle other exceptions than SocketException for non-blocking sockets. 2004-01-24 Gonzalo Paniagua Javier * Socket.cs: handle WSAEWOULDBLOCK for non-blocking sockets. Fixes bug #53168. Avoid the creation of the ManualResetEvent in class Worker whenever possible. 2004-01-24 Gonzalo Paniagua Javier * Socket.cs: if we have a pending async event, delay socket closing until EndX is called. Fixes bug #53229. Check parameters and if the socket has been disposed. Implemented IDisposable explicitly. The threads created have IsBackground = true now. 2004-01-10 Gonzalo Paniagua Javier * Socket.cs: patch from Brad Fitzpatrick episode 2. 2003-12-30 Gonzalo Paniagua Javier * Socket.cs: fix for several asynchronous methods to delay exception throwing. Patch by Brad Fitzpatrick . 2003-12-18 Gonzalo Paniagua Javier * TcpListener.cs: get the LocalEndPoint from the socket after binding. Fixes bug #52329. 2003-10-20 Miguel de Icaza * TcpClient.cs: Fix void Dispose (bool disposing) to follow the pattern. It was shutting down the managed resources even in the finalizer case, it should only do that when called from IDisposable.Dipose. 2003-09-11 Lluis Sanchez Gual * NetworkStream.cs: Added [In,Out] attributes to Read method. 2003-08-24 Gonzalo Paniagua Javier * TcpListener.cs: various fixes to make the new tests pass. Closes bug #47848. 2003-08-10 Miguel de Icaza * UdpClient.cs (Receive): Fix Bug 45633; We should do a blocking call until a datagram is arrives from the remote host. This removes the 512 "magic" buffer size when we did not have any data. 2003-07-31 Gonzalo Paniagua Javier * NetworkStream.cs: * Socket.cs: fixed array boundary checks. 0 sized arrays are allowed. 2003-07-18 Andreas Nahr * Socket.cs: Added GetHashCode method 2003-07-14 Jerome Laban * Socket.cs: * ProtocolType.cs: * SocketOptionLevel.cs: * TcpListener.cs: * TcpClient.cs: * UdpClient.cs: Added IPv6 support. * IPv6MulticastOption.cs: Added for IPv6 support. 2003-05-16 Dick Porter * Socket.cs: Use Mono.Posix.UnixEndPoint if its available 2003-05-11 Gonzalo Paniagua Javier * MulticastOption.cs: patch by Jerome Laban included in bug #42393. 2003-05-05 Gonzalo Paniagua Javier * Socket.cs: (Select): don't create arrays if not needed. (Poll): call Select_internal directly. Warning: you need an up to date runtime for this to work! 2003-03-25 Gonzalo Paniagua Javier * UdpClient.cs: don't bind the socket unless .ctor (IPEndPoint) is used. Added more checks and throws. Small fixes in Send to avoid duplicating the buffer. Moved CheckIfDisposed calls to the start of the methods instead of doing the check inside a finally clause. 2003-03-03 Gonzalo Paniagua Javier * Socket.cs: (SendTo): fix from Jerome Laban . 2003-02-28 Gonzalo Paniagua Javier * Socket.cs: patch from Elan Feingold . Fixes NullReferenceException when the callback is null. 2003-02-17 Gonzalo Paniagua Javier * NetworkStream.cs: allow 0 size array in Write. 2003-02-16 Gonzalo Paniagua Javier * Socket.cs: make Worker.Connect and Receive work with non-blocking sockets. May be Receive* and Send* in Worker need to do the same. I'll wait for bug reports. Set IsCompleted to true before invoking the end callback. Fixes bug #38136. 2003-01-23 Gonzalo Paniagua Javier * NetworkStream.cs: the check for disposed should not be done in the finally clause. 2003-01-04 Gonzalo Paniagua Javier * UdpClient.cs: fixed bug #36226. 2002-11-13 Dick Porter * Socket.cs: Only close the socket in one place, ie the Dispose method. Fixes bug 32054. 2002-11-09 Gonzalo Paniagua Javier * Socket.cs: offset == size == 0 it's ok in Send (). 2002-11-03 Phillip Pearson * TcpClient.cs: Fixed SetTcpClient() to pass through to the Client property, which now sets stream to null (it's set by GetStream()). This should make GetStream() work on a TcpClient which has had the socket set by assignment to the Client property, not only one that has been created by TcpListener.AcceptTcpClient(). 2002-10-08 Dick Porter * Socket.cs: * NetworkStream.cs: Bounds checking fixes, and better exception texts. Changes by timothyjmills@hotmail.com (Timothy J. Mills). 2002-10-03 Dick Porter * TcpClient.cs: NoDelay is a TCP option, not Socket 2002-09-16 Miguel de Icaza * SocketFlags.cs: Add missing enumeration. * UdpClient.cs: Make Dispose private. 2002-08-20 Dick Porter * Socket.cs: Fix deadlock when the AsyncResult callback calls End*(). Set the async request's worker property so it can return results. These two fixes combined fix bug 28092. 2002-06-24 Dick Porter * Socket.cs: Make SetSocketOption cope with boolean values (they are passed as objects, not the ints the runtime was expecting) 2002-05-17 Lawrence Pit * TcpListener.cs: Renamed LocalEndPoint to LocalEndpoint * NetworkStream.cs, UdpClient.cs and TcpClient.cs: modified disposable routines, added checks for disposed state. * UdpClient.cs: commented out GetHashCode and Equals as it's not overriden in ms.net implementation. 2002-05-17 Jaroslaw Kowalski * TcpClient.cs: fixed SetTcpClient so that TcpListener.AcceptTcpClient works and allows you to call GetStream() on its result 2002-04-24 Dick Porter * Socket.cs (Poll): Give correct argument to Select(), as spotted by Jaroslaw Kowalski 2002-04-16 Gonzalo Paniagua Javier * UdpClient.cs: implemented. 2002-04-02 Dick Porter * TcpListener.cs: in Start(), set the socket listen backlog value to a sane value (noticed by Jonathan Stowe ) 2002-02-13 Dick Porter * Socket.cs: Implemenent Select, Blocking, Connected, GetSocketOption, Poll, SetSocketOption and Shutdown * MulticastOption.cs: * LingerOption.cs: Delete override methods that don't need to be implemented 2002-01-23 Miguel de Icaza * NetworkStream.cs: Implement class. 2002-01-23 Dick Porter * SocketException.cs: Implemented * Socket.cs: Implemented most methods * LingerOption.cs: Made compile * AddressFamily.cs: Removed empty auto-generated comments 2002-01-17 Miguel de Icaza * SocketException.cs: Reimplemented. 2002-01-06 Ravi Pratap * ChangeLog : Add to this directory. * SocketException.cs, TcpClient.cs, TcpListener.cs : MonoTODO attribute decoration.