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