2010-05-04 Miguel de Icaza <miguel@novell.com>
[mono.git] / mcs / class / System / System.Net.Mail / ChangeLog
1 2010-05-04  Miguel de Icaza  <miguel@novell.com>
2
3         * Apply patch from Ted Unangst to fix bug 574049
4
5 2010-03-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
6
7         * SmtpClient.cs: typo in reply-to header. Thanks to Chris Tomlinson.
8         Fixes bug #578271.
9
10 2010-02-15 Gonzalo Paniagua Javier <gonzalo@novell.com>
11
12         * SmtpClient.cs: generate correct MIME when there are text and html
13         linked resources. Fixes bug #579984. Patch by Ásgeir Halldórsson.
14
15 2010-01-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
16
17         * SmtpClient.cs: rethrow inner exception so that
18         AsyncCompletedEventArgs.Error gets the right value on error. Patch
19         by Dimitar Dobrev.
20
21 2009-12-11  Miguel de Icaza  <miguel@novell.com>
22
23         * SmtpClient.cs: Add half-implemented feature, TargetName for the
24         SPN SMTP system.
25         
26         * SmtpClient.cs, MailMessage.cs: Add 4.0 APIs.
27
28 2009-08-20  Sebastien Pouliot  <sebastien@ximian.com>
29
30         * SmtpClient.cs: Honor ServicePointManager.
31         ServerCertificateValidationCallback when provided
32
33 2009-08-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
34
35         * Attachment.cs: set the body encoding for multipart attachments.
36         Fixes bug #527177.
37
38 2009-06-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
39
40         * SmtpClient.cs: handle dots. Patch by Ted Unangst that fixes bug
41         #392875.
42
43 2008-11-17 Gonzalo Paniagua Javier <gonzalo@novell.com>
44
45         * SmtpClient.cs: remove unused variable and obsolete comment.
46
47 2008-09-17  Miguel de Icaza  <miguel@novell.com>
48
49         * SmtpClient.cs: Actually set some of the headers like Priority,
50         ReplyTo and Sender.
51
52 2008-09-05  Atsushi Enomoto  <atsushi@ximian.com>
53
54         * SmtpClient.cs : attachment stream consumption was insufficient.
55           Fix bug #347553, by David Ion.
56
57 2008-08-16  Gert Driesen  <drieseng@users.sourceforge.net>
58
59         * SmtpClient.cs: Fixed paramname of Argument(Null)Exceptions to match
60         MS. Removed upper limit check for Port. Modified Send to no longer
61         allow a whitespace-only Host. Moved checks for SpecifiedPickupDirectory
62         delivery method to SendFile, and use Path.IsPathRooted to check for
63         absolute paths instead of using a unix-only check. In Send, wrap all
64         non-SMTP errors in an SmtpException.
65         * SmtpException.cs: Correctly chain up all .ctors. Removed extra
66         null check in deserialization .ctor.
67
68 2008-08-15  Atsushi Enomoto  <atsushi@ximian.com>
69
70         * SmtpClient.cs : fixed bug #382670, based on the patch by Ted
71           Unangst. DeriveryMethod.SpecifiedPickupDirectory was not supported.
72
73 2008-08-14  Atsushi Enomoto  <atsushi@ximian.com>
74
75         * SmtpClient.cs : Patch by Ted Unangst, fixed bug #392843.
76           Encode emails correctly as well as join multiple emails
77           correctly.
78
79 2008-08-12  Atsushi Enomoto  <atsushi@ximian.com>
80
81         * SmtpClient.cs : fixed bug #392682, in the same spirit in the
82           patch by Ted Unangst, to assure safety on socket closing.
83
84 2008-08-07  Atsushi Enomoto  <atsushi@ximian.com>
85
86         * SmtpClient.cs : Fixed bug #392809, patch by Ted Unangst. Text body
87           was not copied to byte array which is being sent. 
88
89 2008-04-21  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
90
91         * SmtpClient.cs: Fix bug with string handling
92
93 2008-04-21  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
94
95         * SmtpClient.cs: Fix formatting
96
97 2008-04-20 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
98
99         * SmtpClient.cs: made ParseExtension() work. After STARTTLS, reset
100         data retrieved from EHLO.
101         Fixes bug #377463.
102
103 2008-04-03  Juraj Skripsky  <js@hotfeet.ch>
104
105         * Attachment.cs (InitName): Use Path.GetFileName instead of Substring hack.
106         Fixes bug #366947.
107
108 2008-01-29  Juraj Skripsky  <js@hotfeet.ch>
109
110         * SmtpClient.cs (ToQuotedPrintable): Escape the escape character "=".
111
112 2008-01-29  Juraj Skripsky  <js@hotfeet.ch>
113
114         * SmtpClient.cs: Remove ':' from the time zone offset in the
115         mail's date field. Fixes bug #351443.
116         (ToQuotedPrintable): Make sure text encoded as quoted-printable does
117         not contain more then 76 chars per line (required by rfc1521). Fixes
118         bug #351448.
119
120 2007-12-06  Atsushi Enomoto  <atsushi@ximian.com>
121
122         * AlternateView.cs : supply charset info for ContentType.
123         * SmtpClient.cs : for ToQuotedPrintable() input, don't use utf8
124           StreamReader to get input string. Just use Encoding.GetBytes().
125           Fixed bug #346162.
126
127 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
128
129         * MailMessage.cs : fixing cosmetic .net compatibility. Automatically
130           fill ASCII when guessed encoding is nothing.
131
132 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
133
134         * SmtpClient.cs : fold base64 string at 76 characters.
135           Should fix bug #344974.
136
137 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
138
139         * Attachment.cs : use correct TransferEncoding when (Text)Encoding
140           is specified.
141         * MailMessage.cs : ContentTransferEncoding implementation went into
142           ContentType.
143
144 2007-12-04  Arina Itkes <arinai@mainsoft.com>
145
146         * SmtpException.cs, SmtpFailedRecipientException.cs,
147           SmtpFailedRecipientsException.cs: 
148           Changes for SOAP serialization compatibility with .NET. 
149
150 2007-11-05  Atsushi Enomoto  <atsushi@ximian.com>
151
152         fixed bug #339037.
153         * AlternateView.cs : CreateAlternateViewFromString() allows null
154           Encoding.
155         * SmtpClient.cs : looks like when Body is null and AlternativeViews
156           contains only 1 item, then the alternate view becomes as if it
157           were just a body. To make this possible, added couple of more
158           transfer-encoding conversion methods.
159           For more AlternateViews cases, Body is treated
160           as empty. With attachments it is even complicated: those alternate
161           views are just in one boundary, so do not send empty string.
162           Removed debug output (Console.WriteLine).
163
164           What a mess.
165
166 2007-10-30 Arina Itkes <arinai@mainsoft.com>
167
168         * SmtpClient.cs: Fix of SmtpClient.Read() method:
169         Added check of string position before calling 
170         Substring and IndexOf methods of string.
171
172 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
173
174         * SmtpClient.cs : small async refactory.
175
176 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
177
178         * SmtpClient.cs : Implemented async operations.
179
180 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
181
182         * Attachment.cs : reverted previous change. NameEncoding is not
183           guessed at set_Name().
184
185 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
186
187         * SmtpClient.cs : lunatic cyclic build.
188
189 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
190
191         * AttachmentBase.cs : implemented Dispose(bool).
192
193 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
194
195         * AttachmentCollection.cs : remove TODO.
196         * Attachment.cs : guess NameEncoding when set_Name().
197         * MailMessage.cs : moved encoding guess impl to ContentType.
198         * SmtpClient.cs : moved RFC 2047 encoding impl to ContentType.
199           Support attachment Name encoding. Added some SSL changes (it's not
200           working yet).
201
202 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
203
204         * SmtpClient.cs : attachment refactory. First, determine whether we
205           send multipart/mixed for attachments. Second, determine whether we
206           send multipart/alternative for AlternateViews.
207           Consider LinkedResources. Mark EnableSsl as TODO.
208
209 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
210
211         * LinkedResource.cs : Now they are implemented and soon to be
212           supported. Fixed TransferEncoding (same as other AttachmentBase).
213
214 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
215
216         * Attachment.cs : null name is allowed.
217
218 2007-10-19  Atsushi Enomoto  <atsushi@ximian.com>
219
220         * AlternateView.cs, AttachmentView.cs, AttachmentBase.cs :
221           reverted default back to TransferEncoding.Base64 again, and use
222           QuotedPrintable only when created from string.
223           No need to check null Stream at AlternateView.ctor(). See base.
224         * SmtpClient.cs : For multipart message, do not send body twice (it
225           still emits extraneous part, which should be fixed too).
226           Do not premise charset existence in every AttachmentBase.
227
228 2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>
229
230         * AlternateView.cs : dispose linked resources. Remove MonoTODOs.
231         * Attachment.cs : check null content string.
232           The string argument in .ctor(Stream,string) is name, not mediaType.
233           Use contentEncoding argument in CreateAttachmentFromString().
234         * AttachmentBase.cs : TransferEncoding default is QuotedPrintable.
235
236 2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>
237
238         * MailMessage.cs : removed MonoTODO. some comment.
239         * SmtpException.cs, SmtpFailedRecipientsException.cs,
240           SmtpFailedRecipientException.cs : implemented serialization.
241
242 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
243
244         * SmtpClient.cs : use 3 StringBuilder.Replace() calls rather than
245           3 string.Replace() calls.
246
247 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
248
249         * SmtpClient.cs : do state check on other setters than set_Timeout().
250
251 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
252
253         * MailMessage.cs : Some entire refactory on BodyEncoding and
254           IsBodyHtml. BodyEncoding and SubjectEncoding are guessed when
255           Body and Subject are set for each.
256         * SmtpClient.cs :
257           Subject header is encoded according to RFC 2047.
258           Body is encoded according to RFC 2821.
259           Output Date header.
260           ToQuotedPrintable() should take encoding into consideration.
261           For SevenBit/Unknown TransferEncoding, just decode with ASCII.
262           In set_UseDefaultCredentials(), raise NIE only when value is true.
263           In set_Timeout(), raise an error when Send() is in progress.
264
265 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
266
267         * SmtpClient.cs : Replace every \r and \n with \r\n per RFC 2821 
268           section 2.3.7, or you will receive SMTP error 451.
269
270 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
271
272         * AlternateViewCollection.cs, LinkedResourceCollection.cs,
273           AttachmentCollection.cs : added missing 2.0 members.
274
275 2007-06-17  Gert Driesen  <drieseng@users.sourceforge.net>
276
277         * MailAddress.cs: Throw ArgumentNullException if address is null.
278         Allow display name to be specified as part of the address. Fixes
279         bug #81854. Return zero-length string in DisplayName if no display 
280         name is set.
281
282 2007-05-31  Jeffrey Stedfast  <fejj@gnome.org>
283
284         * SmtpClient.cs: Added an extensions parser to figure out if the
285         ESMTP server supports things like STARTTLS and which AUTH
286         mechanisms are supported. Don't try authenticating if no authmechs
287         are supported.
288
289 2007-05-30  Jeffrey Stedfast  <fejj@novell.com>
290
291         * SmtpClient.cs: Fall back to HELO if EHLO fails. Also, do not
292         write out a Bcc header to the SMTP server - these are meant to be
293         dropped. MAIL FROM: and RCPT TO: commands are not meant to have a
294         space after the colon before the address - this will break on some
295         SMTP servers.
296
297 2007-02-16  Geoff Norton  <gnorton@customerdna.com>
298
299         * SmtpClient.cs: Dont send bare LF.  Send <CR><LF> regardless
300         of platform.  (ref: http://cr.yp.to/docs/smtplf.html)
301
302 2007-01-20  Miguel de Icaza  <miguel@novell.com>
303
304         * MailMessage.cs: Add suport to the MailMessage constructor to
305         take a comma-separated list of addresses (Bug #80548). 
306
307 2006-12-12  Miguel de Icaza  <miguel@novell.com>
308
309         * MailMessage.cs: Fix this code so that it correctly reports
310         ArgumentNullExceptions.
311
312 2006-12-12  Atsushi Enomoto  <atsushi@ximian.com>
313
314         * SmtpClient.cs : use CONFIGURATION_DEP when it is
315           System.Configuration.dll dependent.
316
317 2006-12-10  David Elkind  <davide@mainsoft.com>
318
319         * Attachment.cs - proper file name handling added
320         * AttachmentBase.cs - proper MIME type handling added
321         * MailAddress.cs - Proper mail address handling ('<' and '>' addition) added
322         * MailMessage.cs - Better construction sequence
323         * SmtpClient.cs - Added proper handling of composite message (consisting of alternate views/attachments)
324                         - Added handling of user credentials 
325                         - Added handling of TLS (under TARGET_JVM)
326                         - Some other minor fixes
327
328 2006-12-04  Konstantin Triger  <kostat@mainsoft.com>
329
330         * SmtpException.cs, SmtpFailedRecipientException.cs: TARGET_JVM limitation workaround.
331
332 2006-12-01  Sebastien Pouliot  <sebastien@ximian.com>
333
334         * SmtpClient.cs: Added MonoTODO for missing SSL/TLS support and 
335         updated existing MonoTODO (or changed them to FIXME) to be clearer
336         for anyone using the API.
337
338 2006-10-31  Sebastien Pouliot  <sebastien@ximian.com>
339
340         * SmtpException.cs: Fix visibility on .ctor(SerializationInfo,
341         StreamingContext).
342         * SmtpPermissionAttribute.cs: New (2.0). Security attribute for SMTP.
343         * SmtpPermission.cs: New (2.0). Security permission for SMTP.
344
345 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
346
347         * SmtpClient.cs: TARGET_JVM
348
349 2006-03-11  Miguel de Icaza  <miguel@novell.com>
350
351         * MailAddress.cs: Comment out unused field to remove warning. 
352
353 2006-1-13  John Luke  <john.luke@gmail.com>
354
355         * MailMessage.cs: add [MonoTODO] for FormatException in ctor,
356         throw ArugmentNullException's from the ctors,
357         add internal BodyContentType property,
358         change BodyEncoding to use BodyContentType,
359         change IsBodyHtml to use BodyContentType,
360         * SmtpClient.cs: set timeout initially to 100000,
361         don't throw ArgumentOutOfRangeException when Timeout = 0,
362         add [MonoTODO] for set_host, and throw Exceptions for it,
363         add [MonoTODO] for UseDefaultCredentials,
364         get messageContentType from the message,
365         use "127.0.0.1" for Host and 25 for Port
366         if host or port is not specified until reading
367         them from the configuration files is done
368
369 2006-1-02  John Luke  <john.luke@gmail.com>
370
371         * DeliveryNotificationOptions: fix value of Delay
372         
373 2005-12-26  John Luke  <john.luke@gmail.com>
374
375         * AttachmentCollection.cs: mark sealed
376         * DeliveryNotificationOptions.cs: fix values
377         
378 2005-12-25  John Luke  <john.luke@gmail.com>
379
380         * SmtpStatusCode.cs: OK > Ok
381         * AttachmentBase.cs: ContentID > ContentId,
382         add set_ContentType
383         * AlternateViewCollection.cs: remove destructor,
384         make default ctor internal
385         * MailMessage.cs: add default ctor,
386         remove destructor
387         * Attachment.cs: add (string, string) ctor,
388         add set_NameEncoding
389         * LinkedResourceCollection.cs: remove destructor,
390         make default ctor internal
391         * AttachmentCollection.cs: mark Dispose virtual,
392         add ISerializable, make default ctor internal
393
394 2005-12-24  John Luke  <john.luke@gmail.com>
395
396         * LinkedResource.cs: new File
397         * AttachmentBase.cs: new File
398         * MailPriority.cs: new File
399         * AlternateViewCollection.cs: new File
400         * DeliveryNotificationOptions.cs: new File
401         * SmtpFailedRecipientException.cs: new File
402         * AlternateView.cs: new File
403         * LinkedResourceCollection.cs: new File
404         * MailMessage.cs: add some missing properties, update API for 2.0 final 
405         * Attachment.cs: inherit from AttachmentBase, update API for 2.0 final
406         * MailAddress.cs: fix ToString, override Equals and GetHashCode
407         * SmtpFailedRecipientsException.cs: use SmtpFailedRecipientException
408         * SmtpException.cs: add [Serializable], ISerializable
409         * MailAddressCollection.cs: inherit from Collection<MailAddress>
410         * AttachmentCollection.cs: inherit from Collection<Attachment>
411         * SmtpAccess.cs: add missing value
412         * SmtpClient.cs: update for 2.0 final API
413         * SmtpStatusCode.cs: add missing value
414 2005-12-24  John Luke  <john.luke@gmail.com>
415
416         * MailMessage.cs: use text/plain by default,
417         patch by Andy Waddell <awaddell@fnfr.com>,
418         fixes bug #76972
419
420 2005-12-22  John Luke  <john.luke@gmail.com>
421
422         * SmtpClient.cs: remove use of TransferEncodings that
423         no longer exist in .net 2 final API
424         
425 2005-12-14  Chris Toshok  <toshok@ximian.com>
426
427         * SmtpDeliveryMethod.cs: new enum.
428
429 2004-09-10  Tim Coleman <tim@timcoleman.com>
430         * SmtpClient.cs SmtpFailedRecipientsException.cs:
431                 Add failed recipient exception handling.
432
433 2004-09-09  Tim Coleman <tim@timcoleman.com>
434         * AttachmentCollection.cs MailAddressCollection.cs:
435                 New classes
436         * Attachment.cs: Set content string
437         * MailMessage.cs: Use new collection classes
438         * SmtpClient.cs: Lots of MIME cleanup
439
440 2004-09-08  Tim Coleman <tim@timcoleman.com>
441         * Attachment.cs: Add SetContentFromFile methods
442         * MailMessage.cs: Add MIME-Version header
443         * SmtpClient.cs: Add some attachment handling.
444
445 2004-09-04  Tim Coleman <tim@timcoleman.com>
446         * Attachment.cs MailAddress.cs MailMessage.cs SendCompletedEventHandler.cs
447         * SmtpAccess.cs SmtpClient.cs SmtpException.cs SmtpStatusCode.cs:
448                 New class stubs for 2.0