1 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
3 * WebConnection.cs: TARGET_JVM
5 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
7 * WebException.cs: patch by Andrew Skiba that fixes serialization
8 compatibility with .NET and the default value for status.
10 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
14 2006-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
16 * CookieContainer.cs: send the cookies from the collection we got for
17 the given URI, not the whole collection.
18 * HttpWebResponse.cs: only add the cookies to this instance, not to the
19 cookie container set in the request.
21 2006-09-11 Sebastien Pouliot <sebastien@ximian.com>
23 * WebConnection.cs: Patch to remove the hack that was required for
24 using the older versions of the SSL/TLS classes. This hack is no more
25 required :-). Patch by Gonzalo Paniagua Javier.
27 2006-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
29 * HttpConnection.cs: when the content length is available, keep it
30 updated after synchronous read. Renamed 'available' to 'remaining_body'.
31 * RequestStream.cs: when creating the stream, pass the remaining length
32 starting from the offset in the buffer.
34 2006-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
36 * RequestStream.cs: make sure we return 0 when no more bytes left.
37 Paticularly, when we have a content length and the whole response is
40 2006-08-20 Miguel de Icaza <miguel@novell.com>
42 * RequestStream.cs (Read): A bug fix for #79112 and what I
43 consider to be an important change.
45 The bug fix is that we update the "available" variable as soon as
46 we consume data from Read, this means that a second call into Read
47 wont block. Available was only being updated on a secondary code
48 path, now we alwaysupdate it after using FillFromBuffer.
50 The second component is what I believe the right behavior should
51 be. There was a check for "if count > available" that set count
52 to available in that case. The idea was to limit the data read
53 from the buffer that belonged to this particular request, to allow
56 But this test was done after FillFromBuffer, which assumed that
57 all the data held in the buffer (the one used by FillFromBuffer)
58 must belong to the this request, and only future data did not.
60 I think my change is correct, but it assumes that the initialized
61 RequestStream will be used for other pipelined HTTP requests,
62 which is not something am 100% sure of, so Gonzalo needs to check
65 2006-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
67 * Cookie.cs: avoid nullref in GetHashCode and Equals.
69 2006-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
71 * CookieCollection.cs:
72 * CookieContainer.cs: remove expired cookies.
74 2006-07-07 Atsushi Enomoto <atsushi@ximian.com>
76 * Dns.cs : (GetHostEntry) when passed IP addresses, it does not issue
77 query to DNS. Patch by Petri Latvala.
79 2006-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
81 * CookieContainer.cs: don't send a secure cookie over an insecure
84 2006-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
86 * WebProxy.cs: (IsBypassed) 'loopback', 'localhost' and any address
87 that starts with 127 are special.
89 2006-05-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
91 * HttpListener.cs: Fixes race condition in BeginGetContext. Patch by
92 Pawel Sakowski that fixes bug #78365.
94 2006-05-09 Atsushi Enomoto <atsushi@ximian.com>
96 * ServicePointManager.cs : oops, CONFIGURATION_DEP.
98 2006-05-09 Atsushi Enomoto <atsushi@ximian.com>
100 * GlobalProxySelection.cs : if corresponding config section is
101 DefaultProxySection then use it.
103 2006-05-09 Atsushi Enomoto <atsushi@ximian.com>
105 * WebRequest.cs : if corresponding config section is
106 WebRequestModulesSection then use it.
108 2006-05-09 Atsushi Enomoto <atsushi@ximian.com>
110 * ServicePointManager.cs : if corresponding config section is
111 ConnectionManagementSection then use it.
113 2006-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
116 * HttpListenerResponse.cs: allow 0 length POST. Patch by Horst Reiterer.
119 2006-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
121 * CredentialCache.cs: added DefaultNetworkCredentials.
123 2006-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
125 * NetworkCredential.cs: implement ICredentialsByHost interface.
127 2006-04-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
129 * WebConnection.cs: reset the challenge and the status code when
130 creating the tunnel and sending the proxy auth. headers. Improve error
131 message when there's an error creating the tunnel.
132 * HttpWebRequest.cs: don't trigger an early throw for a POST that gets
133 a 401 or 407 response.
135 2006-04-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
137 * WebConnectionData.cs:
139 * HttpWebRequest.cs: when tunneling an ssl conneciton through a proxy,
140 we were not handling a proxy authentication request. Fixes bug #78150
143 2006-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
145 * WebProxy.cs: a .ctor was not forwarding the 'credentials' argument.
146 This fixes bug #78150. Also fix the bypass check for local requests.
148 2006-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
150 * WebProxy.cs: removed bogus ^M.
152 2006-04-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
154 * HttpWebResponse.cs: don't remove the Set-Cookie headers. Fixes bug
157 2006-04-04 Atsushi Enomoto <atsushi@ximian.com>
159 * WebClient.cs : added a bunch of async method support.
161 2006-04-03 Chris Toshok <toshok@ximian.com>
163 * HttpWebResponse.cs (ContentEncoding): return "" if the header
166 2006-03-30 Atsushi Enomoto <atsushi@ximian.com>
168 * DownloadStringCompletedEventHandler.cs : missing delegate.
170 2006-03-30 Atsushi Enomoto <atsushi@ximian.com>
172 * Dns.cs : minor argument renaming.
174 2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
176 * DownloadDataCompletedEventArgs.cs
177 DownloadDataCompletedEventHandler.cs
178 DownloadProgressChangedEventArgs.cs
179 DownloadProgressChangedEventHandler.cs
180 DownloadStringCompletedEventArgs.cs
181 OpenReadCompletedEventArgs.cs
182 OpenReadCompletedEventHandler.cs
183 OpenWriteCompletedEventArgs.cs
184 OpenWriteCompletedEventHandler.cs
185 UploadDataCompletedEventArgs.cs
186 UploadDataCompletedEventHandler.cs
187 UploadFileCompletedEventArgs.cs
188 UploadFileCompletedEventHandler.cs
189 UploadProgressChangedEventArgs.cs
190 UploadProgressChangedEventHandler.cs
191 UploadStringCompletedEventArgs.cs
192 UploadStringCompletedEventHandler.cs
193 UploadValuesCompletedEventArgs.cs
194 UploadValuesCompletedEventHandler.cs : added 2.0 types.
196 2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
198 * Dns.cs : filled missing NET_2_0 members.
200 2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
202 * IPAddress.cs : ugh, I was testing with run-test-ondotnet, not
203 run-test. Those IPv6 properties needed to be reimplemented.
205 2006-03-27 Atsushi Enomoto <atsushi@ximian.com>
207 * IPAddress.cs : added NET_2_0 TryParse() and IPv6 related properties.
209 2006-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
211 * WebConnectionStream.cs: avoid Begin/EndWrite when the body length is
214 2006-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
216 * HttpWebRequest.cs: send the request if ContentLength is set for
217 POST/PUT, the request stream has that exact amount of bytes in it and
218 we're trying to get the response stream.
220 This way, closing the request stream is not needed in order to actually
221 send the request. Fixes bug #77753.
223 * WebConnectionStream.cs: throw if the number of bytes written is
224 greater than the specified request content length.
226 2006-03-11 Miguel de Icaza <miguel@novell.com>
228 * WebClient.cs: Only expose the right methods to avoid warnings.
230 * FtpDataStream.cs (Dispose): Fix signature.
232 * FtpWebResponse.cs: Comment out keepAlive field (unused, sounds
233 like we are missing features here).
235 * IPAddress.cs: Move m_HashCode property to the end, and set
236 pragmas to disable warnings.
238 2006-02-16 Dick Porter <dick@ximian.com>
240 * IPEndPoint.cs: The SocketAddress AddressFamily takes up the
241 first two bytes, not just one. Check the size of the
242 SocketAddress buffer for IPv6 as well.
244 * Dns.cs: Cope when GetHostByName_internal or
245 GetHostByAddr_internal returns fewer items in the array than it
246 intended to (maybe due to conversion errors.)
248 2006-02-09 Carlos Alberto Cortez <calberto.cortez@gmail.com>
250 * FtpWebResponse.cs: Add UpdateStatus method, to update both
251 statusCode and statusDescription at the same time.
253 2006-02-08 Carlos Alberto Cortez <calberto.cortez@gmail.com>
255 * FtpWebRequest.cs: Remove WebExceptionStatus argument
256 from CreateExceptionFromResponse, since exceptions gotten
257 from server response always have a WebExceptionStatus.ProtocolError
260 2006-02-08 Carlos Alberto Cortez <calberto.cortez@gmail.com>
262 * FtpWebRequest.cs: Add renaming support when using
263 WebRequestMethods.Ftp.Rename method.
265 2006-02-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
267 * ChunkedInputStream.cs:
268 * ChunkStream.cs: handle partial trailers and zero reads. Patch by Pawel
271 2006-02-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
273 * HttpWebRequest.cs: don't send the expect-100 if if there's no content.
275 * HttpListenerRequest.cs:
277 * RequestStream.cs: use the content length header to avoid reading past
278 the end of the stream.
280 Patch by Horst Reiterer.
282 2006-02-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
284 * FtpWebRequest.cs: Add supportedCommands array with the sorted
285 methods, to search using Array.BinarySearch. Remove CheckMethod.
287 2006-02-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
289 * FtpWebRequest.cs: Fixed some typos and small issues.
291 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
293 * HttpWebRequest.cs: dummy implementation of UnsafeAuthenticationBlah
296 2006-02-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
298 * FtpRequestCreator.cs:
302 * FtpWebResponse.cs: Initial implementation of FtpWebRequest (2.0)
304 2006-02-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
306 * FtpStatusCode.cs: Fix a typo.
308 2006-01-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
310 * WebClient.cs: (2.0) UploadString() returns string, not void.
312 2006-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
314 * HttpWebResponse.cs: ignore non-integer values for max-age and version.
315 Fixes bug #77199. Thanks to Cyrille Colin.
317 2006-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
319 * HttpWebResponse.cs: cope with malformed cookies with '=' as value.
320 Patch by Cyrille Colin. Fixes bug #77179.
322 2005-12-25 Carlos Alberto Cortez <calberto.cortez@gmail.com>
324 * FtpStatusCode.cs: New 2.0 enum.
326 2005-12-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
328 * CookieContainer.cs: fix matching of subdomains. Patch by Cyrille
331 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
333 * HttpWebResponse.cs: don't loop forever when no name or value between
334 semicolons. Fixes bug #76943.
336 2005-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
338 * HttpWebResponse.cs: don't fail if the cookie ends with a 'name'
339 without a value. Fixes bug #76922.
341 2005-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
343 * EndPointListener.cs:
344 * HttpListenerRequest.cs: don't require the Host header for 1.0. Just
345 map that to the '*' or '+' host.
347 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
349 * IPAddress.cs: the byte[] ctor supports length 4 in .NET 2.0.
352 2005-11-21 Senganal T <tsenganal@novell.com>
354 * Dns.cs : corrected a mistake in GetHostEntry ()
356 2005-11-21 Senganal T <tsenganal@novell.com>
358 * Dns.cs : added GetHostEntry() method for 2.0 api conformance
360 2005-11-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
362 * HttpRequestHeader.cs: add missing values.
364 2005-11-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
366 * HttpListenerPrefixCollection.cs:
367 * HttpWebResponse.cs:
369 * HttpListenerRequest.cs:
371 * HttpListenerResponse.cs: a few signature fixes for 2.0.
373 2005-11-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
375 * HttpListenerPrefixCollection.cs:
376 * EndPointListener.cs:
377 * HttpStreamAsyncResult.cs:
378 * HttpListenerContext.cs:
379 * HttpListenerBasicIdentity.cs:
380 * AuthenticationSchemeSelector.cs:
382 * WebHeaderCollection.cs:
384 * HttpListenerException.cs:
385 * HttpResponseHeader.cs:
386 * EndPointManager.cs:
387 * HttpListenerRequest.cs:
388 * HttpRequestHeader.cs:
391 * ChunkedInputStream.cs:
393 * ListenerAsyncResult.cs:
397 * HttpListenerResponse.cs:
398 * RequestStream.cs: initial implementation of HttpListener. There are
399 a few TODOs left (cookies, HTTPS) but almost everything else is in.
401 2005-11-15 Sebastien Pouliot <sebastien@ximian.com>
403 * IPv6Address.cs: Added on overload to ToString to get a the full
404 length address returned (as required by System.Uri).
406 2005-11-15 Carlos Alberto Cortez <calberto.cortez@gmail.com>
408 * WebRequestMethods.cs: New 2.0 class.
410 2005-11-05 Atsushi Enomoto <atsushi@ximian.com>
412 * WebClient: use POST for DownloadData(). Fixed bug #76631.
414 2005-10-26 Atsushi Enomoto <atsushi@ximian.com>
416 * AuthenticationSchemes.cs : Fixed enum values and added [Flags].
418 2005-10-19 Atsushi Enomoto <atsushi@ximian.com>
420 * WebClient.cs : added net_2_0 DownloadString() and DownloadData()
421 with HTTP method as well.
423 2005-10-19 Atsushi Enomoto <atsushi@ximian.com>
425 * WebClient.cs : added UploadString() and Encoding (net_2_0). Added
426 some new overloaded stuff that takes Uri instead of string address.
428 2005-10-17 Sebastien Pouliot <sebastien@ximian.com>
430 * ICredentialPolicy.cs: New. Interface for 2.0.
432 2005-10-05 Atsushi Enomoto <atsushi@ximian.com>
434 * AuthenticationSchemes.cs : new 2.0 enum.
436 2005-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
438 * GlobalProxySelection.cs: remove double lock.
439 * HttpWebRequest.cs: remove double lock in GetServicePoint() and use
440 a private object when locking.
442 2005-07-15 Miguel de Icaza <miguel@novell.com>
444 * DigestClient.cs: Fix bug #75556, the qop argument must be
445 quoted, per http://www.faqs.org/rfcs/rfc2617.html section
448 2005-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
450 * WebConnectionStream.cs: initiate writing the body before trying to
451 read. This fixes the performance problems observed in web services.
454 2005-06-27 Lluis Sanchez Gual <lluis@novell.com>
456 * IPAddress.cs: Changed field names for the sake of serialization
457 interoperability with MS.NET.
459 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
461 * WebConnection.cs: if cnc.EndRead throws, mark the asyncresult as done.
462 * WebConnectionStream.cs: if we're done with the body of a chunk, don't
463 require the next chunk header to be there, as some servers might close
464 the connection (while also sending 'Connection: close').
466 2005-06-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
468 * HttpWebRequest.cs: MS implementation follows redirects for POST. Seems
469 to me that this is against 10.3.3 in RFC 2616, but may be the user
470 'authorization' to do this is implicit in AllowAutoRedirect...
472 2005-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
474 * WebConnection.cs: SslClientStream.BeginRead might not be asynchronous
475 if there's no record available to read. This is a workaround that makes
476 the call to BeginRead itself asynchronous. Fixes bug #75342.
478 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
482 * WebConnectionStream.cs: initiate the polling for input data after
483 sending the header so that we detect any response that the server sends
484 back even if we're still trying to write the request for a POST/PUT.
485 If we get the response (or an error) before any one calls GetResponse(),
486 keep it around instead of ignoring it.
488 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
490 * HttpWebRequest.cs: send the right header/user/password in
491 PreAuthenticate in presence of a proxy.
493 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
495 * IPv6Address.cs: fix IsLoopback. Closes bug #75128.
497 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
499 * IPv6Address.cs: don't do extra check on ipv4 if this is a ipv6
500 address. Fixes bug #75125.
502 2005-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
504 * ServicePointManager.cs: when going through a proxy, use 2 different
505 service points depending on the scheme. Fixes bug #75135.
507 2005-05-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
509 * Dns.cs: don't parse the address when it comes from an IPAddress.
511 2005-05-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
513 * WebConnection.cs: prevent 2 nullrefs when the aborting during
514 Connect() and reset the status to Success before starting a new
517 2005-05-19 Sebastien Pouliot <sebastien@ximian.com>
519 * WebRequest.cs: Throw NotImplementedException (not NotSupported
520 Exception) for stuff that should have been abstract. No exception
521 is thrown by the serialization constructor.
523 2005-05-04 James Willcox <james@ximian.com>
525 * DigestClient.cs: convert to a hex string with "X8" consistently
528 2005-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
530 * WebConnection.cs: don't rethrow errors in Write, as the error will be
531 received by GetResponse*. The result is that the threadpool thread doing
532 this will not end up printing the exception. Fixes bug #74817.
534 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
536 * ServicePoint.cs: HostEntry needs to be thread safe.
538 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
540 * WebConnection.cs: removed a 'slightly' important line by mistake.
541 * WebConnectionStream.cs: if the transfer encoding is chunked, ignore
542 content-length header if present.
544 2005-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
546 * WebConnection.cs: no need to use an AutoResetEvent.
547 * WebConnectionStream.cs: don't start any more reads on the socket
548 after getting a 0 signalling the end. This fixes Ben's infamous foo.cs
551 2005-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
553 * BasicClient.cs: firefox/IE just send latin1, stripping the high byte
554 from unicode >= 256 characters.
556 2005-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
558 * BasicClient.cs: use latin1 when encoding the username/domain/password.
561 2005-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
563 * WebConnectionStream.cs: if the BeginRead/BeginWrite is completed
564 synchronously, no need to create the ManualResetEvent to wait on.
566 2005-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
568 * WebConnectionStream.cs: call SetComplete in EndWrite when we're not
569 buffering the request body. Fixes bug #74637.
571 * WebAsyncResult.cs: renamed field.
573 2005-04-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
575 * WebConnectionStream.cs:
576 * WebAsyncResult.cs: ensure we only call EndRead once per async. result.
577 Update total before invoking the callback when present.
579 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
582 * WebConnectionStream.cs: don't start reading until we've sent at least
583 the headers. This way we ensure that a Write happens before any Read,
584 which is needed by the SSL code.
586 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
588 * HttpWebRequest.cs: ensure we read everything before redirecting.
590 2005-04-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
592 * WebConnectionStream.cs: provide a default callback when doing async.
593 read/write and waiting for a timeout so that the callback sets the
594 event and we don't block forever. Fixes bug #74539 take 3.
596 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
599 * HttpWebRequest.cs: now Abort() works properly. Fixes bug #74177.
601 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
603 * WebConnection.cs: fix some breakage from my last patch.
604 * WebConnectionStream.cs: invoke the callback when done even in EndRead.
606 2005-04-10 Sebastien Pouliot <sebastien@ximian.com>
608 * WebConnection.cs: Added support for TrustFailure when throwing a
609 WebException. Fix bug #74286.
611 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
614 * WebConnectionStream.cs: implemented support for ReadWriteTimeout.
616 2005-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
618 * WebConnection.cs: if we're reading chunked data and didn't use the
619 stream to read, we gotta set the async. result as complete and invoke
620 the callback. Don't call nstream.EndRead with the wrong IAsyncResult.
622 * WebConnectionStream.cs: in EndRead, pass the correct IAsyncResult to
623 cnc.EndRead. Lock on a field instead of 'this'.
625 2005-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
627 * HttpWebRequest.cs: throw the exception if we got an error, as now
628 it's catched in the redirection handling code.
630 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
632 * HttpWebRequest.cs: moved redirection handling to a proper place.
634 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
636 * WebHeaderCollection.cs: added if-modified-since to the list of
639 * ServicePoint.cs: use a field object when locking.
641 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
643 * WebConnectionStream.cs: ForceCompletion actually calls NextRead. No
644 need to wait for a Close/ReadAll when we have no content.
646 2005-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
648 * NtlmClient.cs: fix typo in assembly name.
650 2005-03-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
652 * CookieContainer.cs: adding to a CookieCollection might not increment
653 the number of items if the cookie is replaced. Now Count works properly.
654 Fixed an array index exception (typo).
656 * CookieCollection.cs: also compare the version.
658 * HttpWebResponse.cs: when we have cookies, add them to the request
661 * HttpWebRequest.cs: changed last parameter of HttpWebResponse ctor.
663 2005-03-30 Miguel de Icaza <miguel@novell.com>
665 * Cookie.cs: Compare using the InvariantCulture, to match the
666 behavior of CookieContainer that already did this.
668 2005-03-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
670 * WebConnection.cs: we don't need to trigger the next queued request
671 until the response is closed.
673 2005-03-29 Miguel de Icaza <miguel@novell.com>
675 * HttpWebResponse.cs: Handle quotations in the cookies values, per
676 the spec http://www.faqs.org/rfcs/rfc2109.html, it is allowed to
679 2005-03-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
682 * DigestClient.cs: check that GetCredential() does not return null.
684 2005-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
686 * BasicClient.cs: ensure credentials are not null.
688 2005-03-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
690 * HttpWebResponse.cs: moved cookie parsing into its own class.
691 * WebHeaderCollection.cs: remove (probably bogus) GetMultipleValues
693 * HttpWebRequest.cs: don't let exception raised in the ctor of
694 HttpWebResponse vanish.
698 2005-03-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
700 * WebHeaderCollection.cs: handle commas inside quotes when splitting
701 a multi-value header. Fixes bug #73151.
703 2005-02-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
705 * DigestClient.cs: fix for digest auth. and URIs containing query. Patch
706 by James Wilcox. Fixes bug #72571.
708 2005-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
710 * HttpWebResponse.cs:
713 * WebConnectionStream.cs: don't read the entire response unless the
714 user requests it. Fixes bug #72443.
716 2005-02-08 Zoltan Varga <vargaz@freemail.hu>
718 * IPv6Address.cs: Fix endianess problems.
720 * IPAddress.cs: Fix misleading comments.
722 2005-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
724 * HttpWebRequest.cs: send the headers when we're supposed to write
725 a POST/PUT but call GetResponse before GetRequestStream.
727 * WebConnectionStream.cs: new RequestWritten property.
729 2005-01-20 Jonathan Pryor <jonpryor@vt.edu>
731 * EndpointPermission.cs: Fix IsSubsetof(hostname) so that the regression
732 tests work. In particular, IsSubsetOf ("12.13.*.*", "12.13.14.*") failed
733 because 14 wasn't a subset of * (which it is). Fix: if part1 is we
734 continue to the next portion.
736 2005-01-20 Jonathan Pryor <jonpryor@vt.edu>
738 * IPAddress.cs (ParseIPV4): Fix so that the regression tests work. In
739 particular, " foo" and ".1.1.6" weren't being caught (" foo" because it
740 started with a space, and ".1.1.6" because the split string accepted a
741 0-length portion, which would make 1...6 valid, but isn't valid based on
744 2005-01-20 Jonathan Pryor <jonpryor@vt.edu>
746 * WebHeaderCollection.cs: Fix GetValues(string) to split the values on
747 commas if the header is a Multi-Value header. This matches
748 MonoTests.System.Net.WebHeaderCollectionTest.
750 2005-01-19 Sebastien Pouliot <sebastien@ximian.com>
752 * WebPermissionAttribute.cs: Fixed NET_1_1 behaviour.
754 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
756 * WebConnectionStream.cs: remove unneeded check. Write detects and
757 triggers the exception now.
759 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
761 * AuthenticationManager.cs: don't lock on a public Type.
762 * HttpWebRequest.cs: read the error response for auth. errors.
764 2004-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
766 * HttpWebRequest.cs: set webResponse back to null when redirecting.
767 Fix the previous patch so that it reads the whole response even if
768 auto-redirect is not enabled. Closes bug #70484.
770 2004-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
772 * HttpWebResponse.cs: added ReadAll method.
774 * WebConnection.cs: in HandleError, set the response error after
775 closing the socket. Use an async. delegate to finish reading any prior
778 * HttpWebRequest.cs: for error responses that allow content, read the
779 stream immediately. Fixes bug #70483.
781 2004-12-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
783 * CookieContainer.cs: quote the port number.
785 2004-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
788 * WebConnectionStream.cs: removed TryReconnect. It's no longer needed.
790 2004-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
792 * WebConnection.cs: set the event in Close so that if the queue is
793 empty, we won't block forever on next request. The finalizer was
794 removed because we're not implementing IDisposable pattern here.
796 2004-12-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
798 * WebConnection.cs: handle errors on chunked streams. Fixes bug #66858.
799 * ChunkStream.cs: added error checking all over.
801 * HttpWebRequest.cs: throw the exception received in SetResponseError
802 if we already have a response.
803 (SetRequestData): Don't nest the exception if it's a WebException.
805 2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
807 * WebConnection.cs: remove prevStream and don't set busy to false in
808 HandleError. prevStream is not needed any more and setting 'busy' so
809 early might let a request skip the queue.
811 * WebConnectionGroup.cs: decrement the indexer when removing a dead
812 reference from the arraylist.
814 * WebConnectionStream.cs:
815 (ReadAll): call NextRead if it has not been called before even when
816 we have completed the request. Reuse the read buffer when reading a
817 response of unknown size. Increase the buffer to 8kB.
818 (BeginRead): increase pendingReads earlier and even when reading from
820 (EndRead): decrease pendingReads later and always.
822 2004-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
824 * CookieContainer.cs: style, fixed checks for properties, implemented
825 the MonoTODOs for the method that take an Uri. GetCookies and
826 GetCookieHeaders now really return only the cookies that are requested
827 filtering by the Uri parameter.
829 * Cookie.cs: style, added default values for Comment, Domain and Port.
831 2004-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
833 * CookieCollection.cs: reformatted, fixed Add by adding a new method to
834 search across the arraylist, as list.IndexOf is not what we want.
836 2004-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
838 * WebConnection.cs: check for FIN or RST on the socket before reusing.
841 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
843 * ChunkStream.cs: simplified condition for WantMore property.
845 * WebConnection.cs: in Connect(), finish any pending reads we might
846 have for chunked data. Ignore possible blank lines at the very
847 beginning of the server response. Honor user set KeepAlive in
848 HttpWebRequest for HTTP/1.1 connections. Thanks to Eyal Alayuf for
849 his suggestions and code.
851 2004-11-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
853 * HttpWebResponse.cs: don't lock up when the cookie received ends with
854 a semicolon. Patch by Darryl VanDorp. Fixes bug #68956.
856 2004-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
858 * HttpWebRequest.cs: don't fail if the request has already been sent
859 when accessing ContentType setter. Fixes bug #68848.
861 2004-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
864 (WantMore): we're not done until we get a 0 chunk size and the trailer.
865 The 0 can be expressed as more than one character too (ie, 000000).
867 * HttpWebRequest.cs: new argument in SetResponseError.
868 * WebConnection.cs: added argument to HandleError as a hint for
870 (Connect): make the chunked stream be in the expected state when
873 * WebConnectionStream.cs: removed unused method (ResetWriteBuffer).
875 2004-10-10 David Sheldon <dave-mono@earth.li>
877 * HttpWebRequest.cs: Use RemoveAndAdd for AddRange. Fixes unittest.
879 2004-10-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
881 * HttpWebRequest.cs: use RemoveAndAdd for headers multivalue headers.
882 * WebHeaderCollection.cs: added RemoveAndAdd that behaves like the old
885 2004-10-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
887 * HttpWebRequest.cs: ProxyQuery returns true when we use a proxy without
888 tunneling a secure connection.
890 * ServicePoint.cs: added UseConnect property.
892 * ServicePointManager.cs: set the UseConnect property when we use a http
893 proxy for a https connection.
895 * WebConnection.cs: setup the tunnled connection when using a proxy and
898 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
900 * HttpWebResponse.cs: remove unused SplitValue method.
902 2004-09-10 Sebastien Pouliot <sebastien@ximian.com>
904 * DnsPermission.cs: Updated to pass new unit tests.
905 * DnsPermissionAttribute.cs: Cleanup.
906 * SocketPermission.cs: Updated to pass new unit tests.
907 * SocketPermissionAttribute.cs: Updated to pass new unit tests.
908 * WebPermission.cs: Implemented some TODO - not complete yet.
909 * WebPermissionAttribute.cs: Updated to pass new unit tests.
911 2004-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
913 * Cookie.cs: don't fail when using default constructor. Fixes bug
916 2004-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
918 * HttpWebResponse.cs: set-cookie and set-cookie2 can be present more
919 than once and have multiple values. Don't rely on string.split when
920 parsing cookie values.
922 * WebHeaderCollection.cs: same thing for set-cookie and set-cookie2.
923 Fixed GetValues (it was splitting values that contained a comma) and
924 changed SetInternal to handle multi-value headers.
928 2004-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
930 * WebProxy.cs: fix scheme detection. Patch by Konstantin Triger
931 (kostat@mainsoft.com).
933 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
935 * HttpWebRequest.cs: detect changes in scheme or port when redirecting.
936 Fixes las take on bug 61218.
938 2004-07-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
940 * WebConnection.cs: moved loading of the ssl stream Type to its own
941 method. Don't create a new ssl stream if we're reusing the connection.
943 * WebConnectionStream.cs: ensure the number of bytes copied in ReadAll
944 is the expected even if the dta from the server has extra bytes.
946 2004-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
949 * WebConnectionStream.cs: when the status code is 1xx, 204 or 304,
950 "responses MUST NOT include a message-body". We tried to read the
951 stream even when getting those codes and considered the 0 length
954 2004-07-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
956 * HttpWebRequest.cs: removed bogus Monitor.Exit.
957 * WebConnection.cs: use Address instead of RequestUri when checking for
958 the scheme in order to select the stream type. Fixes bug #61218.
960 2004-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
962 * ChunkStream.cs: added ChunkLeft property.
964 (EndRead): when using small byte arrays to read from a chunked stream,
965 ensure we've read the chunk size and try to fulfill the request
966 completely. fixes bug 59653.
968 2004-05-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
970 * WebConnectionStream.cs: fixed CanRead property. Closes bug #59273.
972 2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
974 * DigestClient.cs: cache the sessions based on address and
975 credentials, not only address. Added poor men's expiration to
976 the session cache. Fixes bug #59202.
978 2004-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
982 * IPv6Address.cs: no more warnings about IPAddress.Address.
984 2004-05-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
986 * WebException.cs: implemented serialization .ctor and
989 2004-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
991 * WebAsyncResult.cs: don't create the WaitHandle if not needed.
993 2004-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
995 * HttpWebRequest.cs: added 3 missing properties for 1.1. They are not
998 * NetConfig.cs: added MaxResponseHeadersLength field.
1001 * ServicePointManager.cs: added missing properties for 1.1.
1003 2004-05-03 Sebastien Pouliot <sebastien@ximian.com>
1005 * WebConnection.cs: Use assembly name const to load Mono.Security.
1007 2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
1009 * NtlmClient.cs: Use assembly name const to load Mono.Security.
1011 2004-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1013 * WebConnectionStream.cs: avoid the exception when getting the content
1016 2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
1018 * HttpWebRequest.cs: Use a lock block instead of Monitor.Enter/Exit, so
1019 the lock is released in case of exception (for example, a
1020 ThreadAbortException). This also "fixes" bug #52417.
1021 Beware, this requires a runtime update (due to a bug in Monitor.Exit).
1022 * ServicePoint.cs: Changed method from internal to private, since it
1023 is not called from outside the class.
1025 2004-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1027 * HttpWebRequest.cs: added the exception status to the error message.
1028 * WebConnection.cs: add headers using SetInternal instead of Add to
1029 bypass header name validation. Fixes bug #55994.
1030 * WebHeaderCollection.cs: added SetInternal (string header).
1032 2004-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1035 * WebConnectionGroup.cs: the requests queue is now shared for all the
1036 connections belonging to the same connection group.
1038 2004-02-26 Sebastien Pouliot <sebastien@ximian.com>
1040 * DefaultCertificatePolicy.cs: New. Certificate validation
1041 policy compatible with the documented one present in Fx. It
1042 allows valid certificates and expired certificates to be used
1043 for SSL connections.
1044 * ServicePointManager.cs: Removed the DummyPolicy. Now creates
1045 a DefaultCertificatePolicy to validate certificates.
1047 2004-02-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1049 * ServicePoint.cs: SendContinue is always false for HTTP/1.0
1051 * WebConnection.cs: get rid of WaitForContinue() (yes!) and prevent
1052 calling more the ContinueDelegate more than once when we get the
1053 headers in several packets.
1055 * WebConnectionStream.cs: removed call to WaitForContinue.
1057 2004-02-25 Sebastien Pouliot <sebastien@ximian.com>
1059 * WebConnection.cs: Update previous patch to use HttpsClientStream
1060 (internal in Mono.Security assembly) in place of SslClientStream.
1061 This will reduce reflection and allow to use ICertificatePolicy.
1063 2004-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1065 * DigestClient.cs: fix quote handling. Reordered attributes in response.
1066 Fixed typo (QOP->CNonce). Now Digest works with apache2.
1068 2004-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1070 * DigestClient.cs: removed Console.
1071 * HttpWebRequest.cs: 401/407 were hanging for GET. Fixed.
1073 2004-02-24 Sebastien Pouliot <sebastien@ximian.com>
1075 * DigestClient.cs: Fixed issue with Apache server which do not use "
1076 for specifying the digest algorithm (.e.g. algorithm=MD5 not ="MD5").
1078 2004-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1080 * HttpWebRequest.cs: arghhh. I used the server response headers instead
1081 of what the client is supposed to send. Thanks to Helge Hess.
1083 2004-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1085 * AuthenticationManager.cs: implemented PreAuthenticate().
1087 * HttpWebRequest.cs: once we know the version of the server, use it if
1088 below the requested one. Remove 'Expect', 'Content-Length' and /or
1089 'Transfer-Encoding' if appropiate due to changes in version. Fixed
1090 'Host' header for non-standard ports. Support preauthentication. Closes
1093 2004-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1095 * HttpWebRequest.cs: check for missing or wrong URI in Location header
1098 * WebConnection.cs: if the data read does not contain all the headers,
1099 keep it around and read the rest until we get to the response body.
1100 Allow response code with no description. Fixed bug #54543.
1102 2004-02-18 Sebastien Pouliot <sebastien@ximian.com>
1104 * SecurityProtocolType.cs: Added missing [Serializable] to enum. Added
1105 Default and Ssl2 to NET_2_0 profile. Enum is now internal for NET_1_0
1106 profile (as we need it for SslClientStream).
1107 * ServicePoint.cs: Added internal SetCertificates(client,server).
1108 * ServicePointManager.cs: Added CheckCertificateRevocationList and
1109 CheckCertificateRevocationList static properties (public in 1.1,
1111 * WebConnection.cs: Dynamically creates a SslClientStream (from
1112 Mono.Security assembly) in case of https. Changed NetworkStream to
1115 2004-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1117 * HttpWebRequest.cs: send the 'Connection: keep-alive' header when we
1118 don't know the server version or it's 1.0.
1120 * ServicePoint.cs: added SetVersion.
1122 * WebAsyncResult.cs: remove ChunkAsyncResult.
1124 * WebConnection.cs: set the ServicePoint version when getting a response
1127 * WebConnectionStream.cs: when posting chunked content, send the head,
1128 body and trailer of the chunk at once instead of doing 3 separate
1129 writes, which may cause troubles.
1131 2004-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1133 * WebConnection.cs: if we get a 100 when we're not waiting for it, set
1134 that information in the ServicePoint.
1136 * WebConnectionStream.cs: send headers in the right order for
1139 2004-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1141 * WebConnectionStream.cs: fixed nullrefs in BeginWrite/EndWrite.
1143 2004-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1145 * HttpWebRequest.cs: on second and sucesive tries when authenticating,
1146 don't use chunked encoding for POST, as we know the content length and
1147 have the body. Nullify bodyBuffer always in CheckFinalStatus.
1149 * WebAsyncResult.cs: added ChunkAsyncResult property. It holds the
1150 IAsyncResult when writing CRLF at the end of a chunk.
1152 * WebConnectionStream.cs: support sending chunked data.
1154 2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
1156 * HttpWebRequest.cs: When retrying a POST request after an
1157 authentication failure, resend the body. This fixes bug #51841.
1158 * WebConnectionStream.cs: Added properties for getting what's been
1161 2004-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1163 * HttpWebRequest.cs: don't send 'Expect: 100-continue' for 1.0 version.
1165 2004-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1167 * HttpWebRequest.cs: support proxy authentication.
1169 2004-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1172 * DigestClient.cs: use IndexOf instead of StartsWith to deal with
1173 servers that provide several authentication schemas.
1175 2004-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1177 * ChunkStream.cs: use an array of buffers instead of a MemoryStream for
1178 storing the chunks. This way, we won't miss traling data from the
1179 previous chunk when a new one is received before the other is fully
1182 2004-01-27 Nick Drochak <ndrochak@ieee.org>
1185 * HttpWebRequest.cs:
1189 * WebConnectionStream.cs: Remove unused variables thus eliminating some
1192 2004-01-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1194 * WebConnection.cs: patch by Yaacov Akiba Slama that fixes 100-continue
1195 handling for the case when the same packet also contains the actual
1198 2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
1200 * HttpWebRequest.cs: Added missing property.
1202 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1204 * Dns.cs: don't block forever in EndResolve and EndGetHostByName. Fixes
1207 2004-01-16 Lluis Sanchez Gual <lluis@ximian.com>
1209 * ChunkStream.cs: The "size" parameter of Write is not the number of
1210 bytes to write, but the last offset to be written. Thus, in WriteAndRead
1211 Back, since "read" is not an offset but the number of bytes, it must be
1212 added to the offset. Maybe it would be a good idea to change the name of
1213 the parameter, since it is confusing. This should fix bug #52591.
1215 2004-01-12 Lluis Sanchez Gual <lluis@ximian.com>
1217 * WebConnection.cs: Yet another fix for WebConnection. This fixes
1220 2004-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1222 * WebConnection.cs: Data.Init is a bad boy. Lluis realized. He also
1223 tidied up the end of ReadDone. Disabled relaunching the request if 2
1224 InitRead are called, since now we don't throw everything into
1225 RegisterWaitForSingleObject but one request at a time.
1227 * WebConnectionGroup.cs: when checking available connections, allow them
1228 not to be Connected but allocated to honor the connection limit.
1230 * WebConnectionStream.cs: CheckComplete() now checks for nextReadCalled
1231 too. ReadAll don't mess contentLength if it's provided in the headers.
1233 BIG thanks to Lluis. Turns out that we were debugging the same stuff and
1234 his Data.Init discovery was THE thing I was missing.
1238 2004-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1240 * ServicePointManager.cs: use GetMaxConnections to get the appropiate
1241 number of connections limit.
1243 2004-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1245 * MonoHttpDate.cs: use the invariant culture, not en-US. Suspected
1246 guilty for bug 52629.
1248 2003-12-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1250 * CredentialCache.cs: return null instead of throwing NotImplemented.
1252 2003-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1254 * HttpWebRequest.cs: fixed checking if method allows a body. Patch by
1255 Benjamin Jemlich (pcgod@gmx.net).
1257 2003-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1259 * HttpWebRequest.cs: deal with authentication schemes that have more
1260 than 1 round trip (Ntlm).
1262 2003-12-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1264 * NtlmClient.cs: new class that actually uses one from Mono.Http to do
1267 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1269 * HttpWebRequest.cs: when building the redirect URI, use the previous
1270 one as the base URI, which makes relative URIs work.
1272 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1274 * DigestClient.cs: merged in code from Sebastien Pouliot and Greg
1275 Reinacker that Supports cnonce and preauthentication.
1277 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1279 * DigestClient.cs: initial Digest authentication. Works with apache
1282 2003-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1284 * HttpWebRequest.cs: removed unneeded StringBuilder.
1285 * WebConnection.cs: default to keep the connection open for HTTP/1.1
1286 only or HTTP/1.0 + (Proxy-)Connection header. Fixes bug #51208.
1288 2003-11-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1290 * WebConnection.cs: turns out that socket.Connected is not useful until
1291 we actually try to send/receive data, even if the other end has already
1292 closed the socket. Added TryReconnect() and Connected.
1294 * WebConnectionData.cs: default value for StatusCode is 0 now.
1296 * WebConnectionGroup.cs: reuse the connection since the beginning,
1297 instead of opening up to ConnectionLimit and then reusing.
1299 * WebConnectionStream.cs: reopen the socket if we're trying to reuse
1300 one which fails on first write.
1302 2003-11-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1304 * WebConnectionStream.cs: when a callback is passed to BeginRead/Write,
1305 wrap it and do our job before calling it. Fixes bug #48497.
1307 2003-11-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1309 * WebExceptionStatus.cs: Restyled, Added .Net 1.1 members
1310 * SecurityProtocolType.cs: Added and implemented
1312 2003-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1314 * HttpWebRequest.cs: fixed redirects when they target another host.
1316 2003-11-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1318 * IPAddress.cs: prevent exceptions when trying to parse the static IPv6
1321 2003-10-17 Pedro MartÃnez Juliá <yoros@wanadoo.es>
1323 * WebClient.cs: use Path.DirectorySeparator instead of "/" for
1324 windows compatibility. Add some checks for file paths like
1325 "C:/xxx/yyy/..." and like "/home/xxx/...".
1327 2003-10-16 Pedro MartÃnez Juliá <yoros@wanadoo.es>
1329 * WebClient.cs: added a slash between directory and file names.
1331 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1333 * HttpWebRequest.cs:
1334 * HttpWebResponse.cs: better abort handling and leave the stream in a
1335 stable status on abort.
1337 2003-10-12 Pedro MartÃnez Juliá <yoros@wanadoo.es>
1339 * WebClient.cs: refine reading of local files (like MS.NET).
1341 2003-10-10 Pedro MartÃnez Juliá <yoros@wanadoo.es>
1343 * WebClient.cs: MS.NET works right when we try OpenRead("file.txt")
1344 but we didn't. Now, when Uri fails with an exception, it adds
1345 "file://" before the URI and tries again.
1347 2003-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1349 * ServicePoint.cs: preparing for recycling. Not yet finished.
1350 * ServicePointManager.cs: this is the one that reads config.
1351 * WebConnectionGroup.cs: don't read config here.
1352 * WebConnection.cs: added the queue again. Launch queued requests on
1355 2003-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1357 * WebConnection.cs: the queue is now handled by the threadpool.
1358 Initialize the connection data in a place where it does not depend on
1359 the execution order of the requests in threadpool. More error handling.
1361 * WebConnectionGroup.cs: use the limits in the config file and reuse
1362 connections when the limit is reached.
1364 2003-10-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1366 * HttpWebRequest.cs: handle 304 Ã la MS.
1367 * WebConnection.cs: set the response data when reading 0 bytes.
1369 2003-09-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1371 * WebConnectionStream.cs: fix by Lluis to avoid the stream being in an
1374 2003-08-14 Nick Drochak <ndrochak@gol.com>
1376 * WebRequest.cs: Check lower case string since that is what we will add.
1378 2003-08-04 Jerome Laban <jlaban@wanadoo.fr>
1380 * IPHostEntry.cs: Default contructor must not initialize members.
1383 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1385 * CredentialCache.cs: Removed undefined serializable attribute
1387 2003-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1390 (WantMore): true if we've not received the last chunk yet. Fixes
1391 bug #45463. Thanks to Miguel for tracking this down and providing a
1394 * WebConnection.cs: removed bogus ^M's.
1396 * WebHeaderCollection.cs: provide more info when the header or value is
1399 2003-07-15 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1401 * ChunkStream.cs: Removed unused members
1402 * IPAddress.cs: Removed unused exception variable, fixes compiler
1404 * WebConnection.cs: Removed unused exception variables, fixes compiler
1407 2003-07-14 Lluis Sanchez Gual <lluis@ximian.com>
1409 * NetConfig.cs: If Clone method is not public, then it must use
1410 explicit interface method implementation syntax.
1412 2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
1414 * Dns.cs: Reworked indentation.
1416 Added literal address checking in GetHostByAddress.
1417 Changed Dns.Resolve behavior.
1419 * IPEndPoint.cs: Added IPv6 support.
1420 * IPv6Address.cs: Added address compression.
1421 * NetConfig.cs: Added configuration section.
1423 2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
1425 * ServicePoint.cs: Removed Connect and GetEndPoint methods.
1426 Removed reverse resolution when uri is literal IP address.
1427 * WebConnection.cs: IPv6 compatibility update: Try to connect
1428 to all addresses returned by IPHostEntry.
1429 * WebConnectionGroup.cs: Removed unused parameter.
1431 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1433 * WebProxy.cs: Add serialization/ deserialization support
1435 2003-07-10 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1438 * WebStatus.cs: Deleted (do not exist in this assembly)
1439 * IPv6Address.cs: Made internal
1441 2003-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1443 * HttpWebRequest.cs:
1444 * ServicePointManager.cs:
1445 * WebConnection.cs: added support for proxies.
1447 2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1449 * DnsPermissionAttribute.cs:
1450 * SocketPermissionAttribute.cs: Fixed wrong AttributeUsageAttribute
1452 2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1454 * WebPermission.cs: Added and partially implemented
1455 * WebPermissionAttribute.cs: Added and implemented
1457 2003-07-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1459 * WebClient.cs: fixed bug #45651.
1461 2003-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1463 * WebClient.cs: Small fix by Sebastian <scut@nb.in-berlin.de>.
1465 2003-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1467 * WebConnection.cs: fixed header writing the reusing a connection and
1468 the server does not send 100-continue response.
1470 2003-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1472 * WebConnection.cs: close the socket and connection when disposing.
1473 * WebRequest.cs: removed setter for RequestUri. Allow non-public ctors
1474 when creating instances.
1476 * HttpWebRequest.cs:
1477 * HttpWebResponse.cs:
1478 * FileWebRequest.cs: support serialization.
1480 * FileWebResponse.cs: support serialization and fixed dispose checks.
1482 * FileWebRequestCreator.cs:
1483 * HttpRequestCreator.cs: added internal .ctor.
1485 2003-06-24 Lluis Sanchez Gual <lluis@ximian.com>
1487 * HttpWebRequest.cs: SetWriteStream(): SendRequestHeaders should be
1488 called before asyncWrite.SetCompleted, to make sure that the waiting
1489 thread does not start to send more information before
1490 SendRequestHeaders has finished.
1492 2003-06-22 Lluis Sanchez Gual <lluis@ximian.com>
1494 * WebConnectionStream.cs: Only increment pendingReads if an asynchronous
1495 read is really needed.
1497 2003-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1499 * WebHeaderCollection.cs: prevent duplication headers used niternally.
1501 2003-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1503 * HttpWebRequest.cs: if CookieContainer has not been set, make
1504 HttpWebResponse ignore Set-Cookie* headers.
1506 * HttpWebResponse.cs: Set-Cookie and Set-Cookie headers removed if
1507 CookieContainer have been provided to the request.
1509 2003-06-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1511 * AuthenticationManager.cs: get the list of authentication modules from
1512 the configuration files. Added Clear and fixed Unregister.
1514 * BasicClient.cs: fully implemented.
1516 * HttpWebRequest.cs: added support for Basic authentication when
1517 credentials are set.
1519 * NetworkCredential.cs: fixed GetCredential.
1521 2003-06-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1523 * HttpWebRequest.cs: *really* take care of requestSent to prevent
1524 sending the same request twice.
1525 * WebAsyncResult.cs: don't close the handle. Just Reset.
1526 * WebConnectionStream.cs: removed unneeded line.
1528 2003-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1530 * HttpWebRequest.cs: use InternalClose when we are not going to send the
1531 rest of the request stream because of an error after sending the
1534 * WebConnection.cs: check for completion after setting the response.
1535 Enable reading in NextRead.
1537 * WebConnectionStream.cs: re-fixed the count for partially buffered
1538 reads. If the network stream returns 0 bytes, we're done.
1540 2003-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1542 * WebClient.cs: implemented UploadFile. Fixed SetupRequest to set the
1543 special headers *after* the others.
1545 2003-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1547 * WebConnectionStream.cs: when the read is partially filled from the
1548 initial buffer, add those bytes too. Thanks to Lluis for debugging this.
1550 2003-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1552 * HttpWebRequest.cs: added ExpectContinue property.
1553 * WebConnection.cs: allow 100 Continue to be delayed after waiting for
1556 2003-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1558 * HttpWebRequest.cs: don't send "Expect: 100-continue" is the server
1559 is known not to respond to that.
1561 * ServicePoint.cs: added SendContinue property.
1563 * WebConnection.cs: only wait 2 seconds for a continue reply. If it
1564 timeouts, set SendContinue to false and proceeed sending data.
1566 * WebConnectionStream.cs: if 100-continue is not received and instead we
1567 get a 417 or anything else, don't send the data.
1569 * WebClient.cs: implemented all missing properties and methods except
1572 2003-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1574 * FileWebRequestCreator.cs: splitted from WebRequest.
1575 * HttpRequestCreator.cs: splitted fromWebRequest.
1576 * WebRequest.cs: added methods that are used by the new configuration
1577 handler to set prefix/type name requests creators.
1579 2003-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1581 * AuthenticationManager.cs:
1583 * BasicClient.cs: new file.
1584 * ChunkStream.cs: new file.
1586 * CookieContainer.cs:
1587 * GlobalProxySelection.cs:
1588 * HttpWebRequest.cs:
1589 * HttpWebResponse.cs:
1590 * IAuthenticationModule.cs:
1592 * ServicePointManager.cs:
1593 * WebAsyncResult.cs: new file.
1594 * WebConnection.cs: new file.
1595 * WebConnectionData.cs: new file.
1596 * WebConnectionGroup.cs: new file.
1597 * WebConnectionStream.cs: new file.
1599 * WebHeaderCollection.cs:
1603 Reworked HttpWebRequest and related classes.
1605 2003-05-30 Miguel de Icaza <miguel@ximian.com>
1607 * HttpWebRequest.cs (EndGetResponse): Do not throw exceptions on
1608 InternalServerError (500)
1610 2003-05-29 Miguel de Icaza <miguel@ximian.com>
1612 * HttpWebRequest.cs (Close): Move the code that accumulates the
1613 output to Close from Flush. Flush could have been called in the
1614 middle of the processing, and would have generated invalid results
1617 2003-05-23 Zoltan Varga <vargaz@freemail.hu>
1619 * Dns.cs (GetHostByAddress): Return the local host when called with
1622 2003-04-29 Miguel de Icaza <miguel@ximian.com>
1624 * WebClient.cs (DownloadData): Close the underlyng stream.
1625 (DownloadFile): Use using, so the file gets closed.
1627 2003-04-24 Miguel de Icaza <miguel@ximian.com>
1629 * WebClient.cs (DownloadData): Instead of using a MemoryStream,
1630 keep track of all the small chunks in an ArrayList. The
1631 MemoryStream had the property of reallocating itself, and the
1632 problem was that MemoryStream.GetBuffer would return the buffer
1633 (correctly), but not something of the right size. So clients of
1634 DownloadData would get the extra unused bytes as part of the
1637 The solution would have been to make another copy at this point,
1638 instead, we only keep the small allocations around in the
1639 ArrayList, and we only do one large allocation at the end.
1641 * HttpWebResponse.cs: If there is a Content-Length header, pass
1642 this information to our HttpWebResponseStream, so it knows when to
1643 stop, instead of waiting for the stream to be shut down by the
1646 * HttpWebRequest.cs: Only set the `delay-header-writing' mode on
1647 the underlying stream if the method will do a content transfer and
1648 no Content-Length was provided. If not (HEAD and GET or
1649 Content-Length provided), keep going.
1651 2003-04-23 Miguel de Icaza <miguel@ximian.com>
1653 * HttpWebRequest.cs: .NET Allows the HttpWebRequest to not have
1654 the ContentLength specified on the request. If that happens, we
1655 have to accumulate all the data written, and once we accumulate
1656 the data, we send it off.
1658 Notice that the documentation in .NET is actually incorrect, they
1659 state that setting ContentLength is mandatory. It is not.
1661 2003-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1663 * HttpWebResponse.cs: fixes bug #41180.
1665 2003-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1667 * HttpWebRequest.cs: throw an exception is the response code is >= 300.
1669 2003-03-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1671 * HttpWebRequest.cs: implemented IDisposable, make the request stream
1672 read only. Changed the way of disposing the socket.
1674 * HttpWebResponse.cs: wrapped the socket in a write-only NetworkStream,
1675 handle chunked transfer encoding (no more hangs), added serialization
1676 stuff, call CheckDisposed at the beginning of methods/properties (not
1677 in a finally clause).
1679 2003-02-17 Nick Drochak <ndrochak@gol.com>
1681 * WebClient.cs : Implemented Credentials property.
1683 2003-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1685 * SocketAddress.cs: byte 1 of the data is the high byte of the family,
1688 2003-01-29 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1690 * WebClient.cs : hacked OpenRead, DownloadData and DownloadFile.
1692 2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1694 * HttpWebRequest.cs: applied patch from Tim Haynes
1695 (thaynes@openlinksw.com).
1697 Avoided double-sending of the request to the server when both
1698 GetRequestStream() and GetResponse() are called.
1699 System Header attributes survive the Headers attribute set.
1700 Added handling of Connection: KeepAlive/Close
1702 2002-10-03 Dick Porter <dick@ximian.com>
1704 * Dns.cs: Fixed GetHostName()
1706 2002-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1708 * HttpWebRequest.cs:
1709 * HttpWebResponse.cs: applied another patch from Shahms E. King
1710 (shahms@shahms.com).
1712 2002-09-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1714 * HttpWebRequest.cs:
1715 * HttpWebResponse.cs: applied patch from Shahms E. King
1716 (shahms@shahms.com).
1718 2002-05-29 Lawrence Pit <loz@cable.a2000.nl>
1720 * MonoHttpDate.cs: added
1721 * HttpWebRequest.cs: using MonoHttpDate
1722 * HttpWebResponse.cs: using MonoHttpDate
1723 * DnsPermission.cs: correct XML output
1724 * SocketPermission.cs: correct XML output
1726 2002-05-21 Lawrence Pit <loz@cable.a2000.nl>
1728 * WebClient.cs: stubbed
1729 * WebProxy.cs: fixed bug; had to change internal representation
1730 of bypasslist to ArrayList, different implementation of checking
1733 2002-05-20 Lawrence Pit <loz@cable.a2000.nl>
1735 * WebProxy.cs: added, implemented
1736 * ServicePoint.cs: implemented most
1737 * ServicePointManager.cs: implemented
1738 * HttpWebRequest.cs: started implementation
1739 * HttpWebResponse.cs: improved disposable routines
1740 * FileWebRequest.cs: slight improvement of Close method
1742 2002-05-19 Lawrence Pit <loz@cable.a2000.nl>
1744 * FileWebRequest.cs: finished implementation of async methods.
1745 * FileWebResponse.cs: improved disposable routines.
1746 * IPEndPoint.cs: fixed bug #24666 in Serialize and Create methods,
1747 byte ordering of address was backwards.
1749 2002-05-13 Lawrence Pit <loz@cable.a2000.nl>
1751 * Dns.cs: Reimplemented (simplified and fixed) asynchronous methods by
1752 relying on standard asynchronous delegate features. Added checks for
1754 * HttpWebResponse.cs: implemented properties
1755 * FileWebResponse.cs: improved the way resources are disposed.
1756 * FileWebRequest.cs: started implementation of asynchronous methods
1757 * ServicePointManager.cs: implemented properties
1759 2002-05-12 Lawrence Pit <loz@cable.a2000.nl>
1761 * HttpWebRequest.cs: properties implemented
1762 * HttpWebResponse.cs: added
1763 * GlobalProxySelection.cs: implemented
1764 * FileWebResponse.cs: added
1765 * FileWebRequest.cs: some methods implemented
1767 2002-05-11 Lawrence Pit <loz@cable.a2000.nl>
1769 * WebHeaderCollection.cs: implemented
1770 * WebRequest.cs: implemented
1771 * FileWebRequest.cs and HttpWebRequest.cs stubs added
1773 2002-05-09 Lawrence Pit <loz@cable.a2000.nl>
1775 * Rewrote IPAddress.Parse method, passing all unit tests
1777 2002-05-09 Lawrence Pit <loz@cable.a2000.nl>
1779 * fixed bug in IPEndPoint.Equals method
1780 * fixed bug in IPAddress.Parse method
1781 * fixed bug in IPAddress.SwapLong method
1782 * fixed several bugs in Cookie.cs
1784 2002-05-06 Lawrence Pit <loz@cable.a2000.nl>
1786 * WebRequest.cs: added
1787 * WebResponse.cs: implemented
1788 * WebException.cs: implemented
1789 * WebHeaderCollection.cs: added
1790 * HttpVersion.cs: implemented
1791 * HttpContinueDelegate.cs: added
1792 * IWebProxy.cs: added
1793 * IWebRequestCreate.cs: added
1794 * ICertificatePolicy.cs: added
1795 * ServicePoint.cs: stubbed
1796 * ServicePointManager.cs: stubbed
1797 * CookieContainer.cs: added
1798 * Authorization.cs: implemented
1800 2002-05-05 Lawrence Pit <loz@cable.a2000.nl>
1802 * CredentialCache.cs: implemented
1804 2002-05-05 Lawrence Pit <loz@cable.a2000.nl>
1806 * IPAddress.cs: fixed IsLoopback, address was already in host order
1808 2002-05-05 Lawrence Pit <loz@cable.a2000.nl>
1810 * IPv6Address.cs: added (note: not part of .net spec)
1812 2002-05-01 Lawrence Pit <loz@cable.a2000.nl>
1814 * DnsPermission.cs: implemented
1815 * DnsPermissionAttribute.cs: implemented
1817 2002-04-28 Lawrence Pit <loz@cable.a2000.nl>
1819 * EndpointPermission.cs: implemented
1820 * SocketPermission.cs: implemented
1821 * SocketPermissionAttribute.cs: implemented
1822 * ProtocolViolationException.cs: implemented
1823 * Dns.c: passing w32 error code when no host found
1825 2002-04-27 Lawrence Pit <loz@cable.a2000.nl>
1827 * Cookie.cs: implemented
1828 * CookieCollection.cs: implemented
1829 * CookieException.cs: implemented
1831 2002-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1833 * IPAddress.cs: initialize the read only fields with Parse().
1835 2002-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1837 * IPAddress.cs: little changes to behave as MS.
1839 2002-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1841 * Dns.cs (Resolve): behave as MS. Agreed with Mads.
1843 2002-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1845 * IPAddress.cs: the icalls for sockets are endianness-aware. So I
1846 changed a few things. Also included a workaround for bug #23547.
1848 2002-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1850 * IPAddress.cs: use System.BitConverter.IsLittleEndian (suggested
1851 by Paolo) instead of guessing the endianness.
1853 * SocketAddress.cs: implemented Equals() and GetHashcode().
1855 2002-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1857 * IPEndPoint.cs: modifications to constructors according to the
1858 specifications (suggested by Lawrence Pit).
1860 2002-04-15 Patrik Torstensson <patrik.torstensson@labs2.com>
1862 * IPEndPoint.cs: Fixed build breaker.
1864 2002-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1866 * IPEndPoint.cs: implemented Equals() and GetHashCode(). Now 100%
1869 2002-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1871 * IPAddress.cs: finished all MonoTODO's. Use network order to store
1872 the address. Check for max and min values in Address:set. IsLoopback()
1873 returns now true for all 127.x.y.z. Some more checks in Parse ().
1874 Some changes to behave as MS does.
1876 2002-02-24 Duncan Mak <duncan@ximian.com>
1878 * ICredentialLookup.cs: Added the GetCredential method to the
1879 interface. The interface is named "ICredentials", should this file
1882 * NetworkCredential.cs: Added to CVS. Need to investigate on how
1883 GetCredential() works
1885 2002-01-23 Dick Porter <dick@ximian.com>
1887 * SocketAddress.cs: Implemented.
1889 * IPEndPoint.cs: Turned 'Address' field into a real property.
1890 Implemented Create() and Serialize() methods.
1892 * IPAddress.cs: Fixed class constructor, turned 'Address' field
1893 into a real property. Removed undocumented "public
1894 IPAddress(string)" constructor.
1896 * EndPoint.cs: Implemented. All methods return
1897 NotSupportedException to enforce subclass overriding.
1899 * Dns.cs: Replaced fixed-layout Hostent struct and cygwin
1900 P/Invokes with portable internal calls.
1902 2002-01-17 Miguel de Icaza <miguel@ximian.com>
1904 * Dns.cs: Updated to API changes.
1906 * IPAddress.cs: Updated API. Much left to implement.
1908 * Dns.cs: Remove IPToString method
1910 2002-01-06 Ravi Pratap <ravi@ximian.com>
1912 * Dns.cs, AuthenticationManager.cs, SocketAddress.cs : MonoTODO
1913 attribute insertion.
1915 2001-11-22 Nick Drochak <ndrochak@gol.com>
1917 * IPAddress.cs: Fix constructor bug, properly name Address property,
1918 and use triple-slash for comments.
1920 2001-11-20 Miguel de Icaza <miguel@ximian.com>
1922 * IPAddress.cs: Updated to contain Any, Broadcast, Loopback and
1923 None as suggested by Phillip.
1925 2001-09-26 Mads Pultz <mpultz@get2net.dk>
1926 * Dns.cs: Initial work on BeginGetHostByName and EndGetHostByName implemented.
1928 2001-09-24 Mads Pultz <mpultz@get2net.dk>
1930 * Dns.cs: Minor changes (some print statements removed)
1932 2001-09-23 Mads Pultz <mpultz@get2net.dk>
1934 * Dns.cs: Initial work submitted to repository.
1935 * IPHostEntry.cs: Initial work submitted to repository.
1937 2001-07-12 Sean MacIsaac <macisaac@ximian.com>
1939 * Authorization.cs: Fixed compiler error.
1941 * IAuthenticationModule.cs: Changes for Beta2.
1943 * IPAddress.cs: Internal storage changed to be uint not int.
1945 * IPEndPoint.cs: Fixed compiler error.
1947 * EndPoint.cs: Fixed compiler error.
1949 * AuthenticationManager.cs: Fixed typo.