Justin Hopper writes:

> Ah yes, I had forgotten that qmail will dump email if it sees a # sign
> in a dotqmail file.  I was never sure if this was a desired effect or
> not, so I've never used it.

According to the man page for dot-qmail, if the .qmail file is empty
then it is ignored and defaultdelivery instructions are processed.  It
is too late (and I've had too much wine) for me to remember where I
saw the tip about the #, but it was somewhere I considered trustworthy
(trust is not transitive, so you should not believe me).

But it does follow from djb's minimal, you have to be a guru to install 
qmail and I'm not going to explain it for you, shoot-yourself-in-the-foot 
and let Exchange win because it is easy to install and you have to be
a masochist to install qmail, tendencies.  IF the .qmail file is empty
then it is ignored.  That much djb states explicitly.  Logically, if
the .qmail file is NOT empty then it is NOT ignored.  A .qmail file
may contain various delivery instructions including comments.  That much
djb states explicitly.  The logical conclusion is that a .qmail file
containing just a comment is processed and causes mail to silently be
discarded because there are not instructions which would result in
a delivery.

For any other application I would consider this to be undocumented
behaviour which cannot be relied upon.  For djb stuff, I consider that
anything which can logically be deduced from the documentation is 99.999% 
certain to be intended, supported, and unchanging behaviour.

One day, somebody ought to introduce djb to the Real World[tm].  The
place where it takes an expensive admin a long time to figure all the
qmail stuff out and where people can hire a cheap point-and-click monkey to
install Exchange or even do it themselves.  One where the raw features
provided by qmail are so limited that neither ISPs nor customers are
satisfied with what is available and one where Exchange is viewed by
customers as the "dog's bollocks" (a UK phrase meaning something that
is very good).  The newer sqwebmail features such as filters go some
way to redressing the balance, but they are effectively an extension to 
qmail by a different author.

Qmail is secure and reliable while Eschange is an insecure, unreliable
pile of steaming manure.  But Exchange offers what people want (or think
they want) and qmail is very restrictive.  Djb would do well to read, and
inwardly digest, Kernighan's "Why Pascal is not my favourite language" and
Wall's comments about "bondage and discipline" languages.  Sadly, qmail is
a bondage and discipline MTA, and that is why its popularity is declinging
FAST.  Red Hat used to come with sendmail.  Now it comes with postfix.
Because of djb's copyyright conditions, Red Hat will NEVER come with qmail.
In  terms of security and reliability, qmail is better than either.  In 
terms of "out of the box" install of your favourite distro, qmail just
isn't in the running.

Sigh, I'm ranting.  And that's probably because months after I first
started using qmail, I hit the problem that qmail passes mail around
by sending the content on file descriptor 0 FIRST and the envelope
headers on file descriptor 1 SECOND.  In an SMTP transaction, the
envelope headers come first.  Logically, the envelope headers come
first.  In order to do filtering (like anti-virus, or spam filtering,
or sender filtering, or recipient filtering) you WANT the envelope headers
first.  My conclusion is that djb DELIBERATELY did it the wrong way around
to make it as hard as possible to add filters unless you are a guru.  And
for that, I hate his guts.  I respect his coding skills.  I respect his
knowledge and understanding of mail RFCs.  And I think he is a complete
dickhead for his bondage and discipline attitude.

I despise djb more than I do Nicklaus Wirth (hey, Nick, if I call you by 
value then I pronounce your name "dickhead" not "worth") because Pascal is
a crappy  language in the first place and there are better alternatives) 
because if I want reliability and security then I have to use qmail and put
on my bondage gear.  Maybe djb got confused between BSD and BDSM and
thought he needed handcuffs, chains and whips to write for BSD...

> If this is the way it is supposed to work,

See above.  I think that if it can be logically inferred from the
minimalist documentation then that is how it is supposed to work.

-- 
Paul Allen
Softflare Support


Reply via email to