2 2009-01-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
4 * TcpClient.cs: use IPv6Any when the family is IPv6.
7 2008-12-30 Bill Holmes <billholmes54@gmail.com>
9 * Socket.cs (Accept_internal) : Changing the signature to pass
12 Code is contributed under MIT/X11 license.
14 2008-12-20 Miguel de Icaza <miguel@novell.com>
16 * SocketException.cs: Add missing API.
18 * SocketAsyncEventArgs.cs (Dispose): this has to be a public
19 member according to the specs.
21 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
23 * Socket.cs: add a new ReceiveFrom_nocheck that does not throw an
24 exception in case of error.
26 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
28 * Socket.cs: if Blocking is set, translate a WouldBlock into a
31 2008-12-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
33 * UdpClient.cs: don't Poll() in Receive(), the call to ReceiveFrom
34 will block anyway. Fixes bug #455894.
36 2008-11-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
38 * Socket.cs: mark the socket as not connected when there is a pending
39 error or exception about to be thrown.
42 2008-09-10 Bill Holmes <billholmes54@gmail.com>
44 * Socket.cs : Adding a comment to provide locations where
45 changes to MonoSocketAsyncResult need to be synced.
47 Code is contributed under MIT/X11 license.
49 2008-09-06 Atsushi Enomoto <atsushi@ximian.com>
51 * Socket.cs : (SocketAsyncResult) release byte buffer early so that
52 it does not have to store extra data in pool. Fixed bug #397627.
54 2008-07-31 Jb Evain <jbevain@novell.com>
57 * NetworkStream.cs: cleanup for NET_2_1
59 * SocketException_2_1.cs: new specific version for NET_2_1.
61 2008-06-19 Dick Porter <dick@ximian.com>
63 * Socket.cs: Implement generic Send() and Receive() methods.
66 2008-06-12 Stephane Delcroix <sdelcroix@novell.com>
68 * Socket.cs: minimal changes to run in the 2.1 profile
70 2008-06-11 Stephane Delcroix <sdelcroix@novell.com>
72 * SocketAsyncEventArgs.cs: catch SocketException in ConnectAsync
73 and set the SocketError accordingly.
75 2008-05-09 Marek Habersack <mhabersack@novell.com>
77 * SocketAsyncEventArgs.cs: implemented support for executing
78 asynchronous socket actions, called from the new xxxxAsync methods
79 in Socket. The asynchronous operations do not use the ThreadPool
80 as I can't get the sample applications to work (send/receive
81 callbacks don't work) - it may change in the future.
83 * Socket.cs: implemented several xxxxAsync 2.0sp1 methods. The
84 ones not implemented for now are: ReceiveMessageFromAsync and
85 SendPacketsAsync. AcceptAsync doesn't perform the check for the
86 buffer size for now - need to implement runtime support for that.
87 Made several methods internal, so that they can be accessed from
88 SocketAsyncEventArgs code.
90 2008-05-08 Marek Habersack <mhabersack@novell.com>
92 * SocketAsyncOperation.cs, SendPacketsElement.cs,
93 SocketAsyncEventArgs.cs: added initial implementations for
94 2.0SP1/3.5 classes used in the (to be implemented) new xxxAsync
95 methods of the Socket class.
97 2008-04-17 Miguel de Icaza <miguel@novell.com>
99 * NetworkStream.cs: Throw an IOException if the socket is not
100 connected, not an ArgumentException.
102 Fixes #371923, it is also the way its documented on MSDN.
104 2008-04-13 Jb Evain <jbevain@novell.com>
106 * Socket.cs: ifdef out the Sys.Config part for the
108 Merged from the Moonlight 2 branch.
110 Wed Mar 12 20:06:07 CET 2008 Paolo Molaro <lupus@ximian.com>
112 * Socket.cs: add a static ctor so that ipv4Supported and ipv6Supported
113 are initialized (they are used by the runtime).
115 2008-02-01 Dick Porter <dick@ximian.com>
117 * TcpClient.cs: If the Connect fails (when given an array of
118 addresses) leave the socket object in a usable state. Fixes bug
121 2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
123 * NetworkStream.cs : in 2.0 Close() is not needed and does not exist.
125 2007-11-01 Miguel de Icaza <miguel@novell.com>
127 * Socket.cs: Do not set the Send and Receive buffer sizes for the
128 socket to the defaults set on Windows, they kill our performance.
130 Thanks to Zoltan Varga for tracking the performance issue down.
133 2007-10-30 Dick Porter <dick@ximian.com>
135 * UdpClient.cs: Don't set the multicast option twice. Fixes bug
138 2007-10-21 Robert Jordan <robertj@gmx.net>
140 * Socket.cs: Remove GetHashCode override from the NET_2_0
141 profile. Add LAMESPEC comment. Fixes bug #325113.
143 2007-09-22 Gert Driesen <drieseng@users.sourceforge.net>
145 * Socket.cs: Removed unused method.
147 2007-08-02 Dick Porter <dick@ximian.com>
149 * Socket.cs: Patch from Brian Nickel (brian.nickel@gmail.com) to
150 improve EndPoint handling.
152 2007-07-08 Gert Driesen <drieseng@users.sourceforge.net>
154 * Socket.cs: Code formatting. Marked not implemented methods as TODO.
155 Removed extra spaces.
157 2007-07-04 Dick Porter <dick@ximian.com>
159 * Socket.cs: Don't set DontFragment by default for IPv6 sockets.
162 2007-05-16 Adar Wesley <adarw@mainsoft.com>
164 * Socket.jvm.cs: added missing methods EndDisconnect, IOControl,
165 Send 2.0 overloads, Receive 2.0 overloads, ReceiveMessageFrom,
166 BeginReceiveMessageFrom, EndReceiveMessageFrom,
167 EndAccept 2.0 overloads, BeginSend, EndSend, BeginReceive,
168 EndReceive, SendFile, BeginSendFile, EndSendFile, Disconnect,
171 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
173 * Socket.jvm.cs: Handle property throws NotImplementedException.
175 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
181 added MonoNotSupported attribute for TARGATE_JVM.
183 2007-03-11 Gert Driesen <drieseng@users.sourceforge.net>
185 * TcpClient.cs: Do not initialize network stream in Connect. In
186 Dispose, only nullify client if network stream was not obtained.
189 2007-01-30 Ilya Kharmatsky <ilyak -at- mainsoft.com>
191 * Socket.jvm.cs: additional stubs for net_2_0 properties,
192 bug fixes (EnsureStillUsable method inserted)
194 2007-01-28 Ilya Kharmatsky <ilyak -at- mainsoft.com>
196 * Socket.jvm.cs: added stubs for net_2_0 properties and methods.
198 2007-01-26 Dick Porter <dick@ximian.com>
200 * Socket.cs: SupportsIPv6 is obsolete in the 2.0 profile. Stub
201 out BeginReceiveMessageFrom(), BeginSendFile(),
202 EndReceiveMessageFrom(), EndSendFile(), ReceiveMessageFrom(), and
205 * IPPacketInformation.cs: New in the 2.0 profile
207 * SocketFlags.cs: Remove useless (and empty) inline documentation,
210 * TcpListener.cs: Mark Server as public in the 2.0 profile.
212 * UdpClient.cs: Mark Dispose(bool) as protected in the 2.0
215 System.Net.Sockets should now be 2.0-complete.
217 2007-01-26 Dick Porter <dick@ximian.com>
219 * Socket.cs: There's no point checking the SO_ERROR status of a
220 socket after poll() or select() if we already know that connected
223 2007-01-24 Dick Porter <dick@ximian.com>
226 * SocketInformationOptions.cs:
227 * TransmitFileOptions.cs: Fix enum values
229 * AddressFamily.cs: Not Serializable in the 2.0 profile
231 2007-01-24 Dick Porter <dick@ximian.com>
233 * NetworkStream.cs: 2.0 profile updates, based on a patch by
234 Sridhar Kulkarni (sridharkulkarni@gmail.com)
236 2007-01-23 Dick Porter <dick@ximian.com>
239 * TcpClient.cs: 2.0 profile updates, based on a patch by Sridhar
240 Kulkarni (sridharkulkarni@gmail.com)
242 2007-01-22 Miguel de Icaza <miguel@novell.com>
244 * Socket.cs: Move the throw new NotImplementedException ()
245 elsewhere to prevent Moma reports.
247 2007-01-20 Dick Porter <dick@ximian.com>
249 * Socket.cs(SocketDefaults): Catch and ignore any SocketExceptions
250 thrown from setting default socket options - some platforms might
251 not support a particular default we're trying to set.
253 2007-01-11 Dick Porter <dick@ximian.com>
256 * SocketInformation.cs:
258 * UdpClient.cs: 2.0 profile updates, loosely based on a patch by
261 * SocketInformationOptions.cs:
262 * TransmitFileOptions.cs: Implemented by Sridhar Kulkarni
263 (sridharkulkarni@gmail.com)
265 Wed Dec 13 12:04:02 CET 2006 Paolo Molaro <lupus@ximian.com>
267 * Socket.cs: stub ReceiveBufferSize and SendBufferSize to
268 get ironpython to compile.
270 2006-11-23 Dick Porter <dick@ximian.com>
272 * Socket.cs: Only set Connected = true in Poll() and Select() if
273 the socket error status is 0. Fixes bug 79878.
275 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
277 * Socket.cs,NetworkStream.cs,SocketException.cs: TARGET_JVM
279 2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
281 * Socket.cs: update the SocketOperation enum.
283 2006-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
285 * Socket.cs: replace hardcoded error numbers with the SocketError
286 values. When ReceiveTimeout is set on a blocking socket, correctly
287 report timeouts in the generated exception.
289 * SocketException.cs: add new internal ctor (int, string).
291 2006-08-12 Miguel de Icaza <miguel@novell.com>
293 * Socket.cs (NoDelay): Implement.
295 2006-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
297 * Socket.cs: patch from Sanghyeon Seo that implements
298 (Send|Receive)Timeout for 2.0.
299 * MulticastOption.cs: more 2.0 stuff.
301 2006-06-28 Atsushi Enomoto <atsushi@ximian.com>
303 * Socket.cs : use ConfigurationManager.GetSection() under NET_2_0.
304 Also make sure to avoid NRE.
306 2006-06-24 Zoltan Varga <vargaz@gmail.com>
308 * Socket.cs: Add stubs for net 2.0 SendTimeout and ReceiveTimeout properties.
310 2006-06-20 Zoltan Varga <vargaz@gmail.com>
312 * ProtocolType.cs SocketOptionName.cs: Add missing net 2.0 fields.
314 2006-05-30 Gert Driesen <drieseng@users.sourceforge.net>
316 * NetworkStream.cs: Marked Dispose (bool) virtual on 1.x profile.
318 2006-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
321 * SocketError.cs: implemented Reseive/Send overloads that do not throw
322 in case of error. Patch by Tomi Valkeinen.
324 2006-03-11 Miguel de Icaza <miguel@novell.com>
326 * NetworkStream.cs (Dispose): Use the right signature depending on
327 the profile being built.
329 2006-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
331 * Socket.cs: pass something not empty to the unixep ctor.
333 2006-03-03 Dick Porter <dick@ximian.com>
335 * UdpClient.cs: Fix IPv6 family check. Fixes bug 77689.
337 2006-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
339 * TcpClient.cs: when the socket is not connected, don't try to set the
340 socket options, as they are ignored on linux. Wait until Connect
341 succeeds and then apply the options.
343 2006-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
345 * Socket.cs: added a missing overload for SetSocketOption.
347 2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
349 * Socket.cs: use the 2.0 configuration classes when checking for IPv6
352 2006-01-04 Sebastien Pouliot <sebastien@ximian.com>
354 * TcpClient.cs: The Client property is public in 2.0 while it was
355 protected in earlier release. Fix bug #77048.
357 2005-12-07 Robert Jordan <robertj@gmx.net>
359 * SocketError.cs: Added.
360 * SocketException: Implemented SocketErrorCode. Fixes bug #76915.
362 2005-10-11 Dick Porter <dick@ximian.com>
364 * Socket.cs: Don't call connect(2) twice for non-blocking sockets,
365 it breaks on macos (and probably other bsd-based stacks too,) use
366 poll() and getsockopt() to check if it worked.
368 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
370 * Socket.cs: add checks for 'disposed' all over. Fixes bug #76249.
372 2005-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
374 * TcpClient.cs: patch by Hans Kratz that uses an integer when setting
375 NoDelay instead of a bool, which is only handled in 2.0.
377 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
379 * Socket.cs: disallow connecting to .Any addresses. Fixes bug #75154.
381 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
383 * Socket.cs: adapted Select to the new Select_internal that uses poll()
384 instead of select(). Managed part of the fix for bug #71203.
386 2005-05-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
388 * Socket.cs: apply the same hack on blocking Connect calls as the one
391 2005-05-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
393 * Socket.cs: see bug #74842, which is fixed with this patch for details
394 and test cases on the blocking behavior of accept() when close() is
395 called from another thread. The solution applied is to Abort the thread
396 that is blocking in Accept_internal() when someone calls Close (), then
397 reset the abort state if the socket is disposed and return the same
398 error as MS (10004 - interrupted).
400 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
402 * Socket.cs: match MS behavior on SetSocketOption with a boolean
403 argument. MS 1.1 throws an ArgumentException, but 2.0 turns true/false
404 into 1/0 and works fine. Fixes bug #71753. Added checks for disposed
405 in the 3 SetSocketOption.
407 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
409 * Socket.cs: if there are outstanding aio requests and one of them gets
410 an ObjectDisposedException, throw the same exception for the rest.
412 2005-05-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
414 * Socket.cs: removed hack added to fix bug #53229 (more than a year ago)
415 that kept sockets opened until all AIO operations where finished. If
416 the socket is closed, Receive returns 0 in EndReceive, the rest throw
417 the ObjectDisposedException. Set the socket handle to -1 when closing.
419 2005-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
421 * Socket.cs: Begin/End Send/SendTo guarantee that all bytes are written
422 or an exception is thrown. Fixes bug #74475.
424 2005-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
426 * Socket.cs: no need for locking in Worker. The actual read / write for
427 Receive / Send is performed in the runtime time.
429 2005-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
431 * Socket.cs: added a 'blocking' field that is passed to the runtime.
433 2005-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
435 * Socket.cs: invoke the callback after scheduling the next request for
436 the socket. Fixes bug #74539.
438 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
440 * Socket.cs: update socket connected status in an async request finishes
441 synchronously. Use 'callback' instead of 'real_callback' field, which is
444 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
446 * Socket.cs: added SocketOperation enum and 2 new fields to
447 SocketAsyncResult that are used by the runtime. Asynchronous read/write
448 are serialized so that only 1 of each kind is really 'active'.
449 Handle non-blocking connects in BeginConnect instead of doing 2 Poll()
452 * NetworkStream.cs: better message for the exception.
454 2005-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
456 * Socket.cs: remove unused async IO code.
458 2005-03-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
460 * Socket.cs: don't Poll/block in Connect aither.
462 2005-02-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
464 * Socket.cs: don't block on Accept if the socket is non-blocking.
465 Fixes bug #73053. Patch by Ankit Jain.
467 2005-02-23 Dick Porter <dick@ximian.com>
469 * UdpClient.cs: Set the Broadcast option, as apparently the MS
470 runtime defaults make UDP sockets broadcastable.
472 2004-12-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
474 * Socket.cs: for Receive*/Send*, don't set the connected status to false
475 when the error is EINPROGRESS or EWOULDBLOCK.
477 2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
479 * NetworkStream.cs: Write should ensure that writes all the contents
480 of the buffer. Fixes bug #70123. Besos para Miguelito.
482 2004-10-14 Dick Porter <dick@ximian.com>
484 * Socket.cs (Sockets ): Set Accept()ed socket blocking status to
485 be the same as the listening socket. This follows MS behaviour.
487 2004-08-04 Dick Porter <dick@ximian.com>
489 * Socket.cs: Update Connected state in Select and Poll; this is
490 when we find out that non-blocking Connects succeed. Fixes bug
493 2004-07-28 Dick Porter <dick@ximian.com>
495 * Socket.cs: ReceiveFrom might not return a valid EndPoint. Patch
496 by Nick Vaughan (dev@6wardlaw.freeserve.co.uk), fixes bug 61608.
498 2004-07-15 Dick Porter <dick@ximian.com>
500 * Socket.cs: Don't try and dereference a null array in Select()
501 (possible if a descriptor list of length 0 was passed.) Patch by
502 Nick Vaughan (dev@6wardlaw.freeserve.co.uk), fixes bug 61595.
504 2004-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
506 * Socket.cs: if'ed RemoveReferences calls.
508 2004-07-09 Dick Porter <dick@ximian.com>
510 * Socket.cs: Slight tweak to allow unknown objects to be returned
511 by GetSocketOption().
513 2004-06-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
515 * Socket.cs: connect on non-blocking sockets returns EINPROGRESS. Fixes
518 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
520 * Socket.cs: wrong error code in connect and accept. EWOULDBLOCK is
521 10035. Fixes bug #60563.
523 2004-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
525 * Socket.cs: fixed Accept for non-blocking sockets.
527 2004-06-10 Gert Driesen <drieseng@users.sourceforge.net>
529 * LingerOption.cs: marked field private to fix API signature
530 * MulticastOption.cs: marked field private to fix API signature
532 2004-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
534 * Socket.cs: throw ArgumentNullException if all the list are null OR
535 empty. Fixes bug #59632.
537 2004-05-21 Patrik Torstensson <totte@hiddenpeaks.com>
539 * TcpListener.cs: Fixes a lot of the problems with remoting nunit tests.
541 (AcceptTcpClient): Don't create TcpClient before a
542 connection is accepted.
544 (LocalEndPoint): Use Server LocalEndPoint if connected
545 otherwise use endpoint from ctor.
547 (Init): Save end point, not server endpoint. This did
548 cause TcpListener to ignore port sent via constructor.
550 (Pending): Fixed wait time (method should return directly)
552 (Start): Moved Bind here instead of Init method; old method
553 caused us to bind ports even if the listener was stopped.
555 (Stop): Null server when stopping
557 2004-05-13 Dick Porter <dick@ximian.com>
560 * TcpClient.cs: Public API fixes
562 2004-05-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
564 * Socket.cs: fixed Connect for non-blocking sockets. Closes bug #58169.
566 2004-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
568 * Socket.cs: fix for BeginConnect and non-blocking sockets.
570 2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
572 * Socket.cs: Use assembly name const to load Mono.Posix.
574 2004-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
576 * Socket.cs: only enable socket AIO if MONO_ENABLE_SOCKET_AIO is there.
577 I will remove this once THE bug is hunted.
579 2004-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
581 * Socket.cs: added support for unmanaged asynchronous IO. Speed up
583 * UdpClient.cs: fixed Dispose so that it only closes the socket when
586 2004-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
588 * Socket.cs: added GetSupportsAsync and Poll_internal internal calls.
589 Cleaned up Worker class: moved fields to SocketAsyncResult and use Poll
590 when the socket is non-blocking before getting EWOULDBLOCK error.
592 2004-04-08 Dick Porter <dick@ximian.com>
594 * Socket.cs: Rearrange the internal calls so that the exceptions
595 are thrown from managed code
597 2004-03-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
599 * Socket.cs: when Dispose (bool) is called from the finalizer, always
600 do the cleanup. Fixes yet another nullref with xsp.
602 2004-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
604 * Socket.cs: implemented IOControl.
606 2004-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
608 * Socket.cs: use the threadpool for asynchronous calls instead of
609 creating new threads.
611 2004-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
613 * Socket.cs: added locks around waithandle assign and comparison in
614 class Worker. Handle other exceptions than SocketException for
615 non-blocking sockets.
617 2004-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
619 * Socket.cs: handle WSAEWOULDBLOCK for non-blocking sockets. Fixes
620 bug #53168. Avoid the creation of the ManualResetEvent in class Worker
623 2004-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
625 * Socket.cs: if we have a pending async event, delay socket closing
626 until EndX is called. Fixes bug #53229. Check parameters and if the
627 socket has been disposed. Implemented IDisposable explicitly. The
628 threads created have IsBackground = true now.
630 2004-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
632 * Socket.cs: patch from Brad Fitzpatrick <brad@danga.com> episode 2.
634 2003-12-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
636 * Socket.cs: fix for several asynchronous methods to delay exception
637 throwing. Patch by Brad Fitzpatrick <brad@danga.com>.
639 2003-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
641 * TcpListener.cs: get the LocalEndPoint from the socket after binding.
644 2003-10-20 Miguel de Icaza <miguel@ximian.com>
646 * TcpClient.cs: Fix void Dispose (bool disposing) to follow the
647 pattern. It was shutting down the managed resources even in the
648 finalizer case, it should only do that when called from
651 2003-09-11 Lluis Sanchez Gual <lluis@ximian.com>
653 * NetworkStream.cs: Added [In,Out] attributes to Read method.
655 2003-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
657 * TcpListener.cs: various fixes to make the new tests pass. Closes
660 2003-08-10 Miguel de Icaza <miguel@ximian.com>
662 * UdpClient.cs (Receive): Fix Bug 45633; We should do a blocking
663 call until a datagram is arrives from the remote host. This
664 removes the 512 "magic" buffer size when we did not have any data.
666 2003-07-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
669 * Socket.cs: fixed array boundary checks. 0 sized arrays are allowed.
671 2003-07-18 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
673 * Socket.cs: Added GetHashCode method
675 2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
679 * SocketOptionLevel.cs:
686 * IPv6MulticastOption.cs: Added for IPv6 support.
688 2003-05-16 Dick Porter <dick@ximian.com>
690 * Socket.cs: Use Mono.Posix.UnixEndPoint if its available
692 2003-05-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
694 * MulticastOption.cs: patch by Jerome Laban included in bug #42393.
696 2003-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
699 (Select): don't create arrays if not needed.
700 (Poll): call Select_internal directly.
702 Warning: you need an up to date runtime for this to work!
704 2003-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
706 * UdpClient.cs: don't bind the socket unless .ctor (IPEndPoint) is used.
707 Added more checks and throws.
708 Small fixes in Send to avoid duplicating the buffer.
709 Moved CheckIfDisposed calls to the start of the methods instead of doing
710 the check inside a finally clause.
712 2003-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
715 (SendTo): fix from Jerome Laban <jlaban@wanadoo.fr>.
717 2003-02-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
719 * Socket.cs: patch from Elan Feingold <efeingold@mn.rr.com>. Fixes
720 NullReferenceException when the callback is null.
722 2003-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
724 * NetworkStream.cs: allow 0 size array in Write.
726 2003-02-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
728 * Socket.cs: make Worker.Connect and Receive work with non-blocking
729 sockets. May be Receive* and Send* in Worker need to do the same. I'll
730 wait for bug reports. Set IsCompleted to true before invoking the end
731 callback. Fixes bug #38136.
733 2003-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
735 * NetworkStream.cs: the check for disposed should not be done in the
738 2003-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
740 * UdpClient.cs: fixed bug #36226.
742 2002-11-13 Dick Porter <dick@ximian.com>
744 * Socket.cs: Only close the socket in one place, ie the Dispose
745 method. Fixes bug 32054.
747 2002-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
749 * Socket.cs: offset == size == 0 it's ok in Send ().
751 2002-11-03 Phillip Pearson <pp@myelin.co.nz>
753 * TcpClient.cs: Fixed SetTcpClient() to pass through to the Client
754 property, which now sets stream to null (it's set by GetStream()). This
755 should make GetStream() work on a TcpClient which has had the socket set
756 by assignment to the Client property, not only one that has been created
757 by TcpListener.AcceptTcpClient().
759 2002-10-08 Dick Porter <dick@ximian.com>
762 * NetworkStream.cs: Bounds checking fixes, and better exception
763 texts. Changes by timothyjmills@hotmail.com (Timothy J. Mills).
765 2002-10-03 Dick Porter <dick@ximian.com>
767 * TcpClient.cs: NoDelay is a TCP option, not Socket
769 2002-09-16 Miguel de Icaza <miguel@ximian.com>
771 * SocketFlags.cs: Add missing enumeration.
773 * UdpClient.cs: Make Dispose private.
775 2002-08-20 Dick Porter <dick@ximian.com>
777 * Socket.cs: Fix deadlock when the AsyncResult callback calls
778 End*(). Set the async request's worker property so it can return
779 results. These two fixes combined fix bug 28092.
781 2002-06-24 Dick Porter <dick@ximian.com>
783 * Socket.cs: Make SetSocketOption cope with boolean values (they
784 are passed as objects, not the ints the runtime was expecting)
786 2002-05-17 Lawrence Pit <loz@cable.a2000.nl>
787 * TcpListener.cs: Renamed LocalEndPoint to LocalEndpoint
788 * NetworkStream.cs, UdpClient.cs and TcpClient.cs: modified disposable
789 routines, added checks for disposed state.
790 * UdpClient.cs: commented out GetHashCode and Equals as it's not
791 overriden in ms.net implementation.
793 2002-05-17 Jaroslaw Kowalski <jarek@atm.com.pl>
794 * TcpClient.cs: fixed SetTcpClient so that
795 TcpListener.AcceptTcpClient works and allows
796 you to call GetStream() on its result
798 2002-04-24 Dick Porter <dick@ximian.com>
800 * Socket.cs (Poll): Give correct argument to Select(), as spotted
801 by Jaroslaw Kowalski <jarek@atm.com.pl>
803 2002-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
805 * UdpClient.cs: implemented.
807 2002-04-02 Dick Porter <dick@ximian.com>
809 * TcpListener.cs: in Start(), set the socket listen backlog value
810 to a sane value (noticed by Jonathan Stowe <gellyfish@gellyfish.com>)
812 2002-02-13 Dick Porter <dick@ximian.com>
814 * Socket.cs: Implemenent Select, Blocking, Connected,
815 GetSocketOption, Poll, SetSocketOption and Shutdown
817 * MulticastOption.cs:
818 * LingerOption.cs: Delete override methods that don't need to be
821 2002-01-23 Miguel de Icaza <miguel@ximian.com>
823 * NetworkStream.cs: Implement class.
825 2002-01-23 Dick Porter <dick@ximian.com>
827 * SocketException.cs: Implemented
829 * Socket.cs: Implemented most methods
831 * LingerOption.cs: Made compile
833 * AddressFamily.cs: Removed empty auto-generated comments
835 2002-01-17 Miguel de Icaza <miguel@ximian.com>
837 * SocketException.cs: Reimplemented.
839 2002-01-06 Ravi Pratap <ravi@ximian.com>
841 * ChangeLog : Add to this directory.
843 * SocketException.cs, TcpClient.cs, TcpListener.cs : MonoTODO
844 attribute decoration.