2009-01-19 Marek Habersack <mhabersack@novell.com>
[mono.git] / mcs / class / System / System.Net / ChangeLog
1 2009-01-19  Marek Habersack  <mhabersack@novell.com>
2
3         * HttpWebRequest.cs: implemented the UseDefaultCredentials
4         property, patch from Florian Maetschke <f.maetschke@tu-bs.de>,
5         thanks!
6
7 2009-01-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
8
9         * FtpWebRequest.cs: adjust to the correct directory when listing too.
10         Fixes bug #466530.
11
12 2009-01-15 Gonzalo Paniagua Javier <gonzalo@novell.com>
13
14         * HttpListenerRequest.cs: always initialize 'version'.
15         * HttpConnection.cs: the socket might already be disconnected when
16         shutting down.
17
18 2009-01-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
19
20         * WebConnectionStream.cs: if the buffer has been killed, return -1 for
21         its length. Fixes regression in System.Runtime.Remoting.
22
23 2009-01-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
24
25         * HttpWebRequest.cs: create a result from the response when
26         *GetResponse() has not been called yet and we have already received
27         all the data.
28         Fixes bug #464013.
29
30 2009-01-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
31
32         * HttpWebRequest.cs: keepAlive is of no use here.
33         Fixes bug #465613.
34
35 2009-01-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
36
37         * HttpConnection.cs: we were not writing the headers for 0-length
38         responses.
39         * WebConnectionStream.cs: for 204/304 responses with an explicit
40         content-length of 0, release the socket only once.
41         Fixes bug #465638.
42
43 2009-01-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
44
45         * FtpWebRequest.cs: now deleting a file works when we're not in the
46         root directory.
47
48 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
49
50         * IPAddress.cs: avoid throwing when parsing a subnet.
51
52 2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
53
54         * HttpConnection.cs: remove CWL. When reusing, BeginReadRequest might
55         throw if the client closes.
56         * HttpListenerResponse.cs: close the connection for 1.0 clients.
57
58 2008-11-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
59
60         * FtpDataStream.cs: use the socket for reading until the end of a
61         stream that wasn't read entirely. Remove unused ManualResetEvent.
62         * FtpWebRequest.cs: set the file_name when downloading. Update the
63         response status after every SendCommand. Send a "OPTS utf8 on" as MS
64         does (the control cnc reader should do something with UTF8)
65
66 2008-11-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
67
68         * WebRequest.cs: if the cache level is NoCacheNoStore, don't throw
69         when setting the CachePolicy.
70
71 2008-11-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
72
73         * FtpWebRequest.cs: take the server current directory into account
74         when uploading files. Set the data connection type before every
75         transmission.
76         Bug 333985 fixed.
77
78 2008-10-31 Gonzalo Paniagua Javier <gonzalo@novell.com>
79
80         * FtpWebRequest.cs: disable keep-alive connections as the current code 
81         does not deal with keep-alive connections.
82         Workaround for bug #380262.
83
84 2008-10-30 Gonzalo Paniagua Javier <gonzalo@novell.com>
85
86         * WebConnectionStream.cs: when there's a NTLM authentication in
87         progress, don't let the connection be used by the next request if we
88         have the entire response in the input buffer.
89
90 2008-10-30 Gonzalo Paniagua Javier <gonzalo@novell.com>
91
92         * HttpListenerResponse.cs: removed obsolete comment.
93         * ResponseStream.cs: don't read response.SendChunked until after
94         getting the response headers.
95
96 2008-10-27 Gonzalo Paniagua Javier <gonzalo@novell.com>
97
98         * ServicePointManager.cs: set the default limit of connections from
99         the configuration file(s) on startup.
100         Bug #339422 fixed.
101
102 2008-10-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
103
104         * HttpWebRequest.cs: don't call ProxyRequest twice.
105         * WebConnectionData.cs: remove unused fields.
106
107         * WebConnection.cs:
108         * WebConnectionStream.cs: when setting the input buffer, check to see
109         if the entire response is already there and free up the request slot.
110         Fixes bug #423156.
111
112         * ResponseStream.cs:
113         * HttpListenerResponse.cs: buffer the headers so that they are sent
114         together with the data on the first Write (if any). The fix above
115         didn't work with our HttpListener without this.
116
117 2008-10-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
118
119         * WebConnection.cs:
120         * ServicePoint.cs:
121         * WebConnectionGroup.cs:
122         * HttpWebRequest.cs:
123         * WebConnectionStream.cs: reuse the same connection when doing NTLM
124         authentication. Fixes bug #323375.
125         Implemented support for UnsafeAuthenticatedConnectionSharing.
126
127 2008-10-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
128
129         * HttpConnection.cs:
130         * HttpListenerResponse.cs: fix typo that caused the "connection close"
131         header to be sent. Do not close the socket when the encoding is not
132         chunked and reuse is possible.
133         Fixes bug #433371.
134
135 2008-10-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
136
137         * HttpWebRequest.cs: if GetRequestStream has already been called,
138         return the same stream that we returned in the first call.
139         Fixes bug #429200.
140
141 2008-10-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
142
143         * ServicePointManager.cs: better handling of possible collisions of the
144         hash for schema/host/port. Fixes bug #417891.
145
146 2008-10-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
147
148         * ChunkStream.cs: (ReadTrailer) make sure the array access is not out
149         of bounds. Fixes bug #322715.
150
151 2008-09-19 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
152
153         * WebConnectionStream.cs: when receiving a 0 content-length, free up
154         the slot for the next request immediately.
155         Fixes bug #427974.
156
157 2008-09-16  Miguel de Icaza  <miguel@novell.com>
158
159         * IPv6Address.cs: On the 2.0 profile, avoid throwing/catching
160         exceptions inside TryParse.
161
162 2008-09-12  Miguel de Icaza  <miguel@novell.com>
163
164         * HttpListenerPrefixCollection.cs, EndPointListener.cs,
165         HttpListener.cs, EndPointManager.cs, HttpConnection.cs: Remove
166         generics support where necessary to allow this code to be reused
167         in the 1.0 profile.
168
169 2008-09-08  Miguel de Icaza  <miguel@novell.com>
170
171         * EndPointListener.cs (SearchListener): Cope with the raw_url not
172         being merely a path, but potentially a full URI (see the proxy
173         case). 
174
175         * HttpListenerRequest.cs: Cope with raw_url not being merely a
176         path, but potentially a full Uri.   Also uses TryCreate, hoping
177         that one day it will be faster.
178
179 2008-08-23  Zoltan Varga  <vargaz@gmail.com>
180
181         * WebConnectionStream.cs (WriteRequest): Fix the copying in the
182         previous patch, when bytes.Length != length.
183
184 2008-08-22  Zoltan Varga  <vargaz@gmail.com>
185
186         * WebConnectionStream.cs (WriteRequest): For small requests,
187         cluster together the header + body in a single write call, avoids
188         the latency problems observed in an TLS application that makes
189         many web service calls. 
190
191 2008-08-22  Geoff Norton  <gnorton@novell.com>
192
193         * WebConnection.cs: Set NoDelay
194
195 2008-08-21  Stephane Delcroix  <sdelcroix@novell.com>
196
197         * OpenReadCompletedEventArgs.cs: new Address property for 2.1
198
199 2008-08-06  Miguel de Icaza  <miguel@novell.com>
200
201         * IPAddress.cs (ParseIPV6): Use an exception-less parser for ipv6
202         addresses.
203
204         * IPv6Address.cs: Rewrite most of the parsing code to not use that
205         incredibly fragile, hacky and hacky implementation.
206
207         (TryParse): Provide a exception-less parsing path.
208
209 2008-07-25  Gert Driesen  <drieseng@users.sourceforge.net>ยต
210
211 2008-08-06  Atsushi Enomoto  <atsushi@ximian.com>
212
213         * IPAddress.cs : several IPv4 parsing fix exposed by bug #411920.
214
215 2008-08-05  Atsushi Enomoto  <atsushi@ximian.com>
216
217         * WebClient.cs : it should not invoke delegate directly, but should
218           call overridable OnDownloadProgressChanged.
219
220 2008-07-25  Gert Driesen  <drieseng@users.sourceforge.net>ฮผ
221
222         * HttpWebResponse.cs: Initialize contentLength in ctor, as it must
223         remain accessible after the response is disposed (and the headers are
224         no longer available). Adding missing disposed checks in properties
225         (except for StatusCode) and GetResponseHeader. On the 2.0 profile,
226         headers must remain accessible after the HttpWebResponse is disposed.
227
228 2008-06-10  Stephane Delcroix  <sdelcroix@novell.com>
229
230         * IPAddress.cs: allow usage on 2.1 as smcs knows nothing about
231         string.GetEnumerator : IEnumerable<char>
232
233 2008-06-08  Miguel de Icaza  <miguel@novell.com>
234
235         * ResponseStream.cs: Do not Close the HttpResponse object here as
236         it is possible to issue multiple OutputStream.Close calls (they
237         actually happen implicitly through things like StreamWriter.Close,
238         and they are in various MSDN samples).
239
240 2008-05-28 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
241
242         * CookieContainer.cs: apply slightly modified patch from rulatir@wp.pl
243         that fixes bug #356537.
244
245 2008-04-30  Miguel de Icaza  <miguel@novell.com>
246
247         * WebPermission.cs (ToXml): To allow code that uses WebPermission
248         to be built. 
249
250 2008-04-21 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
251
252         * HttpWebResponse.cs: do not check the disposed status for properties
253         and methods that return response data other than the stream itself.
254         Fixes bug #381223.
255
256 2008-04-16  Marek Habersack  <mhabersack@novell.com>
257
258         * HttpWebRequest.cs: fix an off-by-one bug - the number of
259         redirects must not exceed the value of
260         MaximumAutomaticRedirections. Fixes bug #380131
261
262 2008-04-13  Jb Evain  <jbevain@novell.com>
263
264         * *_2_1.cs: move the specific 2.1 System.Net code to the
265         assembly System.Net.
266
267 2008-04-13  Jb Evain  <jbevain@novell.com>
268
269         * WebRequest_2_1.cs, WebResponse_2_1.cs: new files
270         * HttpWebRequest_2_1.cs, HttpWebResponse_2_1, WebHeaderCollection_2_1:
271         update to Silverlight 2.0b1 API.
272         Merged from the Moonlight 2 branch.
273
274 2008-04-06  <gnorton@novell.com>
275
276         * ListenerAsyncContext.cs: Fix Basic authentication support.  Patch from 
277         Maciej Paszta <paszczi@go2.pl>
278
279 2008-02-21  Zoltan Varga  <vargaz@gmail.com>
280
281         * HttpConnection.cs (Close): Close the socket even if Shutdown throws an exception.
282
283 2008-02-17  Daniel Nauck  <dna@mono-project.de>
284
285         * HttpWebResponse.cs: refactored cookie expires parsing to
286         allow all common expires datetime formats.
287
288 2008-02-09  Daniel Nauck  <dna@mono-project.de>
289
290         * HttpWebResponse.cs: convert UTC/GMT Expires DateTime from a cookie
291         into local time, also set the HttpOnly property if available.
292
293 2008-02-09  Daniel Nauck  <dna@mono-project.de>
294
295         * Cookie.cs: implemented HttpOnly
296
297 2008-01-27  Gert Driesen  <drieseng@users.sourceforge.net>
298
299         * IPAddress.cs (Parse): Changed argument name to match MS.
300         (TryParse): Changed argument name to match MS.
301         (ParseIPV4): Only treat zero-length or " " address as empty on 1.0
302         profile. On 2.0 profile, only ignore characters after blank if last
303         part is valid hex string.
304         * IPv6Address.cs: Removed extra spaces and tabs.
305
306 2008-01-26  Daniel Nauck  <dna@mono-project.de>
307
308         * HttpWebRequest.cs: fixed typo. Use the actual uri for correct
309         cookie header informations and not the originally one.
310
311 2008-01-26  Daniel Nauck  <dna@mono-project.de>
312
313         * Cookie.cs: set Version to '1' if Port is set,
314         don't include path and domain informations when version is 0,
315         match ToString () output with .NET 2.0,
316         fixes bug #316017
317
318 2008-01-15  Atsushi Enomoto  <atsushi@ximian.com>
319
320         * MonoHttpDate.cs : Parse() should return Local time. Fixed bug
321           #353495.
322
323 2008-01-12  Gert Driesen  <drieseng@users.sourceforge.net>
324
325         * WebClient.cs: Do not add trailing CRLF in UploadValuesCore. Fixes
326         standalone test for bug #351049.
327
328 2008-01-07  Sebastien Pouliot  <sebastien@ximian.com>
329
330         * CredentialCache.cs: Gendarme's AvoidToStringOnStringsRule in
331         CredentialCacheKey constructor. UseStringEmptyRule on CredentialCache
332         static ctor (3 times).
333
334 2007-12-27  Miguel de Icaza  <miguel@novell.com>
335
336         * WebClient.cs: We catch exceptions that happen on the helper
337         async threads toa void terminating the application on errors, and
338         also raise a variant of the OnXXXXCompleted methods that take an
339         Exception argument.
340
341         Note that this differs from the .NET implementation in that
342         we actually raise a signal on error, and set the exception, and in
343         their case no error is ever raised.
344
345         We now call CompleteAsync in the OnXXXCompleted handlers to ensure
346         that the WebClient can be reused immediately by the callback.
347
348         This fixes #350621.
349
350         This also should fix the bug report on IRC where someone
351         complained that they could not "chain" invocations to XXXAsync
352         methods from the OnXXXXCompleted handlers due to the WebClient
353         refusing to work if there was an ongoing operation
354
355 2007-12-24  Miguel de Icaza  <miguel@novell.com>
356
357         * WebClient.cs: Do not validate method to be null, we do not do
358         that in OpenWrite, the detection is done later on.  
359
360         Fixes #350622
361
362 2007-12-16  Miguel de Icaza  <miguel@novell.com>
363
364         * WebClient.cs: Got the arguments in the wrong order, fix
365
366 2007-12-12  Marek Habersack  <mhabersack@novell.com>
367
368         * WebClient.cs: DownloadProgressChanged is available only in the
369         2.0+ profiles.
370
371 2007-12-12  Miguel de Icaza  <miguel@novell.com>
372
373         * WebClient.cs (DownloadFileCore): use longs for the
374         ContentLength, although the other code (loading into a byte array,
375         or a string) still uses ints, the DownloadFileCore should not.
376
377 2007-12-11  Miguel de Icaza  <miguel@novell.com>
378
379         * WebClient.cs: 
380
381         Lots of fixes to get the *Async methods to work.
382         
383         * WebClient.cs: async, new boolean flag, used to track whether we
384         are an async invocation, and if so, we need to invoke some
385         methods. 
386
387         Switch to using System.Threading.Thread instead of the ThreadPool
388         as there is no way with the ThreadPool to abort threads (to
389         implemente CancelAsync). 
390
391         (CompleteAsync): Helper method used to clear the state after an
392         async operation completes, otherwise the WebClient can only be
393         used once. 
394
395         (CancelAsync): Use Thread.Interrupt to signal the thread that we
396         are aborting it (it is a lot milder than Thread.Abort, and we are
397         in no rush to cancel this anyways); Also the documentation states
398         that we need to call the WebRequest.Abort method, so we do that in
399         every Download instance.
400
401         (DownloadDataAsync, DownloadFileAsync, DownloadStringAsync,
402         OpenReadAsync, OpenWriteAsync, UplaodDataAsync, UploadFileAsync,
403         UploadStringAsync): Make signature parameters match MS; use
404         threads instead of threadpool (so we can implement CancelAsync),
405         catch ThreadAbortException here so we can also raise the proper
406         DownloadDataCompleteEventArgs.
407
408         These routines will also call the WebRequest.Abort when
409         appropriate when ThreadInterrupted is used.
410         
411         (ReadAll): Raise DownloadProgressChanged events.
412         
413 2007-12-03  Gert Driesen  <drieseng@users.sourceforge.net>
414
415         * WebClient.cs: Modified argument checks to match MS, and wrap
416         exceptions in a WebException. Fixes bug #343064.
417
418 2007-12-03  Miguel de Icaza  <miguel@novell.com>
419
420         * FtpWebRequest.cs: Applied patch from Jerome Haltom that fixes
421         multi-line responses (after my fix).
422
423         Closes #333978
424
425 2007-11-16  Marek Habersack  <mhabersack@novell.com>
426
427         * HttpWebRequest.cs: when folding a request into a GET one, set
428         content length to 0 and kill the buffers. Fixes bug #327314. Patch
429         from Geoff Norton <gnorton@novell.com>, thanks!
430
431 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
432
433         * WebRequest.cs : added missing ImpersonationLevel (NIE).
434         * SecurityProtocolType.cs : not [Serializable] in 2.0.
435         * ServicePoint.cs : no GetHashCode() in 2.0.
436         * WebRequestMethods.cs : fixed wrong STOU.
437         * FileWebResponse.cs : no Dispose(true) in 2.0 API.
438
439 2007-11-08  Jb Evain  <jbevain@novell.com>
440
441         * WebHeaderCollection_2_1.cs: add a custom WebHeaderCollection
442         for the 2.1 profile.
443
444 2007-11-07  Geoff Norton  <gnorton@novell.com>
445
446         * ListenerAsyncResult.cs: Only send the 401 header if our authentication
447         type is Basic or Negotiate (which we default to basic) because that is
448         all we support.  Set the WWW-Authenticate header when we return a 401 
449         result.  Send the correct state object in the async result.
450
451 2007-11-06  Geoff Norton  <gnorton@novell.com>
452
453         * ListenerAsyncResult.cs: If the HttpListener has an authentication
454         scheme, the user should be presented with a 401 without calling the 
455         callback.
456
457 2007-11-04  Miguel de Icaza  <miguel@novell.com>
458
459         * FtpWebRequest.cs (GetResponseStatus): Fix this routine
460         propertly, refactor, and make it follow Mono coding conventions.
461
462 2007-10-30  Jerome Haltom  (wasabi@larvalstage.net)
463
464         * FtpWebRequest.cs: adds support for ftp multiline results, fixes
465         #333978
466
467 2007-10-27  Miguel de Icaza  <miguel@novell.com>
468
469         * HttpListener.cs: Remove more trigger-happy disposed=true from
470         the code;   We should only dispose when the Dispose method is
471         actually called.   Not before.  
472
473         Fixes #337371
474
475         *  HttpListener.cs (Close): Closing does not mean dispose the
476         object.   This allows Start/Stop/Start to be called as many times
477         as desired.
478
479         Fixes #337368
480
481 2007-10-15  Gert Driesen  <drieseng@users.sourceforge.net>
482
483         * FtpWebRequest.cs: Added support for DELETE.
484
485 2007-10-15  Gert Driesen  <drieseng@users.sourceforge.net>
486
487         * WebRequest.cs: Changed serialization ctor to throw NIE on 1.0
488         profile. Cache default proxy, but still allow it to be explicitly set
489         to null. Removed commented code.
490
491 2007-10-14 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
492
493         * WebRequest.cs: DefaultWebProxy allows a null value. Fixes bug #323668.
494
495 2007-09-30  Gert Driesen  <drieseng@users.sourceforge.net>
496
497         * HttpListenerRequest.cs: Do not store 'method' in upper case, but
498         instead use case-insensitive comparison.
499
500 2007-09-30  Gert Driesen  <drieseng@users.sourceforge.net>
501
502         * HttpListenerRequest.cs: Removed dead code. USe String.Length to
503         check for zero-length string. Use instance field for is_chunked, and
504         also set it for GET/HEAD/DELETE. Fixed HasEntityBody to return true
505         when Content-Length > 0, or Transfer-Encoding is chunked.
506
507 2007-09-28  Marek Habersack  <mhabersack@novell.com>
508
509         * HttpListenerRequest.cs: make sure 'method' is always stored in
510         upper case.
511         The DELETE method must not error out on missing Content-Length
512         header (this is the behavior of the MS.NET version of the
513         class). Fixes bug #323215.
514         HasEntityBody should return false when method is GET/HEAD,
515         content_length is less than or equal to zero or the request is
516         chunked. Fixes bug #325296
517
518 2007-08-29  Atsushi Enomoto  <atsushi@ximian.com>
519
520         * IPAddress.cs, IPv6Address.cs : (ToString) output ScopeId.
521
522 2007-08-09  Atsushi Enomoto  <atsushi@ximian.com>
523
524         * HttpWebRequest_2_1.cs, HttpWebResponse_2_1.cs :
525           added new sources for those classes for 2.1 (in 2.1 they are
526           almost abstract, while in 2.0 they are concrete).
527         * HttpRequestCreator.cs, ServicePoint.cs :
528           #ifdef 2.0 dependencies out.
529
530 2007-06-28  Chris Howie  <cdhowie@nerdshack.com>
531
532         * ServicePoint.cs: Implemented BindIPEndPointDelegate.
533         * FtpWebRequest.cs: Respect ServicePoint.BindIPEndPointDelegate.
534         * WebConnection.cs: Respect ServicePoint.BindIPEndPointDelegate.
535
536 2007-08-08  Jb Evain  <jbevain@novell.com>
537
538         * HttpWebRequest.cs: .ctor(Uri) is public in 2.1.
539
540 2007-08-03  Jb Evain  <jbevain@novell.com>
541
542         * Dns.cs: remove async methods for the 2.1 profile.
543
544 2007-07-17  Rodrigo Kumpera  <rkumpera@novell.com>
545
546         * HttpListenerRequest.cs: Support for Cookie decoding.
547         * HttpListenerResponse.cs: Support for encoding cookies on the response sent to the client
548         * Cookie.cs: new internal method to encode the Cookie in a proper form to sent to clients
549
550 2007-07-14 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
551
552         * WebConnectionStream.cs: implement the CanTimeout for 2.0. Fixes
553         bug #81504.
554
555 2007-07-12  Geoff Norton  <gnorton@customerdna.com>
556
557         * HttpListenerContext.cs: 
558         * HttpListener.cs: Handle HttpListener AuthenticationSchemes
559         Only Basic authentication is included for now.
560
561 2007-06-30  Gert Driesen  <drieseng@users.sourceforge.net>
562
563         * NetworkAccess.cs: Only mark as flags enum on 2.0.
564
565 2007-06-21  Dick Porter  <dick@ximian.com>
566
567         * AuthenticationManager.cs: 
568         * FtpWebRequest.cs: 
569         * Cookie.cs: 
570         * ServicePoint.cs: 
571         * WebClient.cs: 
572         * Authorization.cs: 
573         * FileWebRequest.cs: 
574         * HttpWebRequest.cs: 
575         * WebResponse.cs: 
576         * ServicePointManager.cs: 
577         * HttpWebResponse.cs: Throw NotImplementedException indirectly, to
578         reduce noise in Moma reports.
579
580 2007-06-20  Atsushi Enomoto  <atsushi@ximian.com>
581
582         * ServicePointManager.cs : (bootstrap) build fix.
583
584 2007-06-19  Dick Porter  <dick@ximian.com>
585
586         * AuthenticationManager.cs: 
587         * IWebProxyScript.cs: 
588         * Authorization.cs: 
589         * Cookie.cs: 
590         * CookieException.cs: 
591         * CredentialCache.cs: 
592         * FileWebRequest.cs: 
593         * WebRequest.cs: 
594         * FileWebResponse.cs: 
595         * WebResponse.cs: 
596         * FtpWebRequest.cs: 
597         * HttpWebRequest.cs: 
598         * DecompressionMethods.cs: 
599         * HttpWebResponse.cs: 
600         * ProtocolViolationException.cs: 
601         * ServicePoint.cs: 
602         * ServicePointManager.cs: 
603         * WebClient.cs: 
604         * WebException.cs: 
605         * WebHeaderCollection.cs: 
606         * WebProxy.cs: 
607         * WebExceptionStatus.cs: 2.0 profile updates
608
609 2007-05-18  Gert Driesen  <drieseng@users.sourceforge.net>
610
611         * WebConnectionStream.cs: On read timeout, throw WebException with
612         status Timeout instead of IOException.
613
614 2007-05-16  Adar Wesley <adarw@mainsoft.com>
615
616         * CookieCollection.cs: added missing method strongly typed CopyTo.
617
618         * CredentialCache.cs: added missing methods Add, Remove, GetCredential
619
620         * HttpWebRequest.jvm.cs: added missing ClientCertificates getter.
621
622         * ServicePoint.cs: added missing method CloseConnectionGroup.
623
624         * WebClient.cs: added missing methods OnDownloadProgressChanged,
625         OnUploadProgressChanged, GetWebRequest, GetWebResponse
626
627         * WebHeaderCollection.cs: added missing methods IsRestricted, Add,
628         Remove, Set.
629
630         * WebProxy.cs: added missing method GetObjectData.
631
632 2007-05-15  Marek Habersack  <mhabersack@novell.com>
633
634         * HttpWebRequest.cs: fold all methods into GET for
635         redirect/moves. Fixes bug #81624
636
637 2007-05-07  Miguel de Icaza  <miguel@novell.com>
638
639         Missing second part of the patch.
640         
641         * WebHeaderCollection.cs: To be compatible with older versions of
642         Mono that might have serialized this in a different format, catch
643         the potential exception, and try the old name.
644
645         This should become a practice whenever we fix serialization in the
646         future. 
647
648         This is for #81467
649
650 2007-04-23  Marek Habersack  <mhabersack@novell.com>
651
652         * EndPointListener.cs: relax prefix matching to succeed in cases
653         when the prefix ends with / and the request path does not. Fixes
654         bug #80091.
655
656         * CookieCollection.cs: added a SortByPath method to sort the
657         collection on demand.
658
659         * Cookie.cs: do not return "/" for Path if it wasn't set
660         explicitly.
661
662         * CookieContainer.cs: set cookie path only if its version is
663         "Netscape" and is null or empty. Fixes #81420.
664         Sort the collection by the path relevance before returning from
665         the GetCookies method. Fixes bug #81421.
666
667 2007-04-17  Joel Reed  <joelwreed@gmail.com>
668
669         * WebHeaderCollection.cs: www-authenticate should be multivalue.
670         This fixes a bug related to RFC 2608 which says in section
671         "15.2 Offering a Choice of Authentication Schemes"
672
673         An HTTP/1.1 server may return multiple challenges with a 401
674  (Authenticate) response, and each challenge may use a different
675         scheme.  The order of the challenges returned to the user agent is in
676         the order that the server would prefer they be chosen. The server
677         should order its challenges with the "most secure" authentication
678         scheme first. A user agent should choose as the challenge to be made
679         to the user the first one that the user agent understands.
680
681         Before this change, mono was choosing whatever was sent last,
682         which was the most insecure authentication option.
683         
684 2007-04-10  Marek Habersack  <mhabersack@novell.com>
685
686         * HttpListenerRequest.cs: do not include the query start marker
687         ('?') in the first variable name stored in the QueryString
688         collection. There is no HTTP header 'Accept-Types' in the
689         standard, there's only the 'Accept' header that specifies the
690         accepted MIME types. Fixes bug #81317
691
692 2007-03-25 Alan McGovern <alan.mcgovern@gmail.com>
693
694         * IPAddress.cs : Further optimisation for the Swap*** methods.
695
696 2007-03-24 Alan McGovern <alan.mcgovern@gmail.com>
697
698         * IPAddress.cs : Optimised the SwapInt and SwapLong methods.
699
700 2007-03-09  Miguel de Icaza  <miguel@novell.com>
701
702         * FtpDataStream.cs: Close must be called on the stream before we
703         attempt to read a status code from the remote server.
704
705         Fixes FTP transfers to complete. 
706
707 2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
708
709         * HttpWebRequest.cs: properly handle OPTIONS, which may or may not
710         have a request body. Fixes bug #80686.
711
712 2007-03-02  Marek Habersack  <mhabersack@novell.com>
713
714         * WebClient.cs: Overwrite existing files on download, as
715         documented and as tested on MS.NET. Fixes Bug#81005
716
717 2007-02-24  Gert Driesen  <drieseng@users.sourceforge.net>
718
719         * HttpWebRequest.cs: Allow Proxy to be set to null on 2.0 profile.
720
721 2007-02-18  Geoff Norton  <gnorton@customerdna.com>
722
723         * AuthenticationManager.cs: Register the modules in the 2.0 profile
724         when we create the ArrayList.
725
726 2007-02-01  Gert Driesen  <drieseng@users.sourceforge.net>
727
728         * WebProxy.cs: In IsBypassed, move address check back to satify unit
729         tests.
730
731 2007-01-30  Ilya Kharmatsky <ilyak -at- mainsoft.com>
732
733         * Dns.cs : implemented proper exception handling under TARGET_JVM
734         when trying to resolve not existing host.
735
736 2007-01-28  Gert Driesen  <drieseng@users.sourceforge.net>
737
738         * IPAddress.cs: Provide more meaningful exception message on 2.0
739         profile.
740
741 2007-01-28  Gert Driesen  <drieseng@users.sourceforge.net>
742
743         * FileWebRequest.cs: Fixed PreAuthenticate and Proxy properties to
744         no longer throw NotSupportedException. No longer store ContentLength
745         in headers. Do not allow null or zero-length method. Allow timeout
746         to be set to -1 (infine). Only disallow GET, HEAD and CONNECT requests.
747         Removed workarounds for bug #24943. In (Begin)GetRequest overwrite
748         file if it already exists. Binary serialization compatibility fixes.
749         * FileWebResponse.cs: Return application/octet-stream as ContentType.
750
751 2007-01-28  Gert Driesen  <drieseng@users.sourceforge.net>
752
753         * WebHeaderCollection.cs: Fixed binary serialization compatibility 
754         with MS.
755
756 2007-01-28  Gert Driesen  <drieseng@users.sourceforge.net>
757
758         * WebProxy.cs: Lazy init bypassList. Fixes for binary serialization
759         compatibility. Added stub for UseDefaultCredentials (2.0). On 2.0
760         profile, throw ArgumentNullException in IsBypassed if host is null.
761
762 2007-01-22  Miguel de Icaza  <miguel@novell.com>
763
764         * HttpWebRequest.cs: Remove unused variable.
765
766         * FtpWebRequest.cs: Remove unused variable.
767
768         * WebHeaderCollection.cs: Remove a handful of NotImplementedException's
769
770 2007-01-11  Miguel de Icaza  <miguel@novell.com>
771
772         * HttpListenerRequest.cs (SetRequestLine): Add validation for the
773         verbs. 
774
775         Allow any verbs to go through, not only
776         the white list of verbs.
777
778         Fixes: 80504
779
780 2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
781
782         * RequestStream.cs: initialize the stream in both ctors. Fixes a couple
783         of unit tests.
784
785 2006-12-29  Gert Driesen  <drieseng@users.sourceforge.net>
786
787         * HttpWebRequest.jvm.cs: Fixed line endings.
788         * HttpWebResponse.jvm.cs: Same.
789         * WebException.cs: Same.
790         * FtpWebRequest.cs: Same.
791         * VMWHttpProvider.jvm.cs: Same.
792
793 2006-12-29  Gert Driesen  <drieseng@users.sourceforge.net>
794
795         * DnsPermissionAttribute.cs: Fixed line endings.
796         * HttpVersion.cs: Same.
797         * FtpWebResponse.cs: Same.
798         * HttpContinueDelegate.cs: Same.
799         * FtpAsyncResult.cs: Same.
800         * EndpointPermission.cs: Same.
801         * IPv6Address.cs: Same.
802         * FtpDataStream.cs: Same.
803         * SocketPermission.cs: Same.
804         * FileWebRequest.cs: Same.
805         * FileWebResponse.cs: Same.
806         * DnsPermission.cs: Same.
807         * ProtocolViolationException.cs: Same.
808         * MonoHttpDate.cs: Same.
809         * SocketPermissionAttribute.cs: Same.
810         * CookieException.cs: Same.
811         * WebResponse.cs: Same.
812         * DefaultCertificatePolicy.cs: Same.
813
814 2006-12-28  Gert Driesen  <drieseng@users.sourceforge.net>
815
816         * IPAddress.cs: On 1.1, 4-byte addresses are not supported in the 
817         ctor. Added null checks for the address passed in the ctors.
818
819 2006-12-28  Miguel de Icaza  <miguel@novell.com>
820
821         * IPAddress.cs: The condition in 1.1 was broken, it only allowed
822         16-byte addresses, and never 4-byte addresses (only 2.0 had
823         them).  
824
825         Keep a single code path.
826
827         Also, remove all the NET_1_1 defines, we realistically only
828         distinguish between 1.1 and 2.0, we wont likely support 1.0, 1.1
829         and 2.0, so remove the 1.0 vs 1.1 conditionals.
830
831         Fixes 76792
832         
833 ใ€“2006-12-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
834
835         * WebConnectionStream.cs: fix error in my last patch. Thanks to Felipe
836         Almeida.
837
838 2006-12-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
839
840         * WebConnection.cs:
841         * HttpWebRequest.cs:
842         * WebConnectionStream.cs: detect errors writing headers earlier and
843         avoid race that showed up with SSL. Fixes bug #80234.
844
845 2006-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
846
847         * EndPointListener.cs:
848         * ListenerPrefix.cs:
849         * ResponseStream.cs:
850         * ChunkedInputStream.cs:
851         * HttpConnection.cs:
852         * RequestStream.cs: add initial support for HTTPS.
853
854 2006-12-18  Atsushi Enomoto  <atsushi@ximian.com>
855
856         * FtpStatus.cs : The build gets broken when only-2.0 classes/members
857           are not excluded in 1.x build.
858
859 2006-12-18  David Elkind  <davide@mainsoft.com>
860
861         * FtpAsyncResult.cs : FTP request is now working and covers about 100% of .NET API
862         * FtpDataStream.cs: FTP request is now working and covers about 100% of .NET API
863         * FtpWebRequest.cs: FTP request is now working and covers about 100% of .NET API
864         * FtpWebResponse.cs: FTP request is now working and covers about 100% of .NET API
865         * FtpStatus.cs: added composite status (includes status code and status description)
866
867 2006-12-04  Konstantin Triger  <kostat@mainsoft.com>
868
869         * WebRequest.cs, WebResponse.cs: TARGET_JVM limitation workaround.
870
871 2006-12-04  Konstantin Triger  <kostat@mainsoft.com>
872
873         * ServicePointManager.cs: correct assignment typo.
874         * ServicePoint.cs: Remove unneeded locks for getters, add internal setter.
875
876 2006-11-27  Miguel de Icaza  <miguel@novell.com>
877
878         * WebRequest.cs: Instead of throwing NotImplemented exceptions,
879         call GetMustImplement, that way we do not need the whitelist, and
880         we save a handful of opcodes.
881
882 2006-11-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
883
884         * HttpWebRequest.cs: add 2 more methods that are not supposed to have
885         a body. Fixes bug #80001.
886
887 2006-11-15  Andrew Skiba  <andrews@mainsoft.com>
888
889         * WebHeaderCollection.cs: add stubs for new 2.0 properties.
890
891 2006-11-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
892
893         * HttpWebResponse.cs: cookies are actually added to the request
894         container if any. Fixes bug #79821.
895
896 2006-11-02  Michael Hutchinson  <m.j.hutchinson@gmail.com>
897
898         * WebRequest.cs: more closely follow MS behaviour: use system settings 
899           unless told otherwise, and respect app.config.
900
901 2006-11-01  Michael Hutchinson  <m.j.hutchinson@gmail.com>
902
903         * GlobalProxySelection.cs: Obsolete GlobalProxySelection under 2.0 
904           profile, and move code to new property WebRequest.DefaultWebProxy.
905         * WebRequest.cs: Implement new 2.0 property DefaultWebProxy.
906           Add support for config option UseSystemDefault using simplistic
907           implementation of new 2.0 method GetSystemWebProxy ().
908
909 2006-10-30  Atsushi Enomoto  <atsushi@ximian.com>
910
911         * FtpWebRequest.cs : more build fixes.
912
913 2006-10-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
914
915         * EndPointListener.cs: update comment and avoid exception when the
916         program is exiting.
917
918 2006-10-30  Miguel de Icaza  <miguel@novell.com>
919
920         * WebRequestMethods.cs: Another typo fix.
921
922         * ServicePointManager.cs: Set the default properly.
923
924         * SecurityProtocolType.cs: Remove non-existant defines. 
925
926 2006-10-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
927
928         * HttpWebRequest.cs: internally allow buffer if it's not a known
929         GET-only method instead of enabling that only for POST/PUT. Fixes bug
930         #79595.
931
932 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
933
934         * WebConnection.cs: TARGET_JVM
935
936 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
937
938         * WebException.cs: patch by Andrew Skiba that fixes serialization
939         compatibility with .NET and the default value for status.
940
941 2006-09-28  Andrew Skiba <andrews@mainsoft.com>
942
943         * Dns.cs: TARGET_JVM
944
945 2006-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
946
947         * CookieContainer.cs: send the cookies from the collection we got for
948         the given URI, not the whole collection.
949         * HttpWebResponse.cs: only add the cookies to this instance, not to the
950         cookie container set in the request.
951
952 2006-09-11  Sebastien Pouliot  <sebastien@ximian.com>
953
954         * WebConnection.cs: Patch to remove the hack that was required for 
955         using the older versions of the SSL/TLS classes. This hack is no more
956         required :-). Patch by Gonzalo Paniagua Javier.
957
958 2006-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
959
960         * HttpConnection.cs: when the content length is available, keep it
961         updated after synchronous read. Renamed 'available' to 'remaining_body'.
962         * RequestStream.cs: when creating the stream, pass the remaining length
963         starting from the offset in the buffer.
964
965 2006-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
966
967         * RequestStream.cs: make sure we return 0 when no more bytes left.
968         Paticularly, when we have a content length and the whole response is
969         buffered.
970
971 2006-08-20  Miguel de Icaza  <miguel@novell.com>
972
973         * RequestStream.cs (Read): A bug fix for #79112 and what I
974         consider to be an important change.
975
976         The bug fix is that we update the "available" variable as soon as
977         we consume data from Read, this means that a second call into Read
978         wont block.   Available was only being updated on a secondary code
979         path, now we alwaysupdate it after using FillFromBuffer.
980
981         The second component is what I believe the right behavior should
982         be.  There was a check for "if count > available" that set count
983         to available in that case.   The idea was to limit the data read
984         from the buffer that belonged to this particular request, to allow
985         pipelining. 
986
987         But this test was done after FillFromBuffer, which assumed that
988         all the data held in the buffer (the one used by FillFromBuffer)
989         must belong to the this request, and only future data did not.
990
991         I think my change is correct, but it assumes that the initialized
992         RequestStream will be used for other pipelined HTTP requests,
993         which is not something am 100% sure of, so Gonzalo needs to check
994         this. 
995
996 2006-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
997
998         * Cookie.cs: avoid nullref in GetHashCode and Equals.
999
1000 2006-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1001
1002         * CookieCollection.cs:
1003         * CookieContainer.cs: remove expired cookies.
1004
1005 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
1006
1007         * Dns.cs : (GetHostEntry) when passed IP addresses, it does not issue
1008           query to DNS. Patch by Petri Latvala.
1009
1010 2006-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1011
1012         * CookieContainer.cs: don't send a secure cookie over an insecure
1013         channel.
1014
1015 2006-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1016
1017         * WebProxy.cs: (IsBypassed) 'loopback', 'localhost' and any address
1018         that starts with 127 are special.
1019
1020 2006-05-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1021
1022         * HttpListener.cs: Fixes race condition in BeginGetContext. Patch by
1023         Pawel Sakowski that fixes bug #78365.
1024
1025 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
1026
1027         * ServicePointManager.cs : oops, CONFIGURATION_DEP.
1028
1029 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
1030
1031         * GlobalProxySelection.cs : if corresponding config section is
1032           DefaultProxySection then use it.
1033
1034 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
1035
1036         * WebRequest.cs : if corresponding config section is
1037           WebRequestModulesSection then use it.
1038
1039 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
1040
1041         * ServicePointManager.cs : if corresponding config section is
1042           ConnectionManagementSection then use it.
1043
1044 2006-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1045
1046         * ResponseStream.cs:
1047         * HttpListenerResponse.cs: allow 0 length POST. Patch by Horst Reiterer.
1048         Closes bug #78316.
1049
1050 2006-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1051
1052         * CredentialCache.cs: added DefaultNetworkCredentials.
1053
1054 2006-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1055
1056         * NetworkCredential.cs: implement ICredentialsByHost interface.
1057
1058 2006-04-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1059
1060         * WebConnection.cs: reset the challenge and the status code when
1061         creating the tunnel and sending the proxy auth. headers. Improve error
1062         message when there's an error creating the tunnel.
1063         * HttpWebRequest.cs: don't trigger an early throw for a POST that gets
1064         a 401 or 407 response.
1065
1066 2006-04-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1067
1068         * WebConnectionData.cs:
1069         * WebConnection.cs:
1070         * HttpWebRequest.cs: when tunneling an ssl conneciton through a proxy,
1071         we were not handling a proxy authentication request. Fixes bug #78150
1072         take 2.
1073
1074 2006-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1075
1076         * WebProxy.cs: a .ctor was not forwarding the 'credentials' argument.
1077         This fixes bug #78150. Also fix the bypass check for local requests.
1078
1079 2006-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1080
1081         * WebProxy.cs: removed bogus ^M.
1082
1083 2006-04-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1084
1085         * HttpWebResponse.cs: don't remove the Set-Cookie headers. Fixes bug
1086         #78028.
1087
1088 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
1089
1090         * WebClient.cs : added a bunch of async method support.
1091
1092 2006-04-03  Chris Toshok  <toshok@ximian.com>
1093
1094         * HttpWebResponse.cs (ContentEncoding): return "" if the header
1095         isn't present.
1096
1097 2006-03-30  Atsushi Enomoto  <atsushi@ximian.com>
1098
1099         * DownloadStringCompletedEventHandler.cs : missing delegate.
1100
1101 2006-03-30  Atsushi Enomoto  <atsushi@ximian.com>
1102
1103         * Dns.cs : minor argument renaming.
1104
1105 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
1106
1107         * DownloadDataCompletedEventArgs.cs
1108           DownloadDataCompletedEventHandler.cs
1109           DownloadProgressChangedEventArgs.cs
1110           DownloadProgressChangedEventHandler.cs
1111           DownloadStringCompletedEventArgs.cs
1112           OpenReadCompletedEventArgs.cs
1113           OpenReadCompletedEventHandler.cs
1114           OpenWriteCompletedEventArgs.cs
1115           OpenWriteCompletedEventHandler.cs
1116           UploadDataCompletedEventArgs.cs
1117           UploadDataCompletedEventHandler.cs
1118           UploadFileCompletedEventArgs.cs
1119           UploadFileCompletedEventHandler.cs
1120           UploadProgressChangedEventArgs.cs
1121           UploadProgressChangedEventHandler.cs
1122           UploadStringCompletedEventArgs.cs
1123           UploadStringCompletedEventHandler.cs
1124           UploadValuesCompletedEventArgs.cs
1125           UploadValuesCompletedEventHandler.cs : added 2.0 types.
1126
1127 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
1128
1129         * Dns.cs : filled missing NET_2_0 members.
1130
1131 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
1132
1133         * IPAddress.cs : ugh, I was testing with run-test-ondotnet, not
1134           run-test. Those IPv6 properties needed to be reimplemented.
1135
1136 2006-03-27  Atsushi Enomoto  <atsushi@ximian.com>
1137
1138         * IPAddress.cs : added NET_2_0 TryParse() and IPv6 related properties.
1139
1140 2006-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1141
1142         * WebConnectionStream.cs: avoid Begin/EndWrite when the body length is
1143         zero.
1144
1145 2006-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1146
1147         * HttpWebRequest.cs: send the request if ContentLength is set for
1148         POST/PUT, the request stream has that exact amount of bytes in it and
1149         we're trying to get the response stream.
1150
1151         This way, closing the request stream is not needed in order to actually
1152         send the request. Fixes bug #77753.
1153
1154         * WebConnectionStream.cs: throw if the number of bytes written is
1155         greater than the specified request content length.
1156
1157 2006-03-11  Miguel de Icaza  <miguel@novell.com>
1158
1159         * WebClient.cs: Only expose the right methods to avoid warnings. 
1160
1161         * FtpDataStream.cs (Dispose): Fix signature.
1162
1163         * FtpWebResponse.cs: Comment out keepAlive field (unused, sounds
1164         like we are missing features here).
1165
1166         * IPAddress.cs: Move m_HashCode property to the end, and set
1167         pragmas to disable warnings.
1168
1169 2006-02-16  Dick Porter  <dick@ximian.com>
1170
1171         * IPEndPoint.cs: The SocketAddress AddressFamily takes up the
1172         first two bytes, not just one.  Check the size of the
1173         SocketAddress buffer for IPv6 as well.
1174
1175         * Dns.cs: Cope when GetHostByName_internal or
1176         GetHostByAddr_internal returns fewer items in the array than it
1177         intended to (maybe due to conversion errors.)
1178
1179 2006-02-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1180
1181         * FtpWebResponse.cs: Add UpdateStatus method, to update both
1182         statusCode and statusDescription at the same time. 
1183
1184 2006-02-08  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1185
1186         * FtpWebRequest.cs: Remove WebExceptionStatus argument
1187         from CreateExceptionFromResponse, since exceptions gotten
1188         from server response always have a WebExceptionStatus.ProtocolError
1189         value.
1190         
1191 2006-02-08  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1192
1193         * FtpWebRequest.cs: Add renaming support when using 
1194         WebRequestMethods.Ftp.Rename method.
1195         
1196 2006-02-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1197
1198         * ChunkedInputStream.cs:
1199         * ChunkStream.cs: handle partial trailers and zero reads. Patch by Pawel
1200         Sakowski.
1201
1202 2006-02-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1203
1204         * HttpWebRequest.cs: don't send the expect-100 if if there's no content.
1205
1206         * HttpListenerRequest.cs:
1207         * HttpConnection.cs:
1208         * RequestStream.cs: use the content length header to avoid reading past
1209         the end of the stream.
1210
1211         Patch by Horst Reiterer.
1212
1213 2006-02-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1214
1215         * FtpWebRequest.cs: Add supportedCommands array with the sorted
1216         methods, to search using Array.BinarySearch. Remove CheckMethod.
1217
1218 2006-02-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1219
1220         * FtpWebRequest.cs: Fixed some typos and small issues.
1221         
1222 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1223
1224         * HttpWebRequest.cs: dummy implementation of UnsafeAuthenticationBlah
1225         property.
1226
1227 2006-02-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1228
1229         * FtpRequestCreator.cs: 
1230         * FtpAsyncResult.cs:
1231         * FtpDataStream.cs:
1232         * FtpWebRequest.cs:
1233         * FtpWebResponse.cs: Initial implementation of FtpWebRequest (2.0)
1234         
1235 2006-02-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1236
1237         * FtpStatusCode.cs: Fix a typo.
1238         
1239 2006-01-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1240
1241         * WebClient.cs: (2.0) UploadString() returns string, not void.
1242
1243 2006-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1244
1245         * HttpWebResponse.cs: ignore non-integer values for max-age and version.
1246         Fixes bug #77199. Thanks to Cyrille Colin.
1247
1248 2006-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1249
1250         * HttpWebResponse.cs: cope with malformed cookies with '=' as value.
1251         Patch by Cyrille Colin. Fixes bug #77179.
1252
1253 2005-12-25  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1254
1255         * FtpStatusCode.cs: New 2.0 enum.
1256
1257 2005-12-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1258
1259         * CookieContainer.cs: fix matching of subdomains. Patch by Cyrille
1260         Colin.
1261
1262 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1263
1264         * HttpWebResponse.cs: don't loop forever when no name or value between
1265         semicolons. Fixes bug #76943.
1266
1267 2005-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1268
1269         * HttpWebResponse.cs: don't fail if the cookie ends with a 'name'
1270         without a value. Fixes bug #76922.
1271
1272 2005-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1273
1274         * EndPointListener.cs:
1275         * HttpListenerRequest.cs: don't require the Host header for 1.0. Just
1276         map that to the '*' or '+' host.
1277
1278 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1279
1280         * IPAddress.cs: the byte[] ctor supports length 4 in .NET 2.0.
1281         Fixes bug #76792.
1282
1283 2005-11-21 Senganal T   <tsenganal@novell.com>
1284
1285         * Dns.cs : corrected a mistake in GetHostEntry ()
1286
1287 2005-11-21 Senganal T   <tsenganal@novell.com>
1288
1289         * Dns.cs : added GetHostEntry() method for 2.0 api conformance
1290
1291 2005-11-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1292
1293         * HttpRequestHeader.cs: add missing values.
1294
1295 2005-11-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1296
1297         * HttpListenerPrefixCollection.cs:
1298         * HttpWebResponse.cs:
1299         * Dns.cs:
1300         * HttpListenerRequest.cs:
1301         * HttpWebRequest.cs:
1302         * HttpListenerResponse.cs: a few signature fixes for 2.0.
1303
1304 2005-11-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1305
1306         * HttpListenerPrefixCollection.cs:
1307         * EndPointListener.cs:
1308         * HttpStreamAsyncResult.cs:
1309         * HttpListenerContext.cs:
1310         * HttpListenerBasicIdentity.cs:
1311         * AuthenticationSchemeSelector.cs:
1312         * HttpListener.cs:
1313         * WebHeaderCollection.cs:
1314         * ListenerPrefix.cs:
1315         * HttpListenerException.cs:
1316         * HttpResponseHeader.cs:
1317         * EndPointManager.cs:
1318         * HttpListenerRequest.cs:
1319         * HttpRequestHeader.cs:
1320         * BindIPEndPoint.cs:
1321         * ResponseStream.cs:
1322         * ChunkedInputStream.cs:
1323         * HttpStatusCode.cs:
1324         * ListenerAsyncResult.cs:
1325         * ChunkStream.cs:
1326         * HttpConnection.cs:
1327         * HttpUtility.cs:
1328         * HttpListenerResponse.cs:
1329         * RequestStream.cs: initial implementation of HttpListener. There are
1330         a few TODOs left (cookies, HTTPS) but almost everything else is in.
1331
1332 2005-11-15  Sebastien Pouliot  <sebastien@ximian.com>
1333
1334         * IPv6Address.cs: Added on overload to ToString to get a the full 
1335         length address returned (as required by System.Uri).
1336
1337 2005-11-15  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1338
1339         * WebRequestMethods.cs: New 2.0 class.
1340         
1341 2005-11-05  Atsushi Enomoto  <atsushi@ximian.com>
1342
1343         * WebClient: use POST for DownloadData(). Fixed bug #76631.
1344
1345 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1346
1347         * AuthenticationSchemes.cs : Fixed enum values and added [Flags].
1348
1349 2005-10-19  Atsushi Enomoto  <atsushi@ximian.com>
1350
1351         * WebClient.cs : added net_2_0 DownloadString() and DownloadData()
1352           with HTTP method as well.
1353
1354 2005-10-19  Atsushi Enomoto  <atsushi@ximian.com>
1355
1356         * WebClient.cs : added UploadString() and Encoding (net_2_0). Added
1357           some new overloaded stuff that takes Uri instead of string address.
1358
1359 2005-10-17  Sebastien Pouliot  <sebastien@ximian.com> 
1360
1361         * ICredentialPolicy.cs: New. Interface for 2.0.
1362
1363 2005-10-05  Atsushi Enomoto  <atsushi@ximian.com>
1364
1365         * AuthenticationSchemes.cs : new 2.0 enum.
1366
1367 2005-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1368
1369         * GlobalProxySelection.cs: remove double lock.
1370         * HttpWebRequest.cs: remove double lock in GetServicePoint() and use
1371         a private object when locking.
1372
1373 2005-07-15  Miguel de Icaza  <miguel@novell.com>
1374
1375         * DigestClient.cs: Fix bug #75556, the qop argument must be
1376         quoted, per http://www.faqs.org/rfcs/rfc2617.html section
1377         `quo-options'.
1378
1379 2005-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1380
1381         * WebConnectionStream.cs: initiate writing the body before trying to
1382         read. This fixes the performance problems observed in web services.
1383         Closes bug #75455.
1384
1385 2005-06-27  Lluis Sanchez Gual <lluis@novell.com>
1386
1387         * IPAddress.cs: Changed field names for the sake of serialization
1388         interoperability with MS.NET.
1389         
1390 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1391
1392         * WebConnection.cs: if cnc.EndRead throws, mark the asyncresult as done.
1393         * WebConnectionStream.cs: if we're done with the body of a chunk, don't
1394         require the next chunk header to be there, as some servers might close
1395         the connection (while also sending 'Connection: close').
1396
1397 2005-06-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1398
1399         * HttpWebRequest.cs: MS implementation follows redirects for POST. Seems
1400         to me that this is against 10.3.3 in RFC 2616, but may be the user
1401         'authorization' to do this is implicit in AllowAutoRedirect...
1402
1403 2005-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1404
1405         * WebConnection.cs: SslClientStream.BeginRead might not be asynchronous
1406         if there's no record available to read. This is a workaround that makes
1407         the call to BeginRead itself asynchronous. Fixes bug #75342.
1408
1409 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1410
1411         * WebConnection.cs:
1412         * HttpWebRequest.cs:
1413         * WebConnectionStream.cs: initiate the polling for input data after
1414         sending the header so that we detect any response that the server sends
1415         back even if we're still trying to write the request for a POST/PUT.
1416         If we get the response (or an error) before any one calls GetResponse(),
1417         keep it around instead of ignoring it.
1418
1419 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1420
1421         * HttpWebRequest.cs: send the right header/user/password in
1422         PreAuthenticate in presence of a proxy.
1423
1424 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1425
1426         * IPv6Address.cs: fix IsLoopback. Closes bug #75128.
1427
1428 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1429
1430         * IPv6Address.cs: don't do extra check on ipv4 if this is a ipv6
1431         address. Fixes bug #75125.
1432
1433 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1434
1435         * ServicePointManager.cs: when going through a proxy, use 2 different
1436         service points depending on the scheme. Fixes bug #75135.
1437
1438 2005-05-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1439
1440         * Dns.cs: don't parse the address when it comes from an IPAddress.
1441
1442 2005-05-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1443
1444         * WebConnection.cs: prevent 2 nullrefs when the aborting during
1445         Connect() and reset the status to Success before starting a new
1446         request.
1447
1448 2005-05-19  Sebastien Pouliot  <sebastien@ximian.com>
1449
1450         * WebRequest.cs: Throw NotImplementedException (not NotSupported
1451         Exception) for stuff that should have been abstract. No exception
1452         is thrown by the serialization constructor.
1453
1454 2005-05-04 James Willcox  <james@ximian.com>
1455
1456         * DigestClient.cs: convert to a hex string with "X8" consistently
1457         for nc-value
1458
1459 2005-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1460
1461         * WebConnection.cs: don't rethrow errors in Write, as the error will be
1462         received by GetResponse*. The result is that the threadpool thread doing
1463         this will not end up printing the exception. Fixes bug #74817.
1464
1465 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1466
1467         * ServicePoint.cs: HostEntry needs to be thread safe.
1468
1469 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1470
1471         * WebConnection.cs: removed a 'slightly' important line by mistake.
1472         * WebConnectionStream.cs: if the transfer encoding is chunked, ignore
1473         content-length header if present.
1474
1475 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1476
1477         * WebConnection.cs: no need to use an AutoResetEvent.
1478         * WebConnectionStream.cs: don't start any more reads on the socket
1479         after getting a 0 signalling the end. This fixes Ben's infamous foo.cs
1480         test.
1481
1482 2005-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1483
1484         * BasicClient.cs: firefox/IE just send latin1, stripping the high byte
1485         from unicode >= 256 characters.
1486
1487 2005-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1488
1489         * BasicClient.cs: use latin1 when encoding the username/domain/password.
1490         Fixes bug #74745.
1491
1492 2005-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1493
1494         * WebConnectionStream.cs: if the BeginRead/BeginWrite is completed
1495         synchronously, no need to create the ManualResetEvent to wait on.
1496
1497 2005-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1498
1499         * WebConnectionStream.cs: call SetComplete in EndWrite when we're not
1500         buffering the request body. Fixes bug #74637.
1501
1502         * WebAsyncResult.cs: renamed field.
1503
1504 2005-04-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1505
1506         * WebConnectionStream.cs:
1507         * WebAsyncResult.cs: ensure we only call EndRead once per async. result.
1508         Update total before invoking the callback when present.
1509
1510 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1511
1512         * WebConnection.cs:
1513         * WebConnectionStream.cs: don't start reading until we've sent at least
1514         the headers. This way we ensure that a Write happens before any Read,
1515         which is needed by the SSL code.
1516
1517 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1518
1519         * HttpWebRequest.cs: ensure we read everything before redirecting.
1520
1521 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1522
1523         * WebConnectionStream.cs: provide a default callback when doing async.
1524         read/write and waiting for a timeout so that the callback sets the
1525         event and we don't block forever. Fixes bug #74539 take 3.
1526
1527 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1528
1529         * WebConnection.cs:
1530         * HttpWebRequest.cs: now Abort() works properly. Fixes bug #74177.
1531
1532 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1533
1534         * WebConnection.cs: fix some breakage from my last patch.
1535         * WebConnectionStream.cs: invoke the callback when done even in EndRead.
1536
1537 2005-04-10  Sebastien Pouliot  <sebastien@ximian.com>
1538
1539         * WebConnection.cs: Added support for TrustFailure when throwing a
1540         WebException. Fix bug #74286.
1541
1542 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1543
1544         * HttpWebRequest.cs: 
1545         * WebConnectionStream.cs: implemented support for ReadWriteTimeout.
1546
1547 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1548
1549         * WebConnection.cs: if we're reading chunked data and didn't use the
1550         stream to read, we gotta set the async. result as complete and invoke
1551         the callback. Don't call nstream.EndRead with the wrong IAsyncResult.
1552
1553         * WebConnectionStream.cs: in EndRead, pass the correct IAsyncResult to
1554         cnc.EndRead. Lock on a field instead of 'this'.
1555
1556 2005-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1557
1558         * HttpWebRequest.cs: throw the exception if we got an error, as now
1559         it's catched in the redirection handling code.
1560
1561 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1562
1563         * HttpWebRequest.cs: moved redirection handling to a proper place.
1564
1565 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1566
1567         * WebHeaderCollection.cs: added if-modified-since to the list of
1568         restricted headers.
1569
1570         * ServicePoint.cs: use a field object when locking.
1571
1572 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1573
1574         * WebConnectionStream.cs: ForceCompletion actually calls NextRead. No
1575         need to wait for a Close/ReadAll when we have no content.
1576
1577 2005-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1578
1579         * NtlmClient.cs: fix typo in assembly name.
1580
1581 2005-03-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1582
1583         * CookieContainer.cs: adding to a CookieCollection might not increment
1584         the number of items if the cookie is replaced. Now Count works properly.
1585         Fixed an array index exception (typo).
1586
1587         * CookieCollection.cs: also compare the version.
1588
1589         * HttpWebResponse.cs: when we have cookies, add them to the request
1590         container.
1591
1592         * HttpWebRequest.cs: changed last parameter of HttpWebResponse ctor.
1593
1594 2005-03-30  Miguel de Icaza  <miguel@novell.com>
1595
1596         * Cookie.cs: Compare using the InvariantCulture, to match the
1597         behavior of CookieContainer that already did this.
1598
1599 2005-03-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1600
1601         * WebConnection.cs: we don't need to trigger the next queued request
1602         until the response is closed.
1603
1604 2005-03-29  Miguel de Icaza  <miguel@novell.com>
1605
1606         * HttpWebResponse.cs: Handle quotations in the cookies values, per
1607         the spec http://www.faqs.org/rfcs/rfc2109.html, it is allowed to
1608         have quotations.
1609
1610 2005-03-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1611
1612         * BasicClient.cs:
1613         * DigestClient.cs: check that GetCredential() does not return null.
1614
1615 2005-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1616
1617         * BasicClient.cs: ensure credentials are not null.
1618
1619 2005-03-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1620
1621         * HttpWebResponse.cs: moved cookie parsing into its own class.
1622         * WebHeaderCollection.cs: remove (probably bogus) GetMultipleValues
1623         call.
1624         * HttpWebRequest.cs: don't let exception raised in the ctor of
1625         HttpWebResponse vanish.
1626
1627         Fixes bug #73275.
1628
1629 2005-03-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1630
1631         * WebHeaderCollection.cs: handle commas inside quotes when splitting
1632         a multi-value header. Fixes bug #73151.
1633
1634 2005-02-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1635
1636         * DigestClient.cs: fix for digest auth. and URIs containing query. Patch
1637         by James Wilcox. Fixes bug #72571.
1638
1639 2005-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1640
1641         * HttpWebResponse.cs:
1642         * WebConnection.cs:
1643         * HttpWebRequest.cs:
1644         * WebConnectionStream.cs: don't read the entire response unless the
1645         user requests it. Fixes bug #72443.
1646
1647 2005-02-08  Zoltan Varga  <vargaz@freemail.hu>
1648
1649         * IPv6Address.cs: Fix endianess problems.
1650
1651         * IPAddress.cs: Fix misleading comments.
1652
1653 2005-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1654
1655         * HttpWebRequest.cs: send the headers when we're supposed to write
1656         a POST/PUT but call GetResponse before GetRequestStream.
1657
1658         * WebConnectionStream.cs: new RequestWritten property.
1659
1660 2005-01-20  Jonathan Pryor  <jonpryor@vt.edu>
1661
1662         * EndpointPermission.cs: Fix IsSubsetof(hostname) so that the regression 
1663           tests work.  In particular, IsSubsetOf ("12.13.*.*", "12.13.14.*") failed
1664           because 14 wasn't a subset of * (which it is).  Fix: if part1 is we 
1665           continue to the next portion.
1666
1667 2005-01-20  Jonathan Pryor  <jonpryor@vt.edu>
1668
1669         * IPAddress.cs (ParseIPV4): Fix so that the regression tests work.  In
1670           particular, " foo" and ".1.1.6" weren't being caught (" foo" because it
1671           started with a space, and ".1.1.6" because the split string accepted a
1672           0-length portion, which would make 1...6 valid, but isn't valid based on
1673           similar test cases).
1674
1675 2005-01-20  Jonathan Pryor  <jonpryor@vt.edu>
1676
1677         * WebHeaderCollection.cs: Fix GetValues(string) to split the values on
1678           commas if the header is a Multi-Value header.  This matches
1679           MonoTests.System.Net.WebHeaderCollectionTest.
1680
1681 2005-01-19  Sebastien Pouliot  <sebastien@ximian.com>
1682
1683         * WebPermissionAttribute.cs: Fixed NET_1_1 behaviour.
1684
1685 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1686
1687         * WebConnectionStream.cs: remove unneeded check. Write detects and
1688         triggers the exception now.
1689
1690 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1691
1692         * AuthenticationManager.cs: don't lock on a public Type.
1693         * HttpWebRequest.cs: read the error response for auth. errors.
1694
1695 2004-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1696
1697         * HttpWebRequest.cs: set webResponse back to null when redirecting.
1698         Fix the previous patch so that it reads the whole response even if
1699         auto-redirect is not enabled. Closes bug #70484.
1700
1701 2004-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1702
1703         * HttpWebResponse.cs: added ReadAll method.
1704
1705         * WebConnection.cs: in HandleError, set the response error after
1706         closing the socket. Use an async. delegate to finish reading any prior
1707         WebConnectionStream.
1708
1709         * HttpWebRequest.cs: for error responses that allow content, read the
1710         stream immediately. Fixes bug #70483.
1711
1712 2004-12-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1713
1714         * CookieContainer.cs: quote the port number.
1715
1716 2004-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1717
1718         * WebConnection.cs:
1719         * WebConnectionStream.cs: removed TryReconnect. It's no longer needed.
1720
1721 2004-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1722
1723         * WebConnection.cs: set the event in Close so that if the queue is
1724         empty, we won't block forever on next request. The finalizer was
1725         removed because we're not implementing IDisposable pattern here.
1726
1727 2004-12-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1728
1729         * WebConnection.cs: handle errors on chunked streams. Fixes bug #66858.
1730         * ChunkStream.cs: added error checking all over.
1731
1732         * HttpWebRequest.cs: throw the exception received in SetResponseError
1733         if we already have a response.
1734         (SetRequestData): Don't nest the exception if it's a WebException.
1735
1736 2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1737
1738         * WebConnection.cs: remove prevStream and don't set busy to false in
1739         HandleError. prevStream is not needed any more and setting 'busy' so
1740         early might let a request skip the queue.
1741         
1742         * WebConnectionGroup.cs: decrement the indexer when removing a dead
1743         reference from the arraylist.
1744
1745         * WebConnectionStream.cs:
1746         (ReadAll): call NextRead if it has not been called before even when
1747         we have completed the request. Reuse the read buffer when reading a
1748         response of unknown size. Increase the buffer to 8kB.
1749         (BeginRead): increase pendingReads earlier and even when reading from
1750         the internal buffer.
1751         (EndRead): decrease pendingReads later and always.
1752
1753 2004-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1754
1755         * CookieContainer.cs: style, fixed checks for properties, implemented
1756         the MonoTODOs for the method that take an Uri. GetCookies and
1757         GetCookieHeaders now really return only the cookies that are requested
1758         filtering by the Uri parameter.
1759
1760         * Cookie.cs: style, added default values for Comment, Domain and Port.
1761
1762 2004-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1763
1764         * CookieCollection.cs: reformatted, fixed Add by adding a new method to
1765         search across the arraylist, as list.IndexOf is not what we want.
1766
1767 2004-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1768
1769         * WebConnection.cs: check for FIN or RST on the socket before reusing.
1770         Fixes bug #69388.
1771
1772 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1773
1774         * ChunkStream.cs: simplified condition for WantMore property.
1775
1776         * WebConnection.cs: in Connect(), finish any pending reads we might
1777         have for chunked data. Ignore possible blank lines at the very
1778         beginning of the server response. Honor user set KeepAlive in
1779         HttpWebRequest for HTTP/1.1 connections. Thanks to Eyal Alayuf for
1780         his suggestions and code.
1781
1782 2004-11-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1783
1784         * HttpWebResponse.cs: don't lock up when the cookie received ends with
1785         a semicolon. Patch by Darryl VanDorp. Fixes bug #68956.
1786
1787 2004-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1788
1789         * HttpWebRequest.cs: don't fail if the request has already been sent
1790         when accessing ContentType setter. Fixes bug #68848.
1791
1792 2004-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1793
1794         * ChunkStream.cs:
1795         (WantMore): we're not done until we get a 0 chunk size and the trailer.
1796         The 0 can be expressed as more than one character too (ie, 000000).
1797
1798         * HttpWebRequest.cs: new argument in SetResponseError.
1799         * WebConnection.cs: added argument to HandleError as a hint for
1800         debugging.
1801         (Connect): make the chunked stream be in the expected state when
1802         reusing.
1803
1804         * WebConnectionStream.cs: removed unused method (ResetWriteBuffer).
1805
1806 2004-10-10 David Sheldon <dave-mono@earth.li>
1807
1808         * HttpWebRequest.cs: Use RemoveAndAdd for AddRange. Fixes unittest.
1809
1810 2004-10-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1811
1812         * HttpWebRequest.cs: use RemoveAndAdd for headers multivalue headers.
1813         * WebHeaderCollection.cs: added RemoveAndAdd that behaves like the old
1814         SetInternal.
1815
1816 2004-10-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1817
1818         * HttpWebRequest.cs: ProxyQuery returns true when we use a proxy without
1819         tunneling a secure connection.
1820
1821         * ServicePoint.cs: added UseConnect property.
1822
1823         * ServicePointManager.cs: set the UseConnect property when we use a http
1824         proxy for a https connection.
1825
1826         * WebConnection.cs: setup the tunnled connection when using a proxy and
1827         https.
1828
1829 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1830
1831         * HttpWebResponse.cs: remove unused SplitValue method.
1832
1833 2004-09-10  Sebastien Pouliot  <sebastien@ximian.com>
1834
1835         * DnsPermission.cs: Updated to pass new unit tests.
1836         * DnsPermissionAttribute.cs: Cleanup.
1837         * SocketPermission.cs: Updated to pass new unit tests.
1838         * SocketPermissionAttribute.cs: Updated to pass new unit tests.
1839         * WebPermission.cs: Implemented some TODO - not complete yet.
1840         * WebPermissionAttribute.cs: Updated to pass new unit tests.
1841
1842 2004-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1843
1844         * Cookie.cs: don't fail when using default constructor. Fixes bug
1845         #62890.
1846
1847 2004-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1848
1849         * HttpWebResponse.cs: set-cookie and set-cookie2 can be present more
1850         than once and have multiple values. Don't rely on string.split when
1851         parsing cookie values.
1852
1853         * WebHeaderCollection.cs: same thing for set-cookie and set-cookie2.
1854         Fixed GetValues (it was splitting values that contained a comma) and
1855         changed SetInternal to handle multi-value headers.
1856
1857         Fixes bug #62744.
1858
1859 2004-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1860
1861         * WebProxy.cs: fix scheme detection. Patch by Konstantin Triger
1862         (kostat@mainsoft.com).
1863
1864 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1865
1866         * HttpWebRequest.cs: detect changes in scheme or port when redirecting.
1867         Fixes las take on bug 61218.
1868
1869 2004-07-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1870
1871         * WebConnection.cs: moved loading of the ssl stream Type to its own
1872         method. Don't create a new ssl stream if we're reusing the connection.
1873
1874         * WebConnectionStream.cs: ensure the number of bytes copied in ReadAll
1875         is the expected even if the dta from the server has extra bytes.
1876
1877 2004-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1878
1879         * WebConnection.cs:
1880         * WebConnectionStream.cs: when the status code is 1xx, 204 or 304,
1881         "responses MUST NOT include a message-body". We tried to read the
1882         stream even when getting those codes and considered the 0 length
1883         read as a failure.
1884
1885 2004-07-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1886
1887         * HttpWebRequest.cs: removed bogus Monitor.Exit.
1888         * WebConnection.cs: use Address instead of RequestUri when checking for
1889         the scheme in order to select the stream type. Fixes bug #61218.
1890
1891 2004-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1892
1893         * ChunkStream.cs: added ChunkLeft property.
1894         * WebConnection.cs:
1895         (EndRead): when using small byte arrays to read from a chunked stream,
1896         ensure we've read the chunk size and try to fulfill the request
1897         completely. fixes bug 59653.
1898
1899 2004-05-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1900
1901         * WebConnectionStream.cs: fixed CanRead property. Closes bug #59273.
1902
1903 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1904
1905         * DigestClient.cs: cache the sessions based on address and
1906         credentials, not only address. Added poor men's expiration to
1907         the session cache. Fixes bug #59202.
1908
1909 2004-05-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1910
1911         * IPAddress.cs:
1912         * IPEndPoint.cs:
1913         * IPv6Address.cs: no more warnings about IPAddress.Address.
1914
1915 2004-05-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1916
1917         * WebException.cs: implemented serialization .ctor and
1918         GetObjectData().
1919
1920 2004-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1921
1922         * WebAsyncResult.cs: don't create the WaitHandle if not needed.
1923
1924 2004-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1925
1926         * HttpWebRequest.cs: added 3 missing properties for 1.1. They are not
1927         used yet.
1928
1929         * NetConfig.cs: added MaxResponseHeadersLength field.
1930
1931         * ServicePoint.cs:
1932         * ServicePointManager.cs: added missing properties for 1.1. 
1933
1934 2004-05-03  Sebastien Pouliot  <sebastien@ximian.com>
1935
1936         * WebConnection.cs: Use assembly name const to load Mono.Security.
1937
1938 2004-05-03  Lluis Sanchez Gual <lluis@ximian.com>
1939
1940         * NtlmClient.cs: Use assembly name const to load Mono.Security.
1941
1942 2004-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1943
1944         * WebConnectionStream.cs: avoid the exception when getting the content
1945         length if possible.
1946
1947 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
1948
1949         * HttpWebRequest.cs: Use a lock block instead of Monitor.Enter/Exit, so
1950         the lock is released in case of exception (for example, a 
1951         ThreadAbortException). This also "fixes" bug #52417.
1952         Beware, this requires a runtime update (due to a bug in Monitor.Exit).
1953         * ServicePoint.cs: Changed method from internal to private, since it
1954         is not called from outside the class.
1955
1956 2004-03-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1957
1958         * HttpWebRequest.cs: added the exception status to the error message.
1959         * WebConnection.cs: add headers using SetInternal instead of Add to
1960         bypass header name validation. Fixes bug #55994.
1961         * WebHeaderCollection.cs: added SetInternal (string header).
1962
1963 2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1964
1965         * WebConnection.cs:
1966         * WebConnectionGroup.cs: the requests queue is now shared for all the
1967         connections belonging to the same connection group.
1968
1969 2004-02-26  Sebastien Pouliot  <sebastien@ximian.com>
1970
1971         * DefaultCertificatePolicy.cs: New. Certificate validation
1972         policy compatible with the documented one present in Fx. It
1973         allows valid certificates and expired certificates to be used
1974         for SSL connections.
1975         * ServicePointManager.cs: Removed the DummyPolicy. Now creates
1976         a DefaultCertificatePolicy to validate certificates. 
1977
1978 2004-02-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1979
1980         * ServicePoint.cs: SendContinue is always false for HTTP/1.0
1981
1982         * WebConnection.cs: get rid of WaitForContinue() (yes!) and prevent
1983         calling more the ContinueDelegate more than once when we get the
1984         headers in several packets.
1985
1986         * WebConnectionStream.cs: removed call to WaitForContinue.
1987
1988 2004-02-25  Sebastien Pouliot  <sebastien@ximian.com>
1989
1990         * WebConnection.cs: Update previous patch to use HttpsClientStream
1991         (internal in Mono.Security assembly) in place of SslClientStream.
1992         This will reduce reflection and allow to use ICertificatePolicy.
1993
1994 2004-02-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1995
1996         * DigestClient.cs: fix quote handling. Reordered attributes in response.
1997         Fixed typo (QOP->CNonce). Now Digest works with apache2.
1998
1999 2004-02-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2000
2001         * DigestClient.cs: removed Console.
2002         * HttpWebRequest.cs: 401/407 were hanging for GET. Fixed.
2003
2004 2004-02-24  Sebastien Pouliot  <sebastien@ximian.com>
2005
2006         * DigestClient.cs: Fixed issue with Apache server which do not use "
2007         for specifying the digest algorithm (.e.g. algorithm=MD5 not ="MD5").
2008
2009 2004-02-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2010
2011         * HttpWebRequest.cs: arghhh. I used the server response headers instead
2012         of what the client is supposed to send. Thanks to Helge Hess.
2013
2014 2004-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2015
2016         * AuthenticationManager.cs: implemented PreAuthenticate().
2017
2018         * HttpWebRequest.cs: once we know the version of the server, use it if
2019         below the requested one. Remove 'Expect', 'Content-Length' and /or 
2020         'Transfer-Encoding' if appropiate due to changes in version. Fixed 
2021         'Host' header for non-standard ports. Support preauthentication. Closes
2022         bug #50530.
2023
2024 2004-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2025
2026         * HttpWebRequest.cs: check for missing or wrong URI in Location header
2027         when redirecting.
2028
2029         * WebConnection.cs: if the data read does not contain all the headers,
2030         keep it around and read the rest until we get to the response body.
2031         Allow response code with no description. Fixed bug #54543.
2032
2033 2004-02-18  Sebastien Pouliot  <sebastien@ximian.com>
2034
2035         * SecurityProtocolType.cs: Added missing [Serializable] to enum. Added 
2036         Default and Ssl2 to NET_2_0 profile. Enum is now internal for NET_1_0
2037         profile (as we need it for SslClientStream).
2038         * ServicePoint.cs: Added internal SetCertificates(client,server).
2039         * ServicePointManager.cs: Added CheckCertificateRevocationList and
2040         CheckCertificateRevocationList static properties (public in 1.1, 
2041         internal for 1.0).
2042         * WebConnection.cs: Dynamically creates a SslClientStream (from 
2043         Mono.Security assembly) in case of https. Changed NetworkStream to 
2044         Stream everywhere.
2045
2046 2004-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2047
2048         * HttpWebRequest.cs: send the 'Connection: keep-alive' header when we
2049         don't know the server version or it's 1.0.
2050
2051         * ServicePoint.cs: added SetVersion.
2052
2053         * WebAsyncResult.cs: remove ChunkAsyncResult.
2054
2055         * WebConnection.cs: set the ServicePoint version when getting a response
2056         from the server.
2057
2058         * WebConnectionStream.cs: when posting chunked content, send the head,
2059         body and trailer of the chunk at once instead of doing 3 separate
2060         writes, which may cause troubles.
2061
2062 2004-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2063
2064         * WebConnection.cs: if we get a 100 when we're not waiting for it, set
2065         that information in the ServicePoint.
2066
2067         * WebConnectionStream.cs: send headers in the right order for
2068         non-chunked POST.
2069
2070 2004-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2071
2072         * WebConnectionStream.cs: fixed nullrefs in BeginWrite/EndWrite.
2073
2074 2004-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2075
2076         * HttpWebRequest.cs: on second and sucesive tries when authenticating,
2077         don't use chunked encoding for POST, as we know the content length and
2078         have the body. Nullify bodyBuffer always in CheckFinalStatus.
2079
2080         * WebAsyncResult.cs: added ChunkAsyncResult property. It holds the
2081         IAsyncResult when writing CRLF at the end of a chunk.
2082
2083         * WebConnectionStream.cs: support sending chunked data.
2084
2085 2004-01-24  Lluis Sanchez Gual <lluis@ximian.com>
2086
2087         * HttpWebRequest.cs: When retrying a POST request after an
2088         authentication failure, resend the body. This fixes bug #51841.
2089         * WebConnectionStream.cs: Added properties for getting what's been
2090         written.
2091
2092 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2093
2094         * HttpWebRequest.cs: don't send 'Expect: 100-continue' for 1.0 version.
2095
2096 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2097
2098         * HttpWebRequest.cs: support proxy authentication.
2099
2100 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2101
2102         * BasicClient.cs:
2103         * DigestClient.cs: use IndexOf instead of StartsWith to deal with
2104         servers that provide several authentication schemas.
2105
2106 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2107
2108         * ChunkStream.cs: use an array of buffers instead of a MemoryStream for
2109         storing the chunks. This way, we won't miss traling data from the
2110         previous chunk when a new one is received before the other is fully
2111         read.
2112
2113 2004-01-27  Nick Drochak <ndrochak@ieee.org>
2114
2115         * DigestClient.cs:
2116         * HttpWebRequest.cs:
2117         * IPv6Address.cs:
2118         * WebClient.cs:
2119         * WebConnection.cs:
2120         * WebConnectionStream.cs: Remove unused variables thus eliminating some
2121         build warnings.
2122
2123 2004-01-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2124
2125         * WebConnection.cs: patch by Yaacov Akiba Slama that fixes 100-continue
2126         handling for the case when the same packet also contains the actual
2127         [2-5]xx response.
2128
2129 2004-01-24  Lluis Sanchez Gual <lluis@ximian.com>
2130
2131         * HttpWebRequest.cs: Added missing property.
2132
2133 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2134
2135         * Dns.cs: don't block forever in EndResolve and EndGetHostByName. Fixes
2136         bug #53222.
2137
2138 2004-01-16  Lluis Sanchez Gual <lluis@ximian.com>
2139
2140         * ChunkStream.cs: The "size" parameter of Write is not the number of
2141         bytes to write, but the last offset to be written. Thus, in WriteAndRead
2142         Back, since "read" is not an offset but the number of bytes, it must be 
2143         added to the offset. Maybe it would be a good idea to change the name of
2144         the parameter, since it is confusing. This should fix bug #52591.
2145
2146 2004-01-12  Lluis Sanchez Gual <lluis@ximian.com>
2147
2148         * WebConnection.cs: Yet another fix for WebConnection. This fixes 
2149         bug #52169.
2150
2151 2004-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2152
2153         * WebConnection.cs: Data.Init is a bad boy. Lluis realized. He also
2154         tidied up the end of ReadDone. Disabled relaunching the request if 2
2155         InitRead are called, since now we don't throw everything into
2156         RegisterWaitForSingleObject but one request at a time.
2157
2158         * WebConnectionGroup.cs: when checking available connections, allow them
2159         not to be Connected but allocated to honor the connection limit.
2160         
2161         * WebConnectionStream.cs: CheckComplete() now checks for nextReadCalled
2162         too. ReadAll don't mess contentLength if it's provided in the headers.
2163
2164         BIG thanks to Lluis. Turns out that we were debugging the same stuff and
2165         his Data.Init discovery was THE thing I was missing.
2166
2167         Fixes bug #51277.
2168
2169 2004-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2170
2171         * ServicePointManager.cs: use GetMaxConnections to get the appropiate
2172         number of connections limit.
2173
2174 2004-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2175
2176         * MonoHttpDate.cs: use the invariant culture, not en-US. Suspected
2177         guilty for bug 52629.
2178
2179 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2180
2181         * CredentialCache.cs: return null instead of throwing NotImplemented.
2182
2183 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2184
2185         * HttpWebRequest.cs: fixed checking if method allows a body. Patch by
2186         Benjamin Jemlich (pcgod@gmx.net).
2187
2188 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2189
2190         * HttpWebRequest.cs: deal with authentication schemes that have more
2191         than 1 round trip (Ntlm).
2192
2193 2003-12-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2194
2195         * NtlmClient.cs: new class that actually uses one from Mono.Http to do
2196         the authentication.
2197
2198 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2199
2200         * HttpWebRequest.cs: when building the redirect URI, use the previous
2201         one as the base URI, which makes relative URIs work.
2202
2203 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2204
2205         * DigestClient.cs: merged in code from Sebastien Pouliot and Greg
2206         Reinacker that Supports cnonce and preauthentication.
2207
2208 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2209
2210         * DigestClient.cs: initial Digest authentication. Works with apache
2211         mod_digest.
2212
2213 2003-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2214
2215         * HttpWebRequest.cs: removed unneeded StringBuilder.
2216         * WebConnection.cs: default to keep the connection open for HTTP/1.1
2217         only or HTTP/1.0 + (Proxy-)Connection header. Fixes bug #51208.
2218
2219 2003-11-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2220
2221         * WebConnection.cs: turns out that socket.Connected is not useful until
2222         we actually try to send/receive data, even if the other end has already
2223         closed the socket. Added TryReconnect() and Connected.
2224
2225         * WebConnectionData.cs: default value for StatusCode is 0 now.
2226
2227         * WebConnectionGroup.cs: reuse the connection since the beginning,
2228         instead of opening up to ConnectionLimit and then reusing.
2229
2230         * WebConnectionStream.cs: reopen the socket if we're trying to reuse
2231         one which fails on first write.
2232
2233 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2234
2235         * WebConnectionStream.cs: when a callback is passed to BeginRead/Write,
2236         wrap it and do our job before calling it. Fixes bug #48497.
2237
2238 2003-11-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2239
2240         * WebExceptionStatus.cs: Restyled, Added .Net 1.1 members
2241         * SecurityProtocolType.cs: Added and implemented
2242
2243 2003-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2244
2245         * HttpWebRequest.cs: fixed redirects when they target another host.
2246
2247 2003-11-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2248
2249         * IPAddress.cs: prevent exceptions when trying to parse the static IPv6
2250         addresses.
2251
2252 2003-10-17  Pedro Martinez Julia  <yoros@wanadoo.es>
2253
2254         * WebClient.cs: use Path.DirectorySeparator instead of "/" for
2255         windows compatibility. Add some checks for file paths like
2256         "C:/xxx/yyy/..." and like "/home/xxx/...".
2257
2258 2003-10-16  Pedro Martinez Julia  <yoros@wanadoo.es>
2259
2260         * WebClient.cs: added a slash between directory and file names.
2261
2262 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2263
2264         * HttpWebRequest.cs:
2265         * HttpWebResponse.cs: better abort handling and leave the stream in a
2266         stable status on abort.
2267
2268 2003-10-12  Pedro Martinez Julia  <yoros@wanadoo.es>
2269
2270         * WebClient.cs: refine reading of local files (like MS.NET).
2271
2272 2003-10-10  Pedro Martinez Julia  <yoros@wanadoo.es>
2273
2274         * WebClient.cs: MS.NET works right when we try OpenRead("file.txt")
2275         but we didn't. Now, when Uri fails with an exception, it adds
2276         "file://" before the URI and tries again.
2277
2278 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2279
2280         * ServicePoint.cs: preparing for recycling. Not yet finished.
2281         * ServicePointManager.cs: this is the one that reads config.
2282         * WebConnectionGroup.cs: don't read config here.
2283         * WebConnection.cs: added the queue again. Launch queued requests on
2284         error.
2285
2286 2003-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2287
2288         * WebConnection.cs: the queue is now handled by the threadpool.
2289         Initialize the connection data in a place where it does not depend on
2290         the execution order of the requests in threadpool. More error handling.
2291
2292         * WebConnectionGroup.cs: use the limits in the config file and reuse
2293         connections when the limit is reached.
2294
2295 2003-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2296
2297         * HttpWebRequest.cs: handle 304 a la MS.
2298         * WebConnection.cs: set the response data when reading 0 bytes.
2299
2300 2003-09-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2301
2302         * WebConnectionStream.cs: fix by Lluis to avoid the stream being in an
2303         invalid state.
2304
2305 2003-08-14  Nick Drochak <ndrochak@gol.com>
2306
2307         * WebRequest.cs: Check lower case string since that is what we will add.
2308
2309 2003-08-04  Jerome Laban <jlaban@wanadoo.fr>
2310
2311         * IPHostEntry.cs: Default contructor must not initialize members.
2312         (Fixes bug #45575).
2313
2314 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2315
2316         * CredentialCache.cs: Removed undefined serializable attribute
2317
2318 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2319
2320         * ChunkStream.cs:
2321         (WantMore): true if we've not received the last chunk yet. Fixes
2322         bug #45463. Thanks to Miguel for tracking this down and providing a
2323         test case.
2324         
2325         * WebConnection.cs: removed bogus ^M's.
2326         
2327         * WebHeaderCollection.cs: provide more info when the header or value is
2328         wrong.
2329
2330 2003-07-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2331
2332         * ChunkStream.cs: Removed unused members
2333         * IPAddress.cs: Removed unused exception variable, fixes compiler
2334         warning.
2335         * WebConnection.cs: Removed unused exception variables, fixes compiler
2336         warnings.
2337
2338 2003-07-14  Lluis Sanchez Gual <lluis@ximian.com>
2339
2340         * NetConfig.cs: If Clone method is not public, then it must use
2341           explicit interface method implementation syntax.
2342
2343 2003-07-14  Jerome Laban <jlaban@wanadoo.fr>
2344
2345         * Dns.cs: Reworked indentation.
2346         Added IPv6 support.
2347         Added literal address checking in GetHostByAddress.
2348         Changed Dns.Resolve behavior.
2349         * IPAddress.cs:
2350         * IPEndPoint.cs: Added IPv6 support.
2351         * IPv6Address.cs: Added address compression.
2352         * NetConfig.cs: Added configuration section.    
2353
2354 2003-07-14  Jerome Laban <jlaban@wanadoo.fr>
2355
2356         * ServicePoint.cs: Removed Connect and GetEndPoint methods.
2357         Removed reverse resolution when uri is literal IP address. 
2358         * WebConnection.cs: IPv6 compatibility update: Try to connect
2359         to all addresses returned by IPHostEntry.
2360         * WebConnectionGroup.cs: Removed unused parameter. 
2361
2362 2003-07-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2363
2364         * WebProxy.cs: Add serialization/ deserialization support
2365
2366 2003-07-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2367
2368         * ProxyUseType.cs:
2369         * WebStatus.cs: Deleted (do not exist in this assembly)
2370         * IPv6Address.cs: Made internal
2371
2372 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2373
2374         * HttpWebRequest.cs:
2375         * ServicePointManager.cs:
2376         * WebConnection.cs: added support for proxies.
2377
2378 2003-07-05  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2379
2380         * DnsPermissionAttribute.cs:
2381         * SocketPermissionAttribute.cs: Fixed wrong AttributeUsageAttribute
2382
2383 2003-07-05  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2384
2385         * WebPermission.cs: Added and partially implemented
2386         * WebPermissionAttribute.cs: Added and implemented
2387
2388 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2389
2390         * WebClient.cs: fixed bug #45651.
2391
2392 2003-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2393
2394         * WebClient.cs: Small fix by Sebastian <scut@nb.in-berlin.de>.
2395
2396 2003-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2397
2398         * WebConnection.cs: fixed header writing the reusing a connection and
2399         the server does not send 100-continue response.
2400
2401 2003-06-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2402
2403         * WebConnection.cs: close the socket and connection when disposing.
2404         * WebRequest.cs: removed setter for RequestUri. Allow non-public ctors
2405         when creating instances.
2406
2407         * HttpWebRequest.cs:
2408         * HttpWebResponse.cs:
2409         * FileWebRequest.cs: support serialization.
2410
2411         * FileWebResponse.cs: support serialization and fixed dispose checks.
2412
2413         * FileWebRequestCreator.cs:
2414         * HttpRequestCreator.cs: added internal .ctor.
2415
2416 2003-06-24  Lluis Sanchez Gual <lluis@ximian.com>
2417
2418         * HttpWebRequest.cs: SetWriteStream(): SendRequestHeaders should be
2419         called before asyncWrite.SetCompleted, to make sure that the waiting
2420         thread does not start to send more information before
2421         SendRequestHeaders has finished.
2422
2423 2003-06-22  Lluis Sanchez Gual <lluis@ximian.com>
2424
2425         * WebConnectionStream.cs: Only increment pendingReads if an asynchronous
2426         read is really needed.
2427
2428 2003-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2429
2430         * WebHeaderCollection.cs: prevent duplication headers used niternally.
2431
2432 2003-06-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2433
2434         * HttpWebRequest.cs: if CookieContainer has not been set, make
2435         HttpWebResponse ignore Set-Cookie* headers.
2436
2437         * HttpWebResponse.cs: Set-Cookie and Set-Cookie headers removed if
2438         CookieContainer have been provided to the request.
2439
2440 2003-06-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2441
2442         * AuthenticationManager.cs: get the list of authentication modules from
2443         the configuration files. Added Clear and fixed Unregister.
2444
2445         * BasicClient.cs: fully implemented.
2446
2447         * HttpWebRequest.cs: added support for Basic authentication when
2448         credentials are set.
2449
2450         * NetworkCredential.cs: fixed GetCredential.
2451
2452 2003-06-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2453
2454         * HttpWebRequest.cs: *really* take care of requestSent to prevent
2455         sending the same request twice.
2456         * WebAsyncResult.cs: don't close the handle. Just Reset.
2457         * WebConnectionStream.cs: removed unneeded line.
2458
2459 2003-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2460
2461         * HttpWebRequest.cs: use InternalClose when we are not going to send the
2462         rest of the request stream because of an error after sending the
2463         headers.
2464
2465         * WebConnection.cs: check for completion after setting the response.
2466         Enable reading in NextRead.
2467
2468         * WebConnectionStream.cs: re-fixed the count for partially buffered
2469         reads. If the network stream returns 0 bytes, we're done.
2470
2471 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2472
2473         * WebClient.cs: implemented UploadFile. Fixed SetupRequest to set the
2474         special headers *after* the others.
2475
2476 2003-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2477
2478         * WebConnectionStream.cs: when the read is partially filled from the
2479         initial buffer, add those bytes too. Thanks to Lluis for debugging this.
2480
2481 2003-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2482
2483         * HttpWebRequest.cs: added ExpectContinue property.
2484         * WebConnection.cs: allow 100 Continue to be delayed after waiting for
2485         it.
2486
2487 2003-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2488
2489         * HttpWebRequest.cs: don't send "Expect: 100-continue" is the server
2490         is known not to respond to that.
2491
2492         * ServicePoint.cs: added SendContinue property.
2493
2494         * WebConnection.cs: only wait 2 seconds for a continue reply. If it
2495         timeouts, set SendContinue to false and proceeed sending data.
2496
2497         * WebConnectionStream.cs: if 100-continue is not received and instead we
2498         get a 417 or anything else, don't send the data.
2499
2500         * WebClient.cs: implemented all missing properties and methods except
2501         UploadFile.
2502
2503 2003-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2504
2505         * FileWebRequestCreator.cs: splitted from WebRequest.
2506         * HttpRequestCreator.cs: splitted fromWebRequest.
2507         * WebRequest.cs: added methods that are used by the new configuration
2508         handler to set prefix/type name requests creators.
2509
2510 2003-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2511
2512         * AuthenticationManager.cs:
2513         * Authorization.cs:
2514         * BasicClient.cs: new file.
2515         * ChunkStream.cs: new file.
2516         * Cookie.cs:
2517         * CookieContainer.cs:
2518         * GlobalProxySelection.cs:
2519         * HttpWebRequest.cs:
2520         * HttpWebResponse.cs:
2521         * IAuthenticationModule.cs:
2522         * ServicePoint.cs:
2523         * ServicePointManager.cs:
2524         * WebAsyncResult.cs: new file.
2525         * WebConnection.cs: new file.
2526         * WebConnectionData.cs: new file.
2527         * WebConnectionGroup.cs: new file.
2528         * WebConnectionStream.cs: new file.
2529         * WebException.cs:
2530         * WebHeaderCollection.cs:
2531         * WebProxy.cs:
2532         * WebResponse.cs:
2533
2534         Reworked HttpWebRequest and related classes.
2535
2536 2003-05-30  Miguel de Icaza  <miguel@ximian.com>
2537
2538         * HttpWebRequest.cs (EndGetResponse): Do not throw exceptions on
2539         InternalServerError (500)
2540
2541 2003-05-29  Miguel de Icaza  <miguel@ximian.com>
2542
2543         * HttpWebRequest.cs (Close): Move the code that accumulates the
2544         output to Close from Flush.  Flush could have been called in the
2545         middle of the processing, and would have generated invalid results
2546         (which it did).
2547
2548 2003-05-23  Zoltan Varga  <vargaz@freemail.hu>
2549
2550         * Dns.cs (GetHostByAddress): Return the local host when called with
2551         IF_ANY.
2552
2553 2003-04-29  Miguel de Icaza  <miguel@ximian.com>
2554
2555         * WebClient.cs (DownloadData): Close the underlyng stream.
2556         (DownloadFile): Use using, so the file gets closed.
2557
2558 2003-04-24  Miguel de Icaza  <miguel@ximian.com>
2559
2560         * WebClient.cs (DownloadData): Instead of using a MemoryStream,
2561         keep track of all the small chunks in an ArrayList.  The
2562         MemoryStream had the property of reallocating itself, and the
2563         problem was that MemoryStream.GetBuffer would return the buffer
2564         (correctly), but not something of the right size.  So clients of
2565         DownloadData would get the extra unused bytes as part of the
2566         result.
2567
2568         The solution would have been to make another copy at this point,
2569         instead, we only keep the small allocations around in the
2570         ArrayList, and we only do one large allocation at the end.
2571
2572         * HttpWebResponse.cs: If there is a Content-Length header, pass
2573         this information to our HttpWebResponseStream, so it knows when to
2574         stop, instead of waiting for the stream to be shut down by the
2575         other end.
2576
2577         * HttpWebRequest.cs: Only set the `delay-header-writing' mode on
2578         the underlying stream if the method will do a content transfer and
2579         no Content-Length was provided. If not (HEAD and GET or
2580         Content-Length provided), keep going.
2581         
2582 2003-04-23  Miguel de Icaza  <miguel@ximian.com>
2583
2584         * HttpWebRequest.cs: .NET Allows the HttpWebRequest to not have
2585         the ContentLength specified on the request.  If that happens, we
2586         have to accumulate all the data written, and once we accumulate
2587         the data, we send it off.  
2588
2589         Notice that the documentation in .NET is actually incorrect, they
2590         state that setting ContentLength is mandatory.  It is not.
2591
2592 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2593
2594         * HttpWebResponse.cs: fixes bug #41180.
2595
2596 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2597
2598         * HttpWebRequest.cs: throw an exception is the response code is >= 300.
2599
2600 2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2601
2602         * HttpWebRequest.cs: implemented IDisposable, make the request stream
2603         read only. Changed the way of disposing the socket.
2604
2605         * HttpWebResponse.cs: wrapped the socket in a write-only NetworkStream,
2606         handle chunked transfer encoding (no more hangs), added serialization
2607         stuff, call CheckDisposed at the beginning of methods/properties (not
2608         in a finally clause).
2609
2610 2003-02-17  Nick Drochak <ndrochak@gol.com>
2611
2612         * WebClient.cs : Implemented Credentials property.
2613
2614 2003-02-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2615
2616         * SocketAddress.cs: byte 1 of the data is the high byte of the family,
2617         not the size.
2618
2619 2003-01-29  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
2620
2621         * WebClient.cs : hacked OpenRead, DownloadData and DownloadFile.
2622
2623 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2624
2625         * HttpWebRequest.cs: applied patch from Tim Haynes
2626         (thaynes@openlinksw.com).
2627
2628         Avoided double-sending of the request to the server when both
2629         GetRequestStream() and GetResponse() are called.
2630         System Header attributes survive the Headers attribute set.
2631         Added handling of Connection: KeepAlive/Close
2632
2633 2002-10-03  Dick Porter  <dick@ximian.com>
2634
2635         * Dns.cs: Fixed GetHostName()
2636
2637 2002-09-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2638
2639         * HttpWebRequest.cs:
2640         * HttpWebResponse.cs: applied another patch from Shahms E. King
2641         (shahms@shahms.com).
2642
2643 2002-09-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2644
2645         * HttpWebRequest.cs:
2646         * HttpWebResponse.cs: applied patch from Shahms E. King
2647         (shahms@shahms.com).
2648
2649 2002-05-29  Lawrence Pit <loz@cable.a2000.nl>
2650
2651         * MonoHttpDate.cs: added
2652         * HttpWebRequest.cs: using MonoHttpDate
2653         * HttpWebResponse.cs: using MonoHttpDate
2654         * DnsPermission.cs: correct XML output
2655         * SocketPermission.cs: correct XML output
2656
2657 2002-05-21  Lawrence Pit <loz@cable.a2000.nl>
2658
2659         * WebClient.cs: stubbed
2660         * WebProxy.cs: fixed bug; had to change internal representation
2661         of bypasslist to ArrayList, different implementation of checking
2662         regex's.
2663
2664 2002-05-20  Lawrence Pit <loz@cable.a2000.nl>
2665
2666         * WebProxy.cs: added, implemented
2667         * ServicePoint.cs: implemented most
2668         * ServicePointManager.cs: implemented
2669         * HttpWebRequest.cs: started implementation
2670         * HttpWebResponse.cs: improved disposable routines
2671         * FileWebRequest.cs: slight improvement of Close method
2672         
2673 2002-05-19  Lawrence Pit <loz@cable.a2000.nl>
2674
2675         * FileWebRequest.cs: finished implementation of async methods.
2676         * FileWebResponse.cs: improved disposable routines.
2677         * IPEndPoint.cs: fixed bug #24666 in Serialize and Create methods, 
2678         byte ordering of address was backwards.
2679
2680 2002-05-13  Lawrence Pit <loz@cable.a2000.nl>
2681
2682         * Dns.cs: Reimplemented (simplified and fixed) asynchronous methods by
2683         relying on standard asynchronous delegate features. Added checks for
2684         null strings.
2685         * HttpWebResponse.cs: implemented properties
2686         * FileWebResponse.cs: improved the way resources are disposed.
2687         * FileWebRequest.cs: started implementation of asynchronous methods
2688         * ServicePointManager.cs: implemented properties
2689
2690 2002-05-12  Lawrence Pit <loz@cable.a2000.nl>
2691
2692         * HttpWebRequest.cs: properties implemented
2693         * HttpWebResponse.cs: added
2694         * GlobalProxySelection.cs: implemented
2695         * FileWebResponse.cs: added
2696         * FileWebRequest.cs: some methods implemented
2697
2698 2002-05-11  Lawrence Pit <loz@cable.a2000.nl>
2699
2700         * WebHeaderCollection.cs: implemented
2701         * WebRequest.cs: implemented
2702         * FileWebRequest.cs and HttpWebRequest.cs stubs added
2703
2704 2002-05-09  Lawrence Pit <loz@cable.a2000.nl>
2705
2706         * Rewrote IPAddress.Parse method, passing all unit tests
2707
2708 2002-05-09  Lawrence Pit <loz@cable.a2000.nl>
2709
2710         * fixed bug in IPEndPoint.Equals method
2711         * fixed bug in IPAddress.Parse method
2712         * fixed bug in IPAddress.SwapLong method
2713         * fixed several bugs in Cookie.cs
2714
2715 2002-05-06  Lawrence Pit <loz@cable.a2000.nl>
2716
2717         * WebRequest.cs: added
2718         * WebResponse.cs: implemented
2719         * WebException.cs: implemented
2720         * WebHeaderCollection.cs: added
2721         * HttpVersion.cs: implemented
2722         * HttpContinueDelegate.cs: added
2723         * IWebProxy.cs: added
2724         * IWebRequestCreate.cs: added
2725         * ICertificatePolicy.cs: added
2726         * ServicePoint.cs: stubbed
2727         * ServicePointManager.cs: stubbed
2728         * CookieContainer.cs: added
2729         * Authorization.cs: implemented
2730
2731 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
2732
2733         * CredentialCache.cs: implemented
2734
2735 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
2736
2737         * IPAddress.cs: fixed IsLoopback, address was already in host order
2738
2739 2002-05-05  Lawrence Pit <loz@cable.a2000.nl>
2740
2741         * IPv6Address.cs: added (note: not part of .net spec)
2742
2743 2002-05-01  Lawrence Pit <loz@cable.a2000.nl>
2744
2745         * DnsPermission.cs: implemented
2746         * DnsPermissionAttribute.cs: implemented
2747
2748 2002-04-28  Lawrence Pit <loz@cable.a2000.nl>
2749
2750         * EndpointPermission.cs: implemented
2751         * SocketPermission.cs: implemented
2752         * SocketPermissionAttribute.cs: implemented
2753         * ProtocolViolationException.cs: implemented
2754         * Dns.c: passing w32 error code when no host found
2755
2756 2002-04-27  Lawrence Pit <loz@cable.a2000.nl>
2757
2758         * Cookie.cs: implemented
2759         * CookieCollection.cs: implemented
2760         * CookieException.cs: implemented
2761
2762 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2763
2764         * IPAddress.cs: initialize the read only fields with Parse().
2765
2766 2002-04-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2767
2768         * IPAddress.cs: little changes to behave as MS.
2769
2770 2002-04-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2771
2772         * Dns.cs (Resolve): behave as MS. Agreed with Mads.
2773
2774 2002-04-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2775
2776         * IPAddress.cs: the icalls for sockets are endianness-aware. So I
2777         changed a few things. Also included a workaround for bug #23547.
2778
2779 2002-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2780
2781         * IPAddress.cs: use System.BitConverter.IsLittleEndian (suggested
2782         by Paolo) instead of guessing the endianness.
2783
2784         * SocketAddress.cs: implemented Equals() and GetHashcode().
2785         
2786 2002-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2787
2788         * IPEndPoint.cs: modifications to constructors according to the
2789         specifications (suggested by Lawrence Pit).
2790
2791 2002-04-15  Patrik Torstensson <patrik.torstensson@labs2.com>
2792
2793         * IPEndPoint.cs: Fixed build breaker.
2794
2795 2002-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2796
2797         * IPEndPoint.cs: implemented Equals() and GetHashCode(). Now 100%
2798         complete.
2799
2800 2002-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2801
2802         * IPAddress.cs: finished all MonoTODO's. Use network order to store 
2803         the address. Check for max and min values in Address:set. IsLoopback()
2804         returns now true for all 127.x.y.z. Some more checks in Parse ().
2805         Some changes to behave as MS does.
2806
2807 2002-02-24  Duncan Mak  <duncan@ximian.com>
2808
2809         * ICredentialLookup.cs: Added the GetCredential method to the
2810         interface. The interface is named "ICredentials", should this file
2811         be renamed?     
2812
2813         * NetworkCredential.cs: Added to CVS. Need to investigate on how
2814         GetCredential() works
2815
2816 2002-01-23  Dick Porter  <dick@ximian.com>
2817
2818         * SocketAddress.cs: Implemented.
2819
2820         * IPEndPoint.cs: Turned 'Address' field into a real property.
2821         Implemented Create() and Serialize() methods.
2822
2823         * IPAddress.cs: Fixed class constructor, turned 'Address' field
2824         into a real property. Removed undocumented "public
2825         IPAddress(string)" constructor.
2826
2827         * EndPoint.cs: Implemented.  All methods return
2828         NotSupportedException to enforce subclass overriding.
2829
2830         * Dns.cs: Replaced fixed-layout Hostent struct and cygwin
2831         P/Invokes with portable internal calls.
2832
2833 2002-01-17  Miguel de Icaza  <miguel@ximian.com>
2834
2835         * Dns.cs: Updated to API changes.
2836
2837         * IPAddress.cs: Updated API.  Much left to implement.
2838
2839         * Dns.cs: Remove IPToString method
2840
2841 2002-01-06  Ravi Pratap  <ravi@ximian.com>
2842
2843         * Dns.cs, AuthenticationManager.cs, SocketAddress.cs : MonoTODO
2844         attribute insertion.
2845
2846 2001-11-22  Nick Drochak <ndrochak@gol.com>
2847
2848         * IPAddress.cs: Fix constructor bug, properly name Address property,
2849         and use triple-slash for comments.
2850
2851 2001-11-20  Miguel de Icaza  <miguel@ximian.com>
2852
2853         * IPAddress.cs: Updated to contain Any, Broadcast, Loopback and
2854         None as suggested by Phillip.
2855
2856 2001-09-26  Mads Pultz <mpultz@get2net.dk>
2857         * Dns.cs: Initial work on BeginGetHostByName and EndGetHostByName implemented.
2858
2859 2001-09-24  Mads Pultz <mpultz@get2net.dk>
2860
2861         * Dns.cs: Minor changes (some print statements removed)
2862
2863 2001-09-23  Mads Pultz <mpultz@get2net.dk>
2864
2865         * Dns.cs: Initial work submitted to repository.
2866         * IPHostEntry.cs: Initial work submitted to repository.
2867
2868 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
2869
2870         * Authorization.cs: Fixed compiler error.
2871
2872         * IAuthenticationModule.cs: Changes for Beta2.
2873
2874         * IPAddress.cs: Internal storage changed to be uint not int.
2875
2876         * IPEndPoint.cs: Fixed compiler error.
2877
2878         * EndPoint.cs: Fixed compiler error.
2879
2880         * AuthenticationManager.cs: Fixed typo.