MAIL.IN(1)
NAME
mail.in - ddts mail handler
SYNOPSIS
mail.in [-pn] [-b mailbox]
DESCRIPTION
Based on mail messages found in the mailbox for user ddts,
the mail.in program extracts relevant information and drops
it in an appropriate directory for other ClearDDTS utilities
to handle.
When a mail message comes into the system, mail.in analyzes
the message and determines whether it is an administration
message, a bug record message, or some text it cannot
understand.
If it is an administration message, it places it in a spool
directory for dadmin.in(1) to process. If it is a bug
record message, it places it in a different spool directory
for bugs.in(1) to process.
If mail.in(1) cannot comprehend the message, it takes one
last look at the mail "Subject:" to see if it contains a
reference to a valid bugid on the current site. If there is
a reference to a valid bugid, then the utility ddtsappend(1)
is called with the necessary information to append the mail
message to the defect id.
There are certain restrictions that must be met before
ddtsappend(1) is called. The sender cannot be root, daemon,
mailer-daemon, postmaster, or have a name beginning with
ddts. This is to prevent notification email from being
appended to the same defect.
If mail.in(1) still cannot comprehend the message, it mails
the text of the message to the ClearDDTS adminstrator(s),
and also stores a copy of the message in a holding directory
so that it can be examined later to determine what was the
problem with it.
The mail.in program appends messages to a log file recording
all mail messages it has processed. The log file may be
examined if defect distribution or notification problems
occur. The size of the log file is controlled by the
ClearDDTS cleanup utility, ddtsclean(1).
The -p option is used for debugging. It causes all log
messages to be echoed to the standard output as well as
being written to the log file. This is useful with the -f
(don't fork into the background) and -k (don't kick the
ddtsd daemon) available to all daemons. Note this option is
only valid in conjunction with the -f option. Otherwise it
is ignored.
The -n option is used to turn off RFC 822 compliance.
mail.in obtains the correct return-path according to the
algorithm stated in the RFC (i.e. Return-Path, then Reply-
To, then finally From). If your mail system is set up so
that this algorithm does not work, then you can use this
switch to turn it off. If the switch is set then only the
From header will be used for generating the return-path.
This would generally require using the strategy described in
the -b mailbox option.
The -b mailbox option is used to specify an alternate
mailbox where mail.in can find its mail. Normally, mail can
be found in /usr/spool/mail on BSD style systems or
/usr/mail for AT&T type systems.
If the mailbox on your system is not in one of these two
locations, then you can create the file ~ddts/conf/mailfile
to contain the full path to the mailbox or the -b option may
be used. The latter would generally require moving the
mail.in program to another name in the ~ddts/bin directory,
and put a script named mail.in there that invokes the real
mail.in and passing the location of the system mailbox.
The mail.in utility assumes that normal mail protocols are
used to lock and unlock the ddts mailbox (such as a
ddts.lock file in the mail spool directory).
The mail.in program is invoked by the ddtsd daemon. The
program must run real-user-id ddts. It should not be run
directly by users.
WARNINGS
On System V machines, the mail directory (/usr/mail) is only
able to be written to by the group mail. Therefore the
mail.in program must be setgid mail to access it's own
mailbox. This is automatically set up in the ddtsinstall(1)
script, but can be accidentally changed later.
FILES
/usr/mail/ddts ClearDDTS mail box on System V systems
/usr/spool/mail/ddts ClearDDTS mail box on BSD systems
~ddts/conf/administrator Address(es) of administrator(s)
~ddts/conf/mailer Program to use to send mail messages
~ddts/conf/mailfile File containing the path to ddts mailbox
~ddts/spool/LOG ClearDDTS log file
~ddts/spool/bugs.in Spool directory for bugs.in
~ddts/spool/dadmin.in Spool directory for dadmin.in
~ddts/spool/mail.lost Holding directory for puzzling mail
SEE ALSO
bugs.in(1), dadmin.in(1), ddtsclean(1), ddtsd(1), ddtsappend(1)