File: ChangeLog

package info (click to toggle)
mono 2.6.7-5.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 327,344 kB
  • ctags: 413,649
  • sloc: cs: 2,471,883; xml: 1,768,594; ansic: 350,665; sh: 13,644; makefile: 8,640; perl: 1,784; asm: 717; cpp: 209; python: 146; sql: 81; sed: 16
file content (1044 lines) | stat: -rw-r--r-- 34,764 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
2010-03-23 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: error handling was totally broken in the synchronous
	Connect() call.  Fixes bug #590488.

2010-01-21  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Apply Gendarme's ProtectCallToEventDelegatesRule
	[Backport r150033]

2009-12-04  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Implement ConnectByNameError for 
	Moonlight 3

2009-11-10 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket_2_1.cs: throw when shutting down a socket that is not
	connected. Don't linger if the socket is not connected.

2009-11-03 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket_2_1.cs: stop any blocking thread before closing the socket.

2009-11-03  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Set error back to SocketError.Success
	once CheckEndPoint succeed.
	[Fix bug #549586]
	[Backport r145329]

2009-10-21 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: implement *SendFile().

2009-09-28  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Default SocketError.AccessDenied on 
	Connect in case none of the DnsEndPoint provides an adequate 
	address (family).
	[Backport r142746]

2009-09-27 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket_2_1.cs: Close(int timeout) blocks up to timeout ms if there's
	pending data to be written to the socket. If there's no pending data,
	it closes and returns right away. Instead of using Timer and then
	doing a 'hard' close(), we set the linger option for the socket.

2009-09-27  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Don't use Socket.Poll for NET_2_1.
	Throw NIE for use of BufferList in Receive.
	* Socket.cs: Move Close(int) to Socket_2_1.cs. Remove NET_2_1
	defines since the file is not used by Moonlight
	* Socket_2_1.cs: Add Close(int) from Socket. Define out Poll
	and Blocking.
	[Backport r142722]

2009-09-26  Sebastien Pouliot  <sebastien@ximian.com>

	* SocketAsyncEventArgs.cs: Fix paramater validations and default 
	values
	[Backport r142675]

2009-09-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket_2_1.cs: Remove NET_2_1 socket policy checks from here.
	* SocketAsyncEventArgs.cs: Support DnsEndPoint correctly (NET_2_1 but
	that will be useful for NET_4_0 soon). Add socket policy checks here
	since it could be called several times to connect to a host.

2009-09-23 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* NetworkStream.cs: after disposing the stream, CanRead/CanWrite
	return false.

2009-09-19 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* SocketAsyncEventArgs.cs: fix check for non-null.
	Fixes bug #516455.

2009-07-14  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket_2_1.cs, SocketAsyncEventArgs.cs: A bit more NET_2_1 defines
	to help the tuner remove some extra types for moonlight.

2009-06-28  Gert Driesen  <drieseng@users.sourceforge.net>

	* Socket.cs: Modified some argument names to match MS. Moved disposed
	check before argument checks in Receive. Use SocketError.InvalidArgument
	instead of using magic numbers. Added back comments that was
	accidentally removed in my previous commit.
	* Socket_2_1.cs: Modified some argument names to match MS.

2009-06-28  Gert Driesen  <drieseng@users.sourceforge.net>

	* Socket.cs: In GetSocketOption, throw SocketException when (byte [])
	option value is null. Use SocketError fields instead of using "magic"
	number. In SetSocketOption (SocketOptionLevel, SocketOptionName, object)
	only accept Linger, AddMembership, DropMembership and verify option
	value.
	* MulticastOption.cs: Added argument checks. Save interfaceIndex that is
	passed to .ctor, and removed MonoTODO. Renamed arguments to match MS.
	Reset InterfaceIndex when LocalAddress is modified, and reset
	LocalAddress when InterfaceIndex is modified.
	* UdpClient.cs: Modified exception to more closely match MS. Fixed
	(int, AddressFamily) .ctor to construct IPv6 endpoint when family is
	InterNetworkV6. Added null check for multicastAddr to (IPAddress)
	JoinMulticastGroup overload. In (int, IPAddress) and (IPAddress,
	IPAddress) overloads of JoinMulticastGroup throw SocketException when
	client is IPv4. Added null check for multicastAddr to (IPAddress, int),
	overload, and moved JoinMulticastGroup call after argument checks.
	* IPv6MulticastOption.cs: Renamed argument names to match MS. Added
	null check to set_Group. Added range check to set_InterfaceIndex.

2009-06-27 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: turn WSAEINVAL into ArgumentException.

2009-06-26 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: MS throws a SocketException in the byte[] overload when
	the value is null.

2009-05-22  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket_2_1.cs: Do not throw a SecurityException if the security
	policy check fails in NET_2_1 but set the SocketError to AccessDenied
	ensure the EndPoint has a valid policy before connecting.
	* SocketAsyncEventArgs.cs: Don't recurse endlessly in SendCallback
	and ReceiveCallback if the socket is not connected. Check for
	AccessDenied in ConnectCallback (needed for the security policy
	check in NET_2_1).

2009-05-14  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket_2_1.cs: Add ConnectAsync support for NET_2_1 which will
	ensure the EndPoint has a valid policy before connecting.
	* SocketAsyncEventArgs.cs: Add support for IList<ArraySegment<byte>>
	when sending. Add ConnectSocket for NET_2_1

2009-05-11 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TcpClient.cs:
	* Socket.cs:
	* UdpClient.cs: use GetHostAddresses() instead of Resolve or
	GetHostEntry.

2009-05-11 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* UdpClient.cs: if possible, avoid DNS lookups when the host name is
	an IP address. Related to bug #502866.

2009-04-30 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: return the last error if a connect to multiple addresses
	fails.

2009-04-22  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket_2_1.cs: Use old-n-simple CheckProtocolSupport to implement
	OSSupportsIP[v4|v6] for Moonlight (NET_2_1 only) so we can avoid 
	including a bunch of types (22) from System.Net.NetworkInformation 
	and drop the number of [SecuritySafeCritical] methods to audit (the 
	same 22) and [SecurityCritical] (8) beside getting a smaller 
	System.Net.dll assembly :)

2009-04-21 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: End* methods can only be called once per IAsyncResult.
	Bug #466031 fixed.

2009-04-09  Sebastien Pouliot  <sebastien@ximian.com>

	* Socket.cs: Split socket class into two files (this one and the
	new Socket_2_1.cs). This let us remove (some) existing #if in the
	sources and avoid (a lot) of new ones for Moonlight.
	* Socket_2_1.cs: Just enough of socket for NET_2_1. This helps
	the tuner not to bring a lot of extra stuff (some visible)
	into Moonlight.
	* SocketAsyncEventArgs.cs: Ifdef out some cases for NET_2_1 so 
	Moonlight can use it's own (smaller) SocketAsyncOperation enum

2009-02-17 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: instead of clearing the sockets form the output and then
	adding them back, we just remove the ones that have not been signaled.
	Fixes bug #354090 and bug #476138.

2009-01-19 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: don't throw when there's no ipv6 configuration.

2009-01-09  Dick Porter  <dick@ximian.com>

	* Socket.cs: Special case 0-length receive requests in the
	BeginAccept overloads that wait for data, so they behave as the
	non-waiting version.  Seems to match MS behaviour, fixes bug
	464201.

2009-01-06 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TcpClient.cs: use IPv6Any when the family is IPv6.
	Bug #462688 fixed.

2008-12-30  Bill Holmes  <billholmes54@gmail.com>

	* Socket.cs (Accept_internal) :  Changing the signature to pass 
	  the blocking state.

	Code is contributed under MIT/X11 license.

2008-12-20  Miguel de Icaza  <miguel@novell.com>

	* SocketException.cs: Add missing API.

	* SocketAsyncEventArgs.cs (Dispose): this has to be a public
	member according to the specs.

2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: add a new ReceiveFrom_nocheck that does not throw an
	exception in case of error.

2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: if Blocking is set, translate a WouldBlock into a
	TimedOut.

2008-12-03 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* UdpClient.cs: don't Poll() in Receive(), the call to ReceiveFrom
	will block anyway. Fixes bug #455894.

2008-11-12 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Socket.cs: mark the socket as not connected when there is a pending
	error or exception about to be thrown.
	Bug #443346 fixed.

2008-09-10  Bill Holmes  <billholmes54@gmail.com>

	* Socket.cs : Adding a comment to provide locations where
	  changes to MonoSocketAsyncResult need to be synced.

	Code is contributed under MIT/X11 license.

2008-09-06  Atsushi Enomoto  <atsushi@ximian.com>

	* Socket.cs : (SocketAsyncResult) release byte buffer early so that
	  it does not have to store extra data in pool. Fixed bug #397627.

2008-07-31  Jb Evain  <jbevain@novell.com>

	* Socket.cs
	* NetworkStream.cs: cleanup for NET_2_1

	* SocketException_2_1.cs: new specific version for NET_2_1.

2008-06-19  Dick Porter  <dick@ximian.com>

	* Socket.cs: Implement generic Send() and Receive() methods.
	Fixes bug 395168.

2008-06-12  Stephane Delcroix  <sdelcroix@novell.com>

	* Socket.cs: minimal changes to run in the 2.1 profile

2008-06-11  Stephane Delcroix  <sdelcroix@novell.com>

	* SocketAsyncEventArgs.cs: catch SocketException in ConnectAsync
	and set the SocketError accordingly.

2008-05-09  Marek Habersack  <mhabersack@novell.com>

	* SocketAsyncEventArgs.cs: implemented support for executing
	asynchronous socket actions, called from the new xxxxAsync methods
	in Socket. The asynchronous operations do not use the ThreadPool
	as I can't get the sample applications to work (send/receive
	callbacks don't work) - it may change in the future.

	* Socket.cs: implemented several xxxxAsync 2.0sp1 methods. The
	ones not implemented for now are: ReceiveMessageFromAsync and
	SendPacketsAsync. AcceptAsync doesn't perform the check for the
	buffer size for now - need to implement runtime support for that.
	Made several methods internal, so that they can be accessed from
	SocketAsyncEventArgs code.

2008-05-08  Marek Habersack  <mhabersack@novell.com>

	* SocketAsyncOperation.cs, SendPacketsElement.cs,
	SocketAsyncEventArgs.cs: added initial implementations for
	2.0SP1/3.5 classes used in the (to be implemented) new xxxAsync
	methods of the Socket class.

2008-04-17  Miguel de Icaza  <miguel@novell.com>

	* NetworkStream.cs: Throw an IOException if the socket is not
	connected, not an ArgumentException.   

	Fixes #371923, it is also the way its documented on MSDN. 

2008-04-13  Jb Evain  <jbevain@novell.com>

	* Socket.cs: ifdef out the Sys.Config part for the
	2.1 profile.
	Merged from the Moonlight 2 branch.

Wed Mar 12 20:06:07 CET 2008 Paolo Molaro <lupus@ximian.com>

	* Socket.cs: add a static ctor so that ipv4Supported and ipv6Supported
	are initialized (they are used by the runtime).

2008-02-01  Dick Porter  <dick@ximian.com>

	* TcpClient.cs: If the Connect fails (when given an array of
	addresses) leave the socket object in a usable state.  Fixes bug
	355473.

2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>

	* NetworkStream.cs : in 2.0 Close() is not needed and does not exist.

2007-11-01  Miguel de Icaza  <miguel@novell.com>

	* Socket.cs: Do not set the Send and Receive buffer sizes for the
	socket to the defaults set on Windows, they kill our performance.

	Thanks to Zoltan Varga for tracking the performance issue down.
	The bug was #325032

2007-10-30  Dick Porter  <dick@ximian.com>

	* UdpClient.cs: Don't set the multicast option twice.  Fixes bug
	324033.

2007-10-21  Robert Jordan  <robertj@gmx.net>

	* Socket.cs: Remove GetHashCode override from the NET_2_0
	profile. Add LAMESPEC comment. Fixes bug #325113.

2007-09-22  Gert Driesen  <drieseng@users.sourceforge.net>

	* Socket.cs: Removed unused method.

2007-08-02  Dick Porter  <dick@ximian.com>

	* Socket.cs: Patch from Brian Nickel (brian.nickel@gmail.com) to
	improve EndPoint handling.

2007-07-08  Gert Driesen  <drieseng@users.sourceforge.net>

	* Socket.cs: Code formatting. Marked not implemented methods as TODO.
	Removed extra spaces.

2007-07-04  Dick Porter  <dick@ximian.com>

	* Socket.cs: Don't set DontFragment by default for IPv6 sockets.
	Fixes bug 81985.

2007-05-16 Adar Wesley <adarw@mainsoft.com>

	* Socket.jvm.cs: added missing methods EndDisconnect, IOControl,
	Send 2.0 overloads, Receive 2.0 overloads, ReceiveMessageFrom,
	BeginReceiveMessageFrom, EndReceiveMessageFrom, 
	EndAccept 2.0 overloads, BeginSend, EndSend, BeginReceive, 
	EndReceive, SendFile, BeginSendFile, EndSendFile, Disconnect,
	DuplicateAndClose

2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>

	* Socket.jvm.cs: Handle property throws NotImplementedException.	

2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>

	* NetworkStream.cs:
	* TcpClient.cs:
	* TcpListener.cs:
	* UdpClient.cs:			
	added MonoNotSupported attribute for TARGATE_JVM.	
		
2007-03-11  Gert Driesen  <drieseng@users.sourceforge.net>

	* TcpClient.cs: Do not initialize network stream in Connect. In
	Dispose, only nullify client if network stream was not obtained.
	Fixes bug #81105.

2007-01-30  Ilya Kharmatsky <ilyak -at- mainsoft.com>

	* Socket.jvm.cs: additional stubs for net_2_0 properties,
	bug fixes (EnsureStillUsable method inserted)

2007-01-28  Ilya Kharmatsky <ilyak -at- mainsoft.com>

	* Socket.jvm.cs: added stubs for net_2_0 properties and methods.

2007-01-26  Dick Porter  <dick@ximian.com>

	* Socket.cs: SupportsIPv6 is obsolete in the 2.0 profile.  Stub
	out BeginReceiveMessageFrom(), BeginSendFile(),
	EndReceiveMessageFrom(), EndSendFile(), ReceiveMessageFrom(), and
	SendFile().

	* IPPacketInformation.cs: New in the 2.0 profile

	* SocketFlags.cs: Remove useless (and empty) inline documentation,
	and add 2.0 items.

	* TcpListener.cs: Mark Server as public in the 2.0 profile.

	* UdpClient.cs: Mark Dispose(bool) as protected in the 2.0
	profile.

	System.Net.Sockets should now be 2.0-complete.

2007-01-26  Dick Porter  <dick@ximian.com>

	* Socket.cs: There's no point checking the SO_ERROR status of a
	socket after poll() or select() if we already know that connected
	== true.

2007-01-24  Dick Porter  <dick@ximian.com>

	* IOControlCode.cs: 
	* SocketInformationOptions.cs: 
	* TransmitFileOptions.cs: Fix enum values

	* AddressFamily.cs: Not Serializable in the 2.0 profile

2007-01-24  Dick Porter  <dick@ximian.com>

	* NetworkStream.cs: 2.0 profile updates, based on a patch by
	Sridhar Kulkarni (sridharkulkarni@gmail.com)

2007-01-23  Dick Porter  <dick@ximian.com>

	* TcpListener.cs: 
	* TcpClient.cs: 2.0 profile updates, based on a patch by Sridhar
	Kulkarni (sridharkulkarni@gmail.com)

2007-01-22  Miguel de Icaza  <miguel@novell.com>

	* Socket.cs: Move the throw new NotImplementedException ()
	elsewhere to prevent Moma reports.

2007-01-20  Dick Porter  <dick@ximian.com>

	* Socket.cs(SocketDefaults): Catch and ignore any SocketExceptions
	thrown from setting default socket options - some platforms might
	not support a particular default we're trying to set.

2007-01-11  Dick Porter  <dick@ximian.com>

	* IOControlCode.cs: 
	* SocketInformation.cs: 
	* Socket.cs: 
	* UdpClient.cs: 2.0 profile updates, loosely based on a patch by
	Sridhar Kulkarni.

	* SocketInformationOptions.cs: 
	* TransmitFileOptions.cs: Implemented by Sridhar Kulkarni
	(sridharkulkarni@gmail.com)

Wed Dec 13 12:04:02 CET 2006 Paolo Molaro <lupus@ximian.com>

	* Socket.cs: stub ReceiveBufferSize and SendBufferSize to
	get ironpython to compile.

2006-11-23  Dick Porter  <dick@ximian.com>

	* Socket.cs: Only set Connected = true in Poll() and Select() if
	the socket error status is 0.  Fixes bug 79878.

2006-09-28 Andrew Skiba <andrews@mainsoft.com>

	* Socket.cs,NetworkStream.cs,SocketException.cs: TARGET_JVM

2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: update the SocketOperation enum.

2006-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: replace hardcoded error numbers with the SocketError
	values. When ReceiveTimeout is set on a blocking socket, correctly
	report timeouts in the generated exception.
	
	* SocketException.cs: add new internal ctor (int, string).

2006-08-12  Miguel de Icaza  <miguel@novell.com>

	* Socket.cs (NoDelay): Implement.

2006-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: patch from Sanghyeon Seo that implements
	(Send|Receive)Timeout for 2.0.
	* MulticastOption.cs: more 2.0 stuff.

2006-06-28  Atsushi Enomoto  <atsushi@ximian.com>

	* Socket.cs : use ConfigurationManager.GetSection() under NET_2_0.
	  Also make sure to avoid NRE.

2006-06-24  Zoltan Varga  <vargaz@gmail.com>

	* Socket.cs: Add stubs for net 2.0 SendTimeout and ReceiveTimeout properties.

2006-06-20  Zoltan Varga  <vargaz@gmail.com>

	* ProtocolType.cs SocketOptionName.cs: Add missing net 2.0 fields.

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

	* NetworkStream.cs: Marked Dispose (bool) virtual on 1.x profile.

2006-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs:
	* SocketError.cs: implemented Reseive/Send overloads that do not throw
	in case of error. Patch by Tomi Valkeinen.

2006-03-11  Miguel de Icaza  <miguel@novell.com>

	* NetworkStream.cs (Dispose): Use the right signature depending on
	the profile being built.

2006-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: pass something not empty to the unixep ctor.

2006-03-03  Dick Porter  <dick@ximian.com>

	* UdpClient.cs: Fix IPv6 family check.  Fixes bug 77689.

2006-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TcpClient.cs: when the socket is not connected, don't try to set the
	socket options, as they are ignored on linux. Wait until Connect
	succeeds and then apply the options.

2006-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: added a missing overload for SetSocketOption.

2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: use the 2.0 configuration classes when checking for IPv6
	support.

2006-01-04  Sebastien Pouliot  <sebastien@ximian.com>

	* TcpClient.cs: The Client property is public in 2.0 while it was
	protected in earlier release. Fix bug #77048.

2005-12-07  Robert Jordan  <robertj@gmx.net>

	* SocketError.cs: Added.
	* SocketException: Implemented SocketErrorCode. Fixes bug #76915.

2005-10-11  Dick Porter  <dick@ximian.com>

	* Socket.cs: Don't call connect(2) twice for non-blocking sockets,
	it breaks on macos (and probably other bsd-based stacks too,) use
	poll() and getsockopt() to check if it worked.

2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: add checks for 'disposed' all over. Fixes bug #76249.

2005-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TcpClient.cs: patch by Hans Kratz that uses an integer when setting
	NoDelay instead of a bool, which is only handled in 2.0.

2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: disallow connecting to .Any addresses. Fixes bug #75154.

2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: adapted Select to the new Select_internal that uses poll()
	instead of select(). Managed part of the fix for bug #71203.

2005-05-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: apply the same hack on blocking Connect calls as the one
	used in Accept.

2005-05-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: see bug #74842, which is fixed with this patch for details
	and test cases on the blocking behavior of accept() when close() is
	called from another thread. The solution applied is to Abort the thread
	that is blocking in Accept_internal() when someone calls Close (), then
	reset the abort state if the socket is disposed and return the same
	error as MS (10004 - interrupted).

2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: match MS behavior on SetSocketOption with a boolean
	argument. MS 1.1 throws an ArgumentException, but 2.0 turns true/false
	into 1/0 and works fine. Fixes bug #71753. Added checks for disposed
	in the 3 SetSocketOption.

2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: if there are outstanding aio requests and one of them gets
	an ObjectDisposedException, throw the same exception for the rest.

2005-05-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: removed hack added to fix bug #53229 (more than a year ago)
	that kept sockets opened until all AIO operations where finished. If
	the socket is closed, Receive returns 0 in EndReceive, the rest throw
	the ObjectDisposedException. Set the socket handle to -1 when closing.

2005-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: Begin/End Send/SendTo guarantee that all bytes are written
	or an exception is thrown. Fixes bug #74475.

2005-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: no need for locking in Worker. The actual read / write for
	Receive / Send is performed in the runtime time.

2005-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: added a 'blocking' field that is passed to the runtime.

2005-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: invoke the callback after scheduling the next request for
	the socket. Fixes bug #74539.

2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: update socket connected status in an async request finishes
	synchronously. Use 'callback' instead of 'real_callback' field, which is
	now unused.

2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: added SocketOperation enum and 2 new fields to
	SocketAsyncResult that are used by the runtime. Asynchronous read/write
	are serialized so that only 1 of each kind is really 'active'.
	Handle non-blocking connects in BeginConnect instead of doing 2 Poll()
	in the threadpool.

	* NetworkStream.cs: better message for the exception.

2005-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: remove unused async IO code.

2005-03-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: don't Poll/block in Connect aither.

2005-02-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: don't block on Accept if the socket is non-blocking.
	Fixes bug #73053. Patch by Ankit Jain.

2005-02-23  Dick Porter  <dick@ximian.com>

	* UdpClient.cs: Set the Broadcast option, as apparently the MS
	runtime defaults make UDP sockets broadcastable.

2004-12-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: for Receive*/Send*, don't set the connected status to false
	when the error is EINPROGRESS or EWOULDBLOCK.

2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* NetworkStream.cs: Write should ensure that writes all the contents
	of the buffer. Fixes bug #70123. Besos para Miguelito.

2004-10-14  Dick Porter  <dick@ximian.com>

	* Socket.cs (Sockets ): Set Accept()ed socket blocking status to
	be the same as the listening socket.  This follows MS behaviour.

2004-08-04  Dick Porter  <dick@ximian.com>

	* Socket.cs: Update Connected state in Select and Poll; this is
	when we find out that non-blocking Connects succeed.  Fixes bug
	62398.

2004-07-28  Dick Porter  <dick@ximian.com>

	* Socket.cs: ReceiveFrom might not return a valid EndPoint.  Patch
	by Nick Vaughan (dev@6wardlaw.freeserve.co.uk), fixes bug 61608.

2004-07-15  Dick Porter  <dick@ximian.com>

	* Socket.cs: Don't try and dereference a null array in Select()
	(possible if a descriptor list of length 0 was passed.)  Patch by
	Nick Vaughan (dev@6wardlaw.freeserve.co.uk), fixes bug 61595.

2004-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: if'ed RemoveReferences calls.

2004-07-09  Dick Porter  <dick@ximian.com>

	* Socket.cs: Slight tweak to allow unknown objects to be returned
	by GetSocketOption().

2004-06-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: connect on non-blocking sockets returns EINPROGRESS. Fixes
	bug #60811.

2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: wrong error code in connect and accept. EWOULDBLOCK is
	10035. Fixes bug #60563.

2004-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: fixed Accept for non-blocking sockets.

2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>

	* LingerOption.cs: marked field private to fix API signature
	* MulticastOption.cs: marked field private to fix API signature

2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: throw ArgumentNullException if all the list are null OR
	empty. Fixes bug #59632.

2004-05-21  Patrik Torstensson <totte@hiddenpeaks.com>

	* 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  <dick@ximian.com>

	* UdpClient.cs: 
	* TcpClient.cs: Public API fixes

2004-05-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: fixed Connect for non-blocking sockets. Closes bug #58169.

2004-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: fix for BeginConnect and non-blocking sockets.

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

	* Socket.cs: Use assembly name const to load Mono.Posix.

2004-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* 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  <dick@ximian.com>

	* Socket.cs: Rearrange the internal calls so that the exceptions
	are thrown from managed code

2004-03-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* Socket.cs: implemented IOControl.

2004-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: use the threadpool for asynchronous calls instead of
	creating new threads.

2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* Socket.cs: patch from Brad Fitzpatrick <brad@danga.com> episode 2.

2003-12-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: fix for several asynchronous methods to delay exception
	throwing.  Patch by Brad Fitzpatrick <brad@danga.com>.

2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TcpListener.cs: get the LocalEndPoint from the socket after binding.
	Fixes bug #52329.

2003-10-20  Miguel de Icaza  <miguel@ximian.com>

	* 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 <lluis@ximian.com>

	* NetworkStream.cs: Added [In,Out] attributes to Read method.

2003-08-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TcpListener.cs: various fixes to make the new tests pass. Closes
	bug #47848.

2003-08-10  Miguel de Icaza  <miguel@ximian.com>

	* 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 <gonzalo@ximian.com>

	* NetworkStream.cs:
	* Socket.cs: fixed array boundary checks. 0 sized arrays are allowed.

2003-07-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Socket.cs: Added GetHashCode method

2003-07-14  Jerome Laban <jlaban@wanadoo.fr>

	* 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  <dick@ximian.com>

	* Socket.cs: Use Mono.Posix.UnixEndPoint if its available

2003-05-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MulticastOption.cs: patch by Jerome Laban included in bug #42393.

2003-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* Socket.cs:
	(SendTo): fix from Jerome Laban <jlaban@wanadoo.fr>.

2003-02-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: patch from Elan Feingold <efeingold@mn.rr.com>. Fixes
	NullReferenceException when the callback is null.

2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* NetworkStream.cs: allow 0 size array in Write.

2003-02-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* 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 <gonzalo@ximian.com>

	* NetworkStream.cs: the check for disposed should not be done in the
	finally clause.

2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* UdpClient.cs: fixed bug #36226.

2002-11-13  Dick Porter  <dick@ximian.com>

	* Socket.cs: Only close the socket in one place, ie the Dispose
	method.  Fixes bug 32054.

2002-11-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Socket.cs: offset == size == 0 it's ok in Send ().

2002-11-03  Phillip Pearson  <pp@myelin.co.nz>

	* 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  <dick@ximian.com>

	* Socket.cs: 
	* NetworkStream.cs: Bounds checking fixes, and better exception
	texts.  Changes by timothyjmills@hotmail.com (Timothy J. Mills).

2002-10-03  Dick Porter  <dick@ximian.com>

	* TcpClient.cs: NoDelay is a TCP option, not Socket

2002-09-16  Miguel de Icaza  <miguel@ximian.com>

	* SocketFlags.cs: Add missing enumeration.

	* UdpClient.cs: Make Dispose private.

2002-08-20  Dick Porter  <dick@ximian.com>

	* 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  <dick@ximian.com>

	* 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 <loz@cable.a2000.nl>
 	* 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 <jarek@atm.com.pl>
	* TcpClient.cs: fixed SetTcpClient so that
	TcpListener.AcceptTcpClient works and allows
	you to call GetStream() on its result

2002-04-24  Dick Porter  <dick@ximian.com>

	* Socket.cs (Poll): Give correct argument to Select(), as spotted
	by Jaroslaw Kowalski <jarek@atm.com.pl>

2002-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* UdpClient.cs: implemented.

2002-04-02  Dick Porter  <dick@ximian.com>

	* TcpListener.cs: in Start(), set the socket listen backlog value
	to a sane value (noticed by Jonathan Stowe <gellyfish@gellyfish.com>)

2002-02-13  Dick Porter  <dick@ximian.com>

	* 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  <miguel@ximian.com>

	* NetworkStream.cs: Implement class.

2002-01-23  Dick Porter  <dick@ximian.com>

	* 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  <miguel@ximian.com>

	* SocketException.cs: Reimplemented.

2002-01-06  Ravi Pratap  <ravi@ximian.com>

	* ChangeLog : Add to this directory.

	* SocketException.cs, TcpClient.cs, TcpListener.cs : MonoTODO
	attribute decoration.