procmail
[Top] [All Lists]

Re: Q's for Quick Start: ^TO, ^TO_, .forward, LDA, MDA, MTA

1999-08-16 03:22:39
On Sat, 14 Aug 1999 17:09:27 -0400 (EDT), Nancy McGough
<nancym(_at_)ii(_dot_)com> wrote:
On 13 Aug 1999, era eriksson <era(_at_)iki(_dot_)fi> wrote:
but the best solution (if Andreas' version of Procmail is a recent
one, i.e. a 3.11pre4 or newer -- it would be prudent to upgrade to
3.13.1 if you have an older version anyhow) is really
*^TO_pgp
Thanks to the people who have sent me feedback on my Procmail Quick
Start. I have a few questions:
* What version of procmail introduced ^TO and when was it released?
* What version of procmail introduced ^TO_ and when was it released?
  (from era's msg above it seems like 3.11pre4 -- is that true and
  when was it released?)

There's a HISTORY file in the Procmail distribution. You can view it
on-line at <http://www.procmail.org/procmail.HISTORY.html> -- some of
the older entries are compressed, though. I don't find the
introduction of the ^TO macro there but ^TO_ is documented as having
been added in 3.11pre4. I seem to recall the ^TO macro existed even
back in 2.9x something, which is practically prehistoric. You don't
see versions older than 3.10 in use much anymore.

According to the HISTORY file, 3.11pre4 was released on 1995/10/29

* In one of the procmail docs on the web (maybe Jari's amazing 
  pm-tips) I read that the procmail man page on your system will 
  have information that is specific to your system and in particular 
  it will include the command that you should put in your .forward 
  file. My question to you all is this: If someone types
   man procmail 
  on their system and then searches for the word kludge by typing 
   /kludge
  will the command right after this be the best command to put in
  their .forward? And I assume they should append #Username
  to the command that shows up in their local procmail man page.

(I added something like this to the FAQ recently, perhaps you saw it
there. I haven't investigated this very thoroughly but there is stuff
in manconf.c which determines what goes in the manual page based on
some #ifdefs, although primarily, it seems that it tries to determine
whether the forward file is called .forward or .maildelivery [MMDF?]
... Philip?)

The "kludge" word does seem to work as a good locator currently, and
it's probably pretty safe to assume it won't be used much in the
future either. In the FAQ I instruct readers to consult the NOTES
section of procmail(1) which I believe should be good enough. There
are some comments about the help options and a pointer to your mail
filtering FAQ before the .forward instructions but I hope nobody is so
impatient that they can't scroll down a screenful or so.

The #username kludge is described in the manual page (actually this is
where you get a match on the word "kludge") so it will be displayed as
#username on the manual page itself, and the comments instruct the
reader to replace that with his or her own login name (which in an
alarming number of cases they don't, but unless they run their
mission-critical mail on a Sendmail from circa 1928, it won't matter).

The "kludge" word will in fact bring the search down to a few lines
below the actual .forward file, and in some pagers you will have to
scroll back a few lines to see the .forward file and the instructions.
(Some pagers will display found matches a few lines below the top of
the screen so you can see the context the match is in. But not all
pagers do that.)

(References: <http://www.procmail.org/procmail-3.13/man/procmail.man>
is the preprocessor source for the manual page, and the manconf source
is in <http://www.procmail.org/procmail-3.13/src/manconf.c>)

* I have a question about the terms "local delivery agent (LDA)," 
  "message transfer agent (MTA)," and "message delivery agent (MDA)." 
  I think I understand that sendmail can be all three of these. I also 
  think that procmail can be a LDA or MDA. But my guess is that 
  usually we do not refer to procmail as a MTA because it does not
  pass messages on to the rest of the (non-local) Internet. Rather
  it can pass messages to sendmail, which then passes them on to the
  Net. So my guess is that if a system has sendmail set up as the MTA 
  and a user invokes procmail via the .forward file, we could say the 
  following:

  Sendmail is the MTA and the default MDA for users, but some users 
  use procmail as their personal LDA by invoking it via the .forward 
  file. 

  Is this the correct use of these terms? 

I don't think modern Sendmail tries to do much MDA work, it will
simply pass local mail to whatever you have defined as Mlocal in your
sendmail.cf. I believe LDA and MDA are practically synonymous.

IIRC the terms MDA and MTA were introduced by the X.400 folks. (?)

See also <http://www.imc.org/terms.html> although curiously, it
doesn't list MDA or LDA.

Hope this helps,

/* era */

-- 
 Too much to say to fit into this .signature anyway: <http://www.iki.fi/era/>
  Fight spam in Europe: <http://www.euro.cauce.org/> * Sign the EU petition