There's indeed a maximum line length specified in the SMTP protocol.
Quoted from RFC 821 Page 42:
" The maximum total length of a text line including the
<CRLF> is 1000 characters (but not counting the leading
dot duplicated for transparency)."
But looking at the code I found also that if a line exeeds 1023 characters
an exeption is raised, bad!
This fix is for both V6 OverbyteIcsSmtpProt.pas as well as for v5 SmtpProt.pas
procedure TCustomSmtpClient.DataNext;
var
MsgLine : array [0..1023] of char;
begin
[..]
Inc(FItemCount);
if FItemCount < FHdrLines.Count then begin
{ There are still header lines to send }
<= // StrPCopy(@MsgLine, FHdrLines.Strings[FItemCount]); {AG 11/10/06}
=> StrLCopy(@MsgLine, PChar(FHdrLines.Strings[FItemCount]),
SizeOf(MsgLine) - 1); {AG 11/10/06}
[..]
You should turn on property FoldHeaders in order to keep the line length
within the range of maximum suggested length, that is only 75 characters.
---
Arno Garrels [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
Jody Bowman wrote:
> Greetings,
>
> I'm an engineer from the Milwaukee, Wisconsin (USA)
> area and was looking at using the ICS SMTP control for an email
> application I'm working on. It looks to satisfy the project
> requirements except for one oddity. If I include more than 1018
> characters worth of email addresses in the To: line (which can happen
> in my app), the letter is sent successfully to all recipients but the
> email header information appears in the body of the email. I checked
> the SMTP protocol (http://www.ietf.org/rfc/rfc0821.txt) and I'm well
> within the limit of 100 recipients. If there is an item that says
> doing this is invalid I haven't been able to find it.
> Would you know if this is a limitation of SMTP, or something I
> might be implementing wrong, or a limitation of the control?
> An example of what one of these letters looks like is included at
> the bottom of this message. I repeatedly used my own address for the
> example.
> Thanks in advance for any help,
>
> Jody Bowman
> Finishing Controls System Engineering
>
> QuadTech
> A Subsidiary of Quad/Graphics
>
> Sussex, Wisconsin USA
> +1 414 566 7721 tel
> +1 414 566 4010/7721 pager/PIN
> [EMAIL PROTECTED]
> www.quadtechworld.com
>
>
> To:
> [EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL PROTECTED];[EMAIL
> PROTECTED];[EMAIL PROTECTED]
> om;[EMAIL PROTECTED]
> Subject: Testing
> Sender: [EMAIL PROTECTED]
> Mime-Version: 1.0
> Content-Type: text/plain; charset="iso-8859-1"
> Date: Thu, 9 Nov 2006 15:31:07 -0600
> Message-ID: <[EMAIL PROTECTED]>
> X-Mailer: ICS SMTP Component V2.50
> Return-Path: [EMAIL PROTECTED]
> X-OriginalArrivalTime: 09 Nov 2006 21:31:07.0118 (UTC)
> FILETIME=[5DCB60E0:01C70446]
> X-TM-AS-Product-Ver: SMEX-7.0.0.1499-3.6.1039-14804.000
> X-TM-AS-Result: No-1.298500-0.000000-31
>
> This is the first line
> Then the second one
> The next one is empty
>
> The next one has only a single dot
> .
> Finally the last one
>
>
>
>
> ---------------------------------
> Access over 1 million songs - Yahoo! Music Unlimited.
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be