1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
article
The Bugs in sSMTP.
David Collier-Brown
document
Introduction.
This is a history of the criticisms of and bugs found in sSMTP,
primarily by the anonymous reviewers of comp.sources.reviewed.
Criticisms
itemize
README and man page were insufficient -- rewritten.
Bad MANIFEST format -- changed to use Larry Wall's makekit(1)
BSD sockets weren't documented as a dependency -- documented now.
Patchlevel wrong in documentation
strings.h and other BSD-isms in code -- corrected.
Fails to honor ``-f user'' and ``-fuser'' -- UNCHANGED.
This feature isn't really guaranteed, and I elected to not
support it.
Does not guarantee addition of required headers, assuming
mailhub will apply them -- changed, alas. I assumed the
sendmail/zmailer behavior of adding RFC-required fields,
but this assumption didn't hold water: I wasn't sending
and RFC-compliant message, and PP spotted it. So now
I do.
Does not support -t -- documented better. This is a
fundamental (mis) feature of the program, which is a filter.
Adding -t requires at least a tempfile and possibly a
queue, which makes the program radically different. I've
been asked (by Mike Marques) to write the more complex program,
and may do so at a later date. It certainly won't be called
sSMTP, though! (The s stands for both small and simple).
Installation replaces /usr/lib/sendmail without saving a copy -- corrected.
ROOT= set in Makefile -- corrected.
LACKING= ill-documented -- corrected.
Latex errors in ssmtp_plm.tex -- corrected.
Man page doesn't document sendmail flags -- corrected.
Won't compile on Sys V before R4 (Sys V R 3.2 frogs badly on the
BSD-specific signals TTIN/TTOU).
Contained `` +^L+'' characters, generate bad shar file -- corrected.
Too hard to reconfigure after compilation (also spotted
my Mike Marques) -- added mail.conf file.
If you don't give it a to-address, it doesn't send a MAIL FROM:<>
(found by me, in testing) -- corrected.
I had a printf(fp,buffer) in the code, which had problems
printing lines containing I had a missing fp in a printf (found by me) -- corrected.
itemize
document
|