In System.Timers:
[mono.git] / mcs / class / System / System.Net / ChangeLog
index 870c52dfbaebdbd6a2aa67179efea988269c879f..5b7ceb13e93880865fccbbe2009424c82b604e78 100644 (file)
@@ -1,3 +1,551 @@
+2010-03-19  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * AuthenticationManager.cs: Internal type for Moonlight.
+       Add BasicClient, DigestClient, NtlmClient for NET_2_1 since
+       this applies to both monotouch and moonlight (client stack).
+       Removed unneeded NET_2_0 defines
+       * CookieContainer.cs: For Moonlight it needs to be internal in 
+       System.dll and public in System.Net.dll. Removed unneeded NET_2_0
+       defines
+       * HttpContinueDelegate.cs: Internal type for Moonlight.
+       * HttpRequestCreator.cs: Remove a MOONLIGHT define
+       * HttpStatusCode.cs: For Moonlight it needs to be internal in 
+       System.dll and public in System.Net.dll
+       * HttpWebRequest.cs: Internal type for Moonlight. Change S.Config
+       to NET_2_1 defines (applies to both monotouch and moonlight).
+       Removed unneeded NET_2_0 and NET_1_1 defines
+       * HttpWebResponse.cs: Internal type for Moonlight. Removed 
+       unneeded NET_2_0 defines
+       * IAuthenticationModule.cs: Internal type for Moonlight.
+       * ICertificatePolicy.cs: Internal type for Moonlight.
+       * ICredentialPolicy.cs: Internal type for Moonlight. Removed 
+       unneeded NET_2_0 defines
+       * IWebRequestCreate.cs: For Moonlight it needs to be internal in 
+       System.dll and public in System.Net.dll
+       * ServicePoint.cs: Internal type for Moonlight. Change S.Config
+       to NET_2_1 defines (applies to both monotouch and moonlight)
+       * ServicePointManager.cs: Remove a MOONLIGHT define
+       * WebException.cs: For Moonlight it needs to be internal in 
+       System.dll and public in System.Net.dll. Removed unneeded NET_2_0
+       defines
+       * WebHeaderCollection.cs: Internal type for Moonlight. Removed 
+       unneeded NET_2_0 defines
+       * WebRequest.cs: Internal type for Moonlight. Change S.Config
+       to NET_2_1 defines (applies to both monotouch and moonlight)
+       * WebResponse.cs: Internal type for Moonlight. Removed unneeded
+       NET_2_0 defines
+
+2010-03-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebResponse.cs:
+       * FtpWebRequest.cs: for non-data operations, make sure we send the
+       QUIT command upon completion when KeepAlive is false.
+       Fixes bug #589305.
+
+2010-03-16  Jb Evain  <jbevain@novell.com>
+
+       * Dns.cs, HttpRequestCreator.cs, ServicePoint.cs: use MOONLIGHT
+       symbol to disambiguate MonoTouch and Moonlight code.
+
+2010-03-11 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ServicePointManager.cs: perform the entire chain validation here.
+
+2010-03-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpConnection.cs: set the right position when a CR is found.
+       Fixes bug #577891.
+
+2010-03-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpListener.cs:
+       * HttpListenerRequest.cs:
+       * ListenerAsyncResult.cs:
+       * HttpConnection.cs: make sure there is no pending input when reusing
+       the connection.
+
+2010-03-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpListenerContext.cs: split the auth header in 2 parts.
+       * HttpListener.cs: backported SelectAuthenticationScheme and
+       added new InternalEndGetContext used for connections that require
+       authentication.
+       * ListenerAsyncResult.cs: allow this object to be just a forwarder
+       when nesting connections for authentication purposes.
+       Fixes bug #585455.
+
+2010-03-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebClient.cs: fix for UploadStringAsync(). Closes bug #577818.
+       Patch by Atsushi.
+
+2010-03-04  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HttpListenerContext.cs : WWW-Authenticate header should not be
+         limited to Basic.
+
+2010-03-04  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HttpListenerContext.cs : The header line here is already trimmed
+         "Authorization:" , so do not try to remove it.
+
+2010-03-04  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HttpListener.cs, ListenerAsyncResult.cs : fix authentication
+         scheme selection mismatch.
+
+2010-03-03  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HttpListenerContext.cs, HttpListener.cs :
+         support AuthenticationSchemeSelectorDelegate.
+
+2010-03-01  Miguel de Icaza  <miguel@novell.com>
+
+       * WebHeaderCollection.cs: Apply 2 year old patch from Yves Bastide
+       that fixes the keys casing in the collection; Fixes 325491
+
+2010-03-01 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: attach a validation callback to the new
+       event in Mono.Security.
+       * ServicePointManager.cs: added a new ValidationHelper
+       class that takes care of building the certificate chain and perform
+       all the check that were done in Mono.Security before. This way the 2.0
+       server certificate validation callback can get all the data it needs.
+
+       Fixes bug #584050.
+
+2010-01-29  Mike Kestner <mkestner@novell.com>
+
+       * HttpUtility.cs: port more of the methods from System.Web file.
+       * WebUtility.cs: new 4.0 class.
+
+2010-01-21  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * IPEndPoint.cs: When throwing an ArgumentException in Create()
+       because of a mismatch in the address family, use a more informative
+       message. Patch by Juho Vaha-Herttu<juhovh@iki.fi>.
+       Fixes #505105.
+
+2010-01-21  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CookieContainer.cs: Fix to cloning and expiration. Patch
+       by Tom Philpot <tom.philpot@logos.com>
+
+2010-01-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: when the server returns several different
+       authentication methods, pick the one that works.
+       Fixes bug #562043.
+
+2010-01-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * NetworkCredential.cs: Fix properties to never return null.
+
+2009-12-24  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Cookie.cs: Re-work ToString to be useable in more cases. Fix
+       some issues found by Gendarme.
+       * CookieContainer.cs: Fix all NonWorking (and new) unit tests.
+       Implement removing oldest cookies when limits are reached.
+       * CookieCollection.cs: Move to generics internally. Fix sort to 
+       be closer to MS implementation (but still not 100% identical).
+       Fix some issues found by Gendarme.
+
+2009-12-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionGroup.cs:
+       * ServicePoint.cs: implemented CloseConnectionGroup().
+
+2009-12-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * System.Net/DnsEndPoint.cs: Moved from System.Net (where the
+       type resides in Moonlight) so it's available for 4.0
+
+2009-11-30  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CookieCollection.cs: Seal inner CookieCollectionPathComparer
+       * IPAddress.cs: Avoid multiple casts in Equals
+       * SocketAddress.cs: Avoid multiple casts in Equals
+       [Found using Gendarme]
+
+2009-10-23  Alexandre Gomes  <alexmipego@gmail.com>
+
+       * WebClient.cs: Fixed GetWebRequest overriding problems, bug: 
+         https://bugzilla.novell.com/show_bug.cgi?id=549580
+         
+2009-10-17 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: add 3 missing DoCallback() calls in
+       EndRead/EndWrite.
+
+2009-09-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * EndPointListener.cs: fix matching a listener in presence of a query
+       string or anchor.
+
+2009-09-15 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpListenerRequest.cs: add the right status code.
+       * HttpConnection.cs: exception might come from more places when
+       reading the input. Catch all of them.
+
+2009-09-15 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebRequest.cs: handle upper and lowercase HTTP_PROXY and the Any
+       address. Fixes bug #537283.
+
+2009-09-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: if the request has already finished reading, don't
+       throw ObjectDisposedException here, just return as if nothing
+       happened. Fixes bug #312968.
+
+2009-08-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: HEAD response does not have a body even if the
+       response is an error. Fixes buf #535102.
+
+2009-08-17  Geoff Norton  <gnorton@novell.com>
+
+       * NtlmClient.cs: Mono.Http does not exist on monotouch
+
+2009-08-17  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CookieCollection.cs: Seal class for NET_2_1 (SL3)
+       * CookieContainer.cs: Seal class for NET_2_1 (SL3)
+       * NetworkCredential.cs: Use in NET_2_1 (SL3) but without implementing
+       ICredentialsByHost
+
+2009-08-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs:
+       * WebConnectionStream.cs: if there's an error writing the headers from
+       a buffered request, propagate the error instead of hiding it and
+       causing a different one later (ie, ObjectDisposedException instead of
+       the original WebException). This happened when posting without
+       Content-Length set to an HTTPS url without validating the server
+       certificate.
+
+2009-07-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebClient.cs: rethrow WebExceptions instead of creating a new one
+       with less information on the actual error.
+       Fixes bug #526069.
+
+2009-07-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebHeaderCollection.cs: check the validity of the characters in the
+       header names.
+
+2009-07-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebHeaderCollection.cs: implemente the 2.0 IsRestricted().
+
+2009-07-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: when sending a 0-length POST, ignore further
+       writes instead of throwing.
+       Fixes bug #524049.
+
+2009-07-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebClient.cs: implement GetWebRequest and GetWebResponse. Use them
+       instead of SetupRequest and ProcessResponse.
+
+2009-07-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebClient.cs: set the content length when uploading values. This
+       allows reusing the connection.
+       * WebConnectionStream.cs: SetHeaders() takes ownership of the buffer
+       and does not need to copy it any more. WriteRequest() wasn't always
+       setting 'requestWritten' to true.
+       * HttpWebRequest.cs: change in SetHeaders call.
+
+2009-07-06  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * WebConnectionStream.cs: Move and improve argument checks to match MS.
+       Modified CanRead and CanWrite to return false when instance is disposed.
+
+2009-07-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: provide better error message when there's an error
+       writing.
+       * WebConnectionStream.cs: don't nullify the buffer until
+       CheckFinalStatus() decides that there are no more authentication
+       retries or redirects.
+
+2009-07-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ServicePointManager.cs: implement ServerCertificateValidationCallback.
+       * DefaultCertificatePolicy.cs: if there's a SCVC registered, don't do
+       normal error checking.a
+
+2009-07-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: avoid duplicating Accept-Encoding if GetHeaders()
+       is called twice.
+       * WebConnectionStream.cs: don't send a 0 content length for non-write
+       requests.
+
+2009-07-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: must use the 'int' version in 1.1.
+
+2009-07-01 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs:
+       * ServicePoint.cs: UseNagleAlgorithm determines NoDelay value.
+
+2009-06-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: fix 1.1 only test.
+
+2009-06-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: when buffering the response, we have to set
+       the internal length and regenerate the headers.
+
+2009-06-26 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: don't send Content-Length header when SendChunked
+       is enabled.
+       * WebConnectionStream.cs: send the headers immediately when possible.
+       When writing the request before a Close(), if there was an exception
+       it was lost.
+
+2009-06-26 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpConnection.cs:
+       * HttpListenerResponse.cs: force closing the socket when the response
+       is aborted.
+
+2009-06-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebAsyncResult.cs: new field that tells us if the request is being
+       written automatically because we reached the content length.
+       * WebConnection.cs:
+       * WebConnectionStream.cs: make sure we only access the NetworkStream
+       while we own it. Automatically write the request when we reach
+       ContentLength number of bytes. Kill the write buffer as soon as
+       possible. Don't use the buffer at all when chunked encoding is
+       enabled.
+
+       Fixes bugs #515931 and #510642.
+
+2009-06-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: 'socket' and 'Data' where being changed by 2
+       threads at the same time when there were queued requests and the
+       current one was aborted in Connect().
+       * HttpWebRequest.cs: 'aborted' is now an int and we use Interlocked to
+       access it. Added WebConnection field used when aborting the request.
+
+       Fixes bug #514591 for good.
+
+2009-06-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: check for an aborted request in Begin* before
+       proceeding. Fixes bug #511851.
+
+2009-06-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: close the underlying socket if there's an
+       exception when closing the stream. Fixes bug #514996.
+
+2009-06-20  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * WebConnectionStream.cs: Keep count of all bytes written, and perform
+       write overflow check in both buffered and non-buffered writing (if
+       not using chunked transfer encoding). Fixes bug #510642.
+
+2009-06-20  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * WebClient.cs: Use lowercase hex bytes to match MS. Avoid using
+       zero-length string literal. Fixed exception argument name to match
+       MS. 
+       * WebConnectionStream.cs: Throw a WebException that wraps an
+       IOException when closing the stream before all bytes are written.
+
+2009-06-19 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs: make sure we don't open a new socket if the
+       request is aborted before we establish the connection. Fixes bug
+       #514591.
+
+       * HttpWebRequest.cs: new property to return abort status. Invoke the
+       abort handler before doing anything else when Abort() is called for
+       the first time.
+
+2009-06-17 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * EndPointListener.cs: call CheckIfRemove() after removing a regular
+       prefix. Fixes bug #513849.
+       * EndPointManager.cs: make sure we use the right lock when one prefix
+       of a collection fails to be added and we need to remove all of the
+       prefixes.
+       Clear the ip_to_endpoints hashtable if there are no more prefixes
+       listening on that address.
+
+2009-06-16 Andres G. Aragoneses <aaragoneses@novell.com>
+
+       * WebConnection.cs: propagate the exception to the request.
+       * WebException.cs: new internal ctor.
+       * HttpWebRequest.cs: use new ctor to encapsulate the innerException.
+       Fixes #323452.
+
+2009-06-15 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: for unknown methods, always send the request once
+       we are connected even if there's no writeStream. Fixes bug #513087.
+
+2009-06-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: ProtocolViolationException is not thrown in
+       certain cases since 2.0. Fixes bug #508027.
+
+2009-06-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: follow MS docs when throwing
+       ProtocolViolationException at the beginning of an asynchronous
+       operation. Fixes bug #465613.
+
+2009-06-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: throw a WebException instead of an IOException.
+
+2009-06-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebRequest.cs: avoid exception when the reply from the server
+       contains just response code. Fixes bug #510852.
+
+2009-06-05  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * DownloadStringCompletedEventArgs.cs: Call RaiseExceptionIfNecessary
+       * OpenReadCompletedEventArgs.cs: Remove Address property since it's 
+       not part of SL2. Call RaiseExceptionIfNecessary
+       * OpenWriteCompletedEventArgs.cs: Call RaiseExceptionIfNecessary
+       * UploadStringCompletedEventArgs.cs: Call RaiseExceptionIfNecessary
+
+2009-06-05  Robert Jordan  <robertj@gmx.net>
+
+       * WebClient.cs (UploadValuesCore): Encode POST arguments with UTF-8.
+       Fixes bug #484795.
+
+2009-06-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: KeepAlive check not needed.
+       Fixes bug #465613.
+
+2009-06-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpConnection.cs: unbind the context after every read for keep-alive
+       connections.
+       Bug #502274 fixed.
+
+2009-05-17  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * CookieContainer.cs: Provide meaningful information in exception
+       messages, and improve compatibility with MS. Modified set_Capacity to
+       no longer change MaxCookieSize when new value is less than
+       MaxCookieSize.
+
+2009-05-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebResponse.cs:
+       * HttpWebRequest.cs: support automatic decompression of the response.
+       Fixes bug #504391.
+
+
+2009-05-11 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * Dns.cs: made GetHostAddresses and friends internal for 1.x
+       * EndpointPermission.cs: use GetHostAddresses.
+
+2009-05-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * CookieContainer.cs: matching hosts to domain names like MS does.
+       Bug #421827 fixed.
+
+2009-05-02  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * CredentialCache.cs : implement all not-implemented methods.
+         Patch by Mineda Nozomi. Close bug #499556.
+
+2009-04-21  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * EndPoint.cs: Throw NotImplementedException instead of 
+       NotSupportedException
+       * IPEndPoint.cs: Fix some validations.
+
+2009-04-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnection.cs:
+       * HttpWebRequest.cs: provide more information on why the connection
+       could not be established.
+
+2009-04-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebRequest.cs: send REST after PASV to avoid some servers
+       forgetting aboout it.
+       Bug #491590 fixed.
+
+2009-03-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebRequest.cs: we were sending CWD instead of PWD.
+       Bug #486703 fixed.
+
+2009-03-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * IPAddress.cs: don't allocate the IPv6 array for IPv4 addresses.
+
+2009-02-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebClient.cs: append the QueryString in DownloadData.
+       Fixes bug #323788.
+
+2009-02-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebResponse.cs: return a Null stream when there's no response to
+       be read.
+       * FtpWebRequest.cs: provide the error returned by the server in the
+       exception.
+       * WebClient.cs: set the correct method when doing a FTP upload.
+       Fixes bug #478451.
+
+2009-02-19 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * FtpWebRequest.cs: avoid errors when creating a temporary Uri to get
+       the local path.
+       * WebClient.cs: when setting up the request for downloading, use the
+       default method. Fixes bug #477611.
+
+2009-02-16  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * WebConnectionStream.cs : use request only after it is set.
+
+2009-02-13 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * WebConnectionStream.cs: implemente (Read|Write)Timeout.
+       Fixes bug #348159.
+
+2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * CookieContainer.cs: separate cookies with "; " instead of just ';'.
+       Fixes bug #386727.
+
+2009-02-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * HttpWebRequest.cs: lock SetResponseError.
+
+2009-02-08  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * Dns.cs: BeginGetHostAddresses - renamed argument to match MS,
+       reject "any" IP addresses. BeginGetHostEntry - renamed argument
+       to match MS, reject "any" IP addresses. GetHostEntry - reject
+       "any" IP addresses. GetHostAddresses - reject "any" IP addresses.
+       GetHostByName - use "hostName" as paramname in ANE.
+
 2009-02-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
 
        * Dns.cs: empty string for host (also 0.0.0.0) is just passed to the
 
        (TryParse): Provide a exception-less parsing path.
 
-2008-07-25  Gert Driesen  <drieseng@users.sourceforge.net>µ
+2008-07-25  Gert Driesen  <drieseng@users.sourceforge.net>μ
 
 2008-08-06  Atsushi Enomoto  <atsushi@ximian.com>