This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: ssmtp 2.38.7-4 reads headers from message body.
Corinna Vinschen <corinna-cygwin@cygwin.com> wrote in
<20031017102654.GO25076@cygbert.vinschen.de>
in gmane.os.cygwin on Fri, 17 Oct 2003 12:26:54 +0200:
> > > The RFCs for SMTP e-mail (RFC2821 and its predecesors) /require/ CR-LF
> > > ("\r\n" i.e. "DOS") line endings. (Probably because debugging using
> > > dumb terminals or printers was easier that way in days of yore.)
> >
> > Interesting. So a check as in ssmtp:
> > while ((fgets (buffer, sizeof buffer, stdin) != NULL) && (buffer[0] != '\n'))
> > {
> > /* It's a header line */
> > }
> > seems a bit oversimplified, right?
>
> Well, this happens when reading the input file. When writing the output
> stream to the mailhub, it uses \r\n explicitely.
> So ssmtp assumes that the input file is using only \n. Of course, ssmtp
> has never been written with textmode mounts in mind...
Answered your own question. :-D
The translation between the SMTP stream's CRLF and the UNIX (or DOS
text-mode) LF is maybe done elsewhere?
Does ssmtp explicitly set stdin to be text-mode? If it's coming from a
UNIX background maybe not. Might be a simple fix then, to get it to do
so before starting to read?
Regards,
--
Sam Edge
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/