2011-02-08  Gonzalo Paniagua Javier  <gonzalo.mono@gmail.com>

	[SmtpClient] Don't send empty display name.

	If there's no display name, don't send '""'. Fixes bug #670475.

2011-01-25  Marek Habersack  <grendel@twistedcode.net>

	[system] SmtpClient implements IDisposable on 4.0 (a no-op for
	now)

2010-10-31  Gonzalo Paniagua Javier  <gonzalo.mono@gmail.com>

	Check that the default from is not empty

	This should fix a bunch of tests failing since MailAddress parsing
	was fixed.

2010-10-13  Gonzalo Paniagua Javier  <gonzalo.mono@gmail.com>

	Misc. fixes

	-Fix validation of display name and email. -Cache user, host and
	ToString() values. -Fix Equals and GetHashCode.

	Fixes bug 645871.

2010-10-08  Gonzalo Paniagua Javier  <gonzalo.mono@gmail.com>

	Add support for EnableSsl in smtp config.

	Ditto. Fixes bug #644816.

2010-08-04  Raja R Harinath  <harinath@hurrynot.org>

	* System.Net.Mail/SmtpClient.cs (SendCore): Compute envelope
	sender separately from the 'From: ' header. *
	Test/System.Net.Mail/SmtpClientTest.cs (Deliver_Envelope): New.

2010-06-28 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* SmtpClient.cs: support PLAIN authentication and throw if LOGIN and
	PLAIN are not supported. Fixes bug #607249.

2010-05-04  Miguel de Icaza  <miguel@novell.com>

	* Apply patch from Ted Unangst to fix bug 574049

2010-03-06 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* SmtpClient.cs: typo in reply-to header. Thanks to Chris Tomlinson.
	Fixes bug #578271.

2010-02-15 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* SmtpClient.cs: generate correct MIME when there are text and html
	linked resources. Fixes bug #579984. Patch by Ásgeir Halldórsson.

2010-01-21 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* SmtpClient.cs: rethrow inner exception so that
	AsyncCompletedEventArgs.Error gets the right value on error. Patch
	by Dimitar Dobrev.

2009-12-11  Miguel de Icaza  <miguel@novell.com>

	* SmtpClient.cs: Add half-implemented feature, TargetName for the
	SPN SMTP system.
	
	* SmtpClient.cs, MailMessage.cs: Add 4.0 APIs.

2009-08-20  Sebastien Pouliot  <sebastien@ximian.com>

	* SmtpClient.cs: Honor ServicePointManager.
	ServerCertificateValidationCallback when provided

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

	* Attachment.cs: set the body encoding for multipart attachments.
	Fixes bug #527177.

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

	* SmtpClient.cs: handle dots. Patch by Ted Unangst that fixes bug
	#392875.

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

	* SmtpClient.cs: remove unused variable and obsolete comment.

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

	* SmtpClient.cs: Actually set some of the headers like Priority,
	ReplyTo and Sender.

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

	* SmtpClient.cs : attachment stream consumption was insufficient.
	  Fix bug #347553, by David Ion.

2008-08-16  Gert Driesen  <drieseng@users.sourceforge.net>

	* SmtpClient.cs: Fixed paramname of Argument(Null)Exceptions to match
	MS. Removed upper limit check for Port. Modified Send to no longer
	allow a whitespace-only Host. Moved checks for SpecifiedPickupDirectory
	delivery method to SendFile, and use Path.IsPathRooted to check for
	absolute paths instead of using a unix-only check. In Send, wrap all
	non-SMTP errors in an SmtpException.
	* SmtpException.cs: Correctly chain up all .ctors. Removed extra
	null check in deserialization .ctor.

2008-08-15  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : fixed bug #382670, based on the patch by Ted
	  Unangst. DeriveryMethod.SpecifiedPickupDirectory was not supported.

2008-08-14  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : Patch by Ted Unangst, fixed bug #392843.
	  Encode emails correctly as well as join multiple emails
	  correctly.

2008-08-12  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : fixed bug #392682, in the same spirit in the
	  patch by Ted Unangst, to assure safety on socket closing.

2008-08-07  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : Fixed bug #392809, patch by Ted Unangst. Text body
	  was not copied to byte array which is being sent. 

2008-04-21  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* SmtpClient.cs: Fix bug with string handling

2008-04-21  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* SmtpClient.cs: Fix formatting

2008-04-20 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>

	* SmtpClient.cs: made ParseExtension() work. After STARTTLS, reset
	data retrieved from EHLO.
	Fixes bug #377463.

2008-04-03  Juraj Skripsky  <js@hotfeet.ch>

	* Attachment.cs (InitName): Use Path.GetFileName instead of Substring hack.
	Fixes bug #366947.

2008-01-29  Juraj Skripsky  <js@hotfeet.ch>

	* SmtpClient.cs (ToQuotedPrintable): Escape the escape character "=".

2008-01-29  Juraj Skripsky  <js@hotfeet.ch>

	* SmtpClient.cs: Remove ':' from the time zone offset in the
	mail's date field. Fixes bug #351443.
	(ToQuotedPrintable): Make sure text encoded as quoted-printable does
	not contain more then 76 chars per line (required by rfc1521). Fixes
	bug #351448.

2007-12-06  Atsushi Enomoto  <atsushi@ximian.com>

	* AlternateView.cs : supply charset info for ContentType.
	* SmtpClient.cs : for ToQuotedPrintable() input, don't use utf8
	  StreamReader to get input string. Just use Encoding.GetBytes().
	  Fixed bug #346162.

2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>

	* MailMessage.cs : fixing cosmetic .net compatibility. Automatically
	  fill ASCII when guessed encoding is nothing.

2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : fold base64 string at 76 characters.
	  Should fix bug #344974.

2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>

	* Attachment.cs : use correct TransferEncoding when (Text)Encoding
	  is specified.
	* MailMessage.cs : ContentTransferEncoding implementation went into
	  ContentType.

2007-12-04  Arina Itkes <arinai@mainsoft.com>

	* SmtpException.cs, SmtpFailedRecipientException.cs,
	  SmtpFailedRecipientsException.cs: 
	  Changes for SOAP serialization compatibility with .NET. 

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

	fixed bug #339037.
	* AlternateView.cs : CreateAlternateViewFromString() allows null
	  Encoding.
	* SmtpClient.cs : looks like when Body is null and AlternativeViews
	  contains only 1 item, then the alternate view becomes as if it
	  were just a body. To make this possible, added couple of more
	  transfer-encoding conversion methods.
	  For more AlternateViews cases, Body is treated
	  as empty. With attachments it is even complicated: those alternate
	  views are just in one boundary, so do not send empty string.
	  Removed debug output (Console.WriteLine).

	  What a mess.

2007-10-30 Arina Itkes <arinai@mainsoft.com>

	* SmtpClient.cs: Fix of SmtpClient.Read() method:
	Added check of string position before calling 
	Substring and IndexOf methods of string.

2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : small async refactory.

2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : Implemented async operations.

2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>

	* Attachment.cs : reverted previous change. NameEncoding is not
	  guessed at set_Name().

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : lunatic cyclic build.

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* AttachmentBase.cs : implemented Dispose(bool).

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* AttachmentCollection.cs : remove TODO.
	* Attachment.cs : guess NameEncoding when set_Name().
	* MailMessage.cs : moved encoding guess impl to ContentType.
	* SmtpClient.cs : moved RFC 2047 encoding impl to ContentType.
	  Support attachment Name encoding. Added some SSL changes (it's not
	  working yet).

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : attachment refactory. First, determine whether we
	  send multipart/mixed for attachments. Second, determine whether we
	  send multipart/alternative for AlternateViews.
	  Consider LinkedResources. Mark EnableSsl as TODO.

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* LinkedResource.cs : Now they are implemented and soon to be
	  supported. Fixed TransferEncoding (same as other AttachmentBase).

2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>

	* Attachment.cs : null name is allowed.

2007-10-19  Atsushi Enomoto  <atsushi@ximian.com>

	* AlternateView.cs, AttachmentView.cs, AttachmentBase.cs :
	  reverted default back to TransferEncoding.Base64 again, and use
	  QuotedPrintable only when created from string.
	  No need to check null Stream at AlternateView.ctor(). See base.
	* SmtpClient.cs : For multipart message, do not send body twice (it
	  still emits extraneous part, which should be fixed too).
	  Do not premise charset existence in every AttachmentBase.

2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>

	* AlternateView.cs : dispose linked resources. Remove MonoTODOs.
	* Attachment.cs : check null content string.
	  The string argument in .ctor(Stream,string) is name, not mediaType.
	  Use contentEncoding argument in CreateAttachmentFromString().
	* AttachmentBase.cs : TransferEncoding default is QuotedPrintable.

2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>

	* MailMessage.cs : removed MonoTODO. some comment.
	* SmtpException.cs, SmtpFailedRecipientsException.cs,
	  SmtpFailedRecipientException.cs : implemented serialization.

2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : use 3 StringBuilder.Replace() calls rather than
	  3 string.Replace() calls.

2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : do state check on other setters than set_Timeout().

2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>

	* MailMessage.cs : Some entire refactory on BodyEncoding and
	  IsBodyHtml. BodyEncoding and SubjectEncoding are guessed when
	  Body and Subject are set for each.
	* SmtpClient.cs :
	  Subject header is encoded according to RFC 2047.
	  Body is encoded according to RFC 2821.
	  Output Date header.
	  ToQuotedPrintable() should take encoding into consideration.
	  For SevenBit/Unknown TransferEncoding, just decode with ASCII.
	  In set_UseDefaultCredentials(), raise NIE only when value is true.
	  In set_Timeout(), raise an error when Send() is in progress.

2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : Replace every \r and \n with \r\n per RFC 2821 
	  section 2.3.7, or you will receive SMTP error 451.

2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>

	* AlternateViewCollection.cs, LinkedResourceCollection.cs,
	  AttachmentCollection.cs : added missing 2.0 members.

2007-06-17  Gert Driesen  <drieseng@users.sourceforge.net>

	* MailAddress.cs: Throw ArgumentNullException if address is null.
	Allow display name to be specified as part of the address. Fixes
	bug #81854. Return zero-length string in DisplayName if no display 
	name is set.

2007-05-31  Jeffrey Stedfast  <fejj@gnome.org>

	* SmtpClient.cs: Added an extensions parser to figure out if the
	ESMTP server supports things like STARTTLS and which AUTH
	mechanisms are supported. Don't try authenticating if no authmechs
	are supported.

2007-05-30  Jeffrey Stedfast  <fejj@novell.com>

	* SmtpClient.cs: Fall back to HELO if EHLO fails. Also, do not
	write out a Bcc header to the SMTP server - these are meant to be
	dropped. MAIL FROM: and RCPT TO: commands are not meant to have a
	space after the colon before the address - this will break on some
	SMTP servers.

2007-02-16  Geoff Norton  <gnorton@customerdna.com>

	* SmtpClient.cs: Dont send bare LF.  Send <CR><LF> regardless
	of platform.  (ref: http://cr.yp.to/docs/smtplf.html)

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

	* MailMessage.cs: Add suport to the MailMessage constructor to
	take a comma-separated list of addresses (Bug #80548). 

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

	* MailMessage.cs: Fix this code so that it correctly reports
	ArgumentNullExceptions.

2006-12-12  Atsushi Enomoto  <atsushi@ximian.com>

	* SmtpClient.cs : use CONFIGURATION_DEP when it is
	  System.Configuration.dll dependent.

2006-12-10  David Elkind  <davide@mainsoft.com>

	* Attachment.cs - proper file name handling added
	* AttachmentBase.cs - proper MIME type handling added
	* MailAddress.cs - Proper mail address handling ('<' and '>' addition) added
	* MailMessage.cs - Better construction sequence
	* SmtpClient.cs - Added proper handling of composite message (consisting of alternate views/attachments)
			- Added handling of user credentials 
			- Added handling of TLS (under TARGET_JVM)
			- Some other minor fixes

2006-12-04  Konstantin Triger  <kostat@mainsoft.com>

	* SmtpException.cs, SmtpFailedRecipientException.cs: TARGET_JVM limitation workaround.

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

	* SmtpClient.cs: Added MonoTODO for missing SSL/TLS support and 
	updated existing MonoTODO (or changed them to FIXME) to be clearer
	for anyone using the API.

2006-10-31  Sebastien Pouliot  <sebastien@ximian.com>

	* SmtpException.cs: Fix visibility on .ctor(SerializationInfo,
	StreamingContext).
	* SmtpPermissionAttribute.cs: New (2.0). Security attribute for SMTP.
	* SmtpPermission.cs: New (2.0). Security permission for SMTP.

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

	* SmtpClient.cs: TARGET_JVM

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

	* MailAddress.cs: Comment out unused field to remove warning. 

2006-1-13  John Luke  <john.luke@gmail.com>

	* MailMessage.cs: add [MonoTODO] for FormatException in ctor,
	throw ArugmentNullException's from the ctors,
	add internal BodyContentType property,
	change BodyEncoding to use BodyContentType,
	change IsBodyHtml to use BodyContentType,
	* SmtpClient.cs: set timeout initially to 100000,
	don't throw ArgumentOutOfRangeException when Timeout = 0,
	add [MonoTODO] for set_host, and throw Exceptions for it,
	add [MonoTODO] for UseDefaultCredentials,
	get messageContentType from the message,
	use "127.0.0.1" for Host and 25 for Port
	if host or port is not specified until reading
	them from the configuration files is done

2006-1-02  John Luke  <john.luke@gmail.com>

	* DeliveryNotificationOptions: fix value of Delay
	
2005-12-26  John Luke  <john.luke@gmail.com>

	* AttachmentCollection.cs: mark sealed
	* DeliveryNotificationOptions.cs: fix values
	
2005-12-25  John Luke  <john.luke@gmail.com>

	* SmtpStatusCode.cs: OK > Ok
	* AttachmentBase.cs: ContentID > ContentId,
	add set_ContentType
	* AlternateViewCollection.cs: remove destructor,
	make default ctor internal
	* MailMessage.cs: add default ctor,
	remove destructor
	* Attachment.cs: add (string, string) ctor,
	add set_NameEncoding
	* LinkedResourceCollection.cs: remove destructor,
	make default ctor internal
	* AttachmentCollection.cs: mark Dispose virtual,
	add ISerializable, make default ctor internal

2005-12-24  John Luke  <john.luke@gmail.com>

	* LinkedResource.cs: new File
	* AttachmentBase.cs: new File
	* MailPriority.cs: new File
	* AlternateViewCollection.cs: new File
	* DeliveryNotificationOptions.cs: new File
	* SmtpFailedRecipientException.cs: new File
	* AlternateView.cs: new File
	* LinkedResourceCollection.cs: new File
	* MailMessage.cs: add some missing properties, update API for 2.0 final 
	* Attachment.cs: inherit from AttachmentBase, update API for 2.0 final
	* MailAddress.cs: fix ToString, override Equals and GetHashCode
	* SmtpFailedRecipientsException.cs: use SmtpFailedRecipientException
	* SmtpException.cs: add [Serializable], ISerializable
	* MailAddressCollection.cs: inherit from Collection<MailAddress>
	* AttachmentCollection.cs: inherit from Collection<Attachment>
	* SmtpAccess.cs: add missing value
	* SmtpClient.cs: update for 2.0 final API
	* SmtpStatusCode.cs: add missing value
2005-12-24  John Luke  <john.luke@gmail.com>

	* MailMessage.cs: use text/plain by default,
	patch by Andy Waddell <awaddell@fnfr.com>,
	fixes bug #76972

2005-12-22  John Luke  <john.luke@gmail.com>

	* SmtpClient.cs: remove use of TransferEncodings that
	no longer exist in .net 2 final API
	
2005-12-14  Chris Toshok  <toshok@ximian.com>

	* SmtpDeliveryMethod.cs: new enum.

2004-09-10  Tim Coleman <tim@timcoleman.com>
	* SmtpClient.cs SmtpFailedRecipientsException.cs:
		Add failed recipient exception handling.

2004-09-09  Tim Coleman <tim@timcoleman.com>
	* AttachmentCollection.cs MailAddressCollection.cs:
		New classes
	* Attachment.cs: Set content string
	* MailMessage.cs: Use new collection classes
	* SmtpClient.cs: Lots of MIME cleanup

2004-09-08  Tim Coleman <tim@timcoleman.com>
	* Attachment.cs: Add SetContentFromFile methods
	* MailMessage.cs: Add MIME-Version header
	* SmtpClient.cs: Add some attachment handling.

2004-09-04  Tim Coleman <tim@timcoleman.com>
	* Attachment.cs MailAddress.cs MailMessage.cs SendCompletedEventHandler.cs
	* SmtpAccess.cs SmtpClient.cs SmtpException.cs SmtpStatusCode.cs:
		New class stubs for 2.0
