1 2008-09-05 Atsushi Enomoto <atsushi@ximian.com>
3 * SmtpClient.cs : attachment stream consumption was insufficient.
4 Fix bug #347553, by David Ion.
6 2008-08-16 Gert Driesen <drieseng@users.sourceforge.net>
8 * SmtpClient.cs: Fixed paramname of Argument(Null)Exceptions to match
9 MS. Removed upper limit check for Port. Modified Send to no longer
10 allow a whitespace-only Host. Moved checks for SpecifiedPickupDirectory
11 delivery method to SendFile, and use Path.IsPathRooted to check for
12 absolute paths instead of using a unix-only check. In Send, wrap all
13 non-SMTP errors in an SmtpException.
14 * SmtpException.cs: Correctly chain up all .ctors. Removed extra
15 null check in deserialization .ctor.
17 2008-08-15 Atsushi Enomoto <atsushi@ximian.com>
19 * SmtpClient.cs : fixed bug #382670, based on the patch by Ted
20 Unangst. DeriveryMethod.SpecifiedPickupDirectory was not supported.
22 2008-08-14 Atsushi Enomoto <atsushi@ximian.com>
24 * SmtpClient.cs : Patch by Ted Unangst, fixed bug #392843.
25 Encode emails correctly as well as join multiple emails
28 2008-08-12 Atsushi Enomoto <atsushi@ximian.com>
30 * SmtpClient.cs : fixed bug #392682, in the same spirit in the
31 patch by Ted Unangst, to assure safety on socket closing.
33 2008-08-07 Atsushi Enomoto <atsushi@ximian.com>
35 * SmtpClient.cs : Fixed bug #392809, patch by Ted Unangst. Text body
36 was not copied to byte array which is being sent.
38 2008-04-21 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
40 * SmtpClient.cs: Fix bug with string handling
42 2008-04-21 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
44 * SmtpClient.cs: Fix formatting
46 2008-04-20 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
48 * SmtpClient.cs: made ParseExtension() work. After STARTTLS, reset
49 data retrieved from EHLO.
52 2008-04-03 Juraj Skripsky <js@hotfeet.ch>
54 * Attachment.cs (InitName): Use Path.GetFileName instead of Substring hack.
57 2008-01-29 Juraj Skripsky <js@hotfeet.ch>
59 * SmtpClient.cs (ToQuotedPrintable): Escape the escape character "=".
61 2008-01-29 Juraj Skripsky <js@hotfeet.ch>
63 * SmtpClient.cs: Remove ':' from the time zone offset in the
64 mail's date field. Fixes bug #351443.
65 (ToQuotedPrintable): Make sure text encoded as quoted-printable does
66 not contain more then 76 chars per line (required by rfc1521). Fixes
69 2007-12-06 Atsushi Enomoto <atsushi@ximian.com>
71 * AlternateView.cs : supply charset info for ContentType.
72 * SmtpClient.cs : for ToQuotedPrintable() input, don't use utf8
73 StreamReader to get input string. Just use Encoding.GetBytes().
76 2007-12-05 Atsushi Enomoto <atsushi@ximian.com>
78 * MailMessage.cs : fixing cosmetic .net compatibility. Automatically
79 fill ASCII when guessed encoding is nothing.
81 2007-12-05 Atsushi Enomoto <atsushi@ximian.com>
83 * SmtpClient.cs : fold base64 string at 76 characters.
84 Should fix bug #344974.
86 2007-12-05 Atsushi Enomoto <atsushi@ximian.com>
88 * Attachment.cs : use correct TransferEncoding when (Text)Encoding
90 * MailMessage.cs : ContentTransferEncoding implementation went into
93 2007-12-04 Arina Itkes <arinai@mainsoft.com>
95 * SmtpException.cs, SmtpFailedRecipientException.cs,
96 SmtpFailedRecipientsException.cs:
97 Changes for SOAP serialization compatibility with .NET.
99 2007-11-05 Atsushi Enomoto <atsushi@ximian.com>
102 * AlternateView.cs : CreateAlternateViewFromString() allows null
104 * SmtpClient.cs : looks like when Body is null and AlternativeViews
105 contains only 1 item, then the alternate view becomes as if it
106 were just a body. To make this possible, added couple of more
107 transfer-encoding conversion methods.
108 For more AlternateViews cases, Body is treated
109 as empty. With attachments it is even complicated: those alternate
110 views are just in one boundary, so do not send empty string.
111 Removed debug output (Console.WriteLine).
115 2007-10-30 Arina Itkes <arinai@mainsoft.com>
117 * SmtpClient.cs: Fix of SmtpClient.Read() method:
118 Added check of string position before calling
119 Substring and IndexOf methods of string.
121 2007-10-23 Atsushi Enomoto <atsushi@ximian.com>
123 * SmtpClient.cs : small async refactory.
125 2007-10-23 Atsushi Enomoto <atsushi@ximian.com>
127 * SmtpClient.cs : Implemented async operations.
129 2007-10-23 Atsushi Enomoto <atsushi@ximian.com>
131 * Attachment.cs : reverted previous change. NameEncoding is not
132 guessed at set_Name().
134 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
136 * SmtpClient.cs : lunatic cyclic build.
138 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
140 * AttachmentBase.cs : implemented Dispose(bool).
142 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
144 * AttachmentCollection.cs : remove TODO.
145 * Attachment.cs : guess NameEncoding when set_Name().
146 * MailMessage.cs : moved encoding guess impl to ContentType.
147 * SmtpClient.cs : moved RFC 2047 encoding impl to ContentType.
148 Support attachment Name encoding. Added some SSL changes (it's not
151 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
153 * SmtpClient.cs : attachment refactory. First, determine whether we
154 send multipart/mixed for attachments. Second, determine whether we
155 send multipart/alternative for AlternateViews.
156 Consider LinkedResources. Mark EnableSsl as TODO.
158 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
160 * LinkedResource.cs : Now they are implemented and soon to be
161 supported. Fixed TransferEncoding (same as other AttachmentBase).
163 2007-10-22 Atsushi Enomoto <atsushi@ximian.com>
165 * Attachment.cs : null name is allowed.
167 2007-10-19 Atsushi Enomoto <atsushi@ximian.com>
169 * AlternateView.cs, AttachmentView.cs, AttachmentBase.cs :
170 reverted default back to TransferEncoding.Base64 again, and use
171 QuotedPrintable only when created from string.
172 No need to check null Stream at AlternateView.ctor(). See base.
173 * SmtpClient.cs : For multipart message, do not send body twice (it
174 still emits extraneous part, which should be fixed too).
175 Do not premise charset existence in every AttachmentBase.
177 2007-10-17 Atsushi Enomoto <atsushi@ximian.com>
179 * AlternateView.cs : dispose linked resources. Remove MonoTODOs.
180 * Attachment.cs : check null content string.
181 The string argument in .ctor(Stream,string) is name, not mediaType.
182 Use contentEncoding argument in CreateAttachmentFromString().
183 * AttachmentBase.cs : TransferEncoding default is QuotedPrintable.
185 2007-10-17 Atsushi Enomoto <atsushi@ximian.com>
187 * MailMessage.cs : removed MonoTODO. some comment.
188 * SmtpException.cs, SmtpFailedRecipientsException.cs,
189 SmtpFailedRecipientException.cs : implemented serialization.
191 2007-10-16 Atsushi Enomoto <atsushi@ximian.com>
193 * SmtpClient.cs : use 3 StringBuilder.Replace() calls rather than
194 3 string.Replace() calls.
196 2007-10-16 Atsushi Enomoto <atsushi@ximian.com>
198 * SmtpClient.cs : do state check on other setters than set_Timeout().
200 2007-10-16 Atsushi Enomoto <atsushi@ximian.com>
202 * MailMessage.cs : Some entire refactory on BodyEncoding and
203 IsBodyHtml. BodyEncoding and SubjectEncoding are guessed when
204 Body and Subject are set for each.
206 Subject header is encoded according to RFC 2047.
207 Body is encoded according to RFC 2821.
209 ToQuotedPrintable() should take encoding into consideration.
210 For SevenBit/Unknown TransferEncoding, just decode with ASCII.
211 In set_UseDefaultCredentials(), raise NIE only when value is true.
212 In set_Timeout(), raise an error when Send() is in progress.
214 2007-10-16 Atsushi Enomoto <atsushi@ximian.com>
216 * SmtpClient.cs : Replace every \r and \n with \r\n per RFC 2821
217 section 2.3.7, or you will receive SMTP error 451.
219 2007-10-16 Atsushi Enomoto <atsushi@ximian.com>
221 * AlternateViewCollection.cs, LinkedResourceCollection.cs,
222 AttachmentCollection.cs : added missing 2.0 members.
224 2007-06-17 Gert Driesen <drieseng@users.sourceforge.net>
226 * MailAddress.cs: Throw ArgumentNullException if address is null.
227 Allow display name to be specified as part of the address. Fixes
228 bug #81854. Return zero-length string in DisplayName if no display
231 2007-05-31 Jeffrey Stedfast <fejj@gnome.org>
233 * SmtpClient.cs: Added an extensions parser to figure out if the
234 ESMTP server supports things like STARTTLS and which AUTH
235 mechanisms are supported. Don't try authenticating if no authmechs
238 2007-05-30 Jeffrey Stedfast <fejj@novell.com>
240 * SmtpClient.cs: Fall back to HELO if EHLO fails. Also, do not
241 write out a Bcc header to the SMTP server - these are meant to be
242 dropped. MAIL FROM: and RCPT TO: commands are not meant to have a
243 space after the colon before the address - this will break on some
246 2007-02-16 Geoff Norton <gnorton@customerdna.com>
248 * SmtpClient.cs: Dont send bare LF. Send <CR><LF> regardless
249 of platform. (ref: http://cr.yp.to/docs/smtplf.html)
251 2007-01-20 Miguel de Icaza <miguel@novell.com>
253 * MailMessage.cs: Add suport to the MailMessage constructor to
254 take a comma-separated list of addresses (Bug #80548).
256 2006-12-12 Miguel de Icaza <miguel@novell.com>
258 * MailMessage.cs: Fix this code so that it correctly reports
259 ArgumentNullExceptions.
261 2006-12-12 Atsushi Enomoto <atsushi@ximian.com>
263 * SmtpClient.cs : use CONFIGURATION_DEP when it is
264 System.Configuration.dll dependent.
266 2006-12-10 David Elkind <davide@mainsoft.com>
268 * Attachment.cs - proper file name handling added
269 * AttachmentBase.cs - proper MIME type handling added
270 * MailAddress.cs - Proper mail address handling ('<' and '>' addition) added
271 * MailMessage.cs - Better construction sequence
272 * SmtpClient.cs - Added proper handling of composite message (consisting of alternate views/attachments)
273 - Added handling of user credentials
274 - Added handling of TLS (under TARGET_JVM)
275 - Some other minor fixes
277 2006-12-04 Konstantin Triger <kostat@mainsoft.com>
279 * SmtpException.cs, SmtpFailedRecipientException.cs: TARGET_JVM limitation workaround.
281 2006-12-01 Sebastien Pouliot <sebastien@ximian.com>
283 * SmtpClient.cs: Added MonoTODO for missing SSL/TLS support and
284 updated existing MonoTODO (or changed them to FIXME) to be clearer
285 for anyone using the API.
287 2006-10-31 Sebastien Pouliot <sebastien@ximian.com>
289 * SmtpException.cs: Fix visibility on .ctor(SerializationInfo,
291 * SmtpPermissionAttribute.cs: New (2.0). Security attribute for SMTP.
292 * SmtpPermission.cs: New (2.0). Security permission for SMTP.
294 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
296 * SmtpClient.cs: TARGET_JVM
298 2006-03-11 Miguel de Icaza <miguel@novell.com>
300 * MailAddress.cs: Comment out unused field to remove warning.
302 2006-1-13 John Luke <john.luke@gmail.com>
304 * MailMessage.cs: add [MonoTODO] for FormatException in ctor,
305 throw ArugmentNullException's from the ctors,
306 add internal BodyContentType property,
307 change BodyEncoding to use BodyContentType,
308 change IsBodyHtml to use BodyContentType,
309 * SmtpClient.cs: set timeout initially to 100000,
310 don't throw ArgumentOutOfRangeException when Timeout = 0,
311 add [MonoTODO] for set_host, and throw Exceptions for it,
312 add [MonoTODO] for UseDefaultCredentials,
313 get messageContentType from the message,
314 use "127.0.0.1" for Host and 25 for Port
315 if host or port is not specified until reading
316 them from the configuration files is done
318 2006-1-02 John Luke <john.luke@gmail.com>
320 * DeliveryNotificationOptions: fix value of Delay
322 2005-12-26 John Luke <john.luke@gmail.com>
324 * AttachmentCollection.cs: mark sealed
325 * DeliveryNotificationOptions.cs: fix values
327 2005-12-25 John Luke <john.luke@gmail.com>
329 * SmtpStatusCode.cs: OK > Ok
330 * AttachmentBase.cs: ContentID > ContentId,
332 * AlternateViewCollection.cs: remove destructor,
333 make default ctor internal
334 * MailMessage.cs: add default ctor,
336 * Attachment.cs: add (string, string) ctor,
338 * LinkedResourceCollection.cs: remove destructor,
339 make default ctor internal
340 * AttachmentCollection.cs: mark Dispose virtual,
341 add ISerializable, make default ctor internal
343 2005-12-24 John Luke <john.luke@gmail.com>
345 * LinkedResource.cs: new File
346 * AttachmentBase.cs: new File
347 * MailPriority.cs: new File
348 * AlternateViewCollection.cs: new File
349 * DeliveryNotificationOptions.cs: new File
350 * SmtpFailedRecipientException.cs: new File
351 * AlternateView.cs: new File
352 * LinkedResourceCollection.cs: new File
353 * MailMessage.cs: add some missing properties, update API for 2.0 final
354 * Attachment.cs: inherit from AttachmentBase, update API for 2.0 final
355 * MailAddress.cs: fix ToString, override Equals and GetHashCode
356 * SmtpFailedRecipientsException.cs: use SmtpFailedRecipientException
357 * SmtpException.cs: add [Serializable], ISerializable
358 * MailAddressCollection.cs: inherit from Collection<MailAddress>
359 * AttachmentCollection.cs: inherit from Collection<Attachment>
360 * SmtpAccess.cs: add missing value
361 * SmtpClient.cs: update for 2.0 final API
362 * SmtpStatusCode.cs: add missing value
363 2005-12-24 John Luke <john.luke@gmail.com>
365 * MailMessage.cs: use text/plain by default,
366 patch by Andy Waddell <awaddell@fnfr.com>,
369 2005-12-22 John Luke <john.luke@gmail.com>
371 * SmtpClient.cs: remove use of TransferEncodings that
372 no longer exist in .net 2 final API
374 2005-12-14 Chris Toshok <toshok@ximian.com>
376 * SmtpDeliveryMethod.cs: new enum.
378 2004-09-10 Tim Coleman <tim@timcoleman.com>
379 * SmtpClient.cs SmtpFailedRecipientsException.cs:
380 Add failed recipient exception handling.
382 2004-09-09 Tim Coleman <tim@timcoleman.com>
383 * AttachmentCollection.cs MailAddressCollection.cs:
385 * Attachment.cs: Set content string
386 * MailMessage.cs: Use new collection classes
387 * SmtpClient.cs: Lots of MIME cleanup
389 2004-09-08 Tim Coleman <tim@timcoleman.com>
390 * Attachment.cs: Add SetContentFromFile methods
391 * MailMessage.cs: Add MIME-Version header
392 * SmtpClient.cs: Add some attachment handling.
394 2004-09-04 Tim Coleman <tim@timcoleman.com>
395 * Attachment.cs MailAddress.cs MailMessage.cs SendCompletedEventHandler.cs
396 * SmtpAccess.cs SmtpClient.cs SmtpException.cs SmtpStatusCode.cs:
397 New class stubs for 2.0