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