Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ sendmail(1M) — HP-UX 5.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

mail(1)

SENDMAIL(1M)  —  Series 300 Only

NAME

sendmail − send mail over the internet

SYNOPSIS

/usr/lib/sendmail [ flags ] [ address ...  ]
newaliases
mailq

HP-UX COMPATIBILITY

Level: HP-UX/NONSTANDARD

Origin: UCB

Remarks: Implemented on the Series 300 only. 

DESCRIPTION

Sendmail sends a message to one or more recipients, routing the message over whatever networks are necessary.  Sendmail performs internetwork forwarding to deliver the message to its destination. 

Sendmail is not intended as a user interface routine.  Other programs provide user-friendly front ends; sendmail is used only to deliver pre-formatted messages. 

A recipient may be a local address, a remote address, or an absolute path name (beginning with a ‘/’) of a file to which the letter will be appended. 

With no flags, sendmail reads its standard input up to a control-D or a line with a single dot and sends a copy of the letter found there to all of the addresses listed.  It determines the network to use based on the syntax and contents of the addresses. 

Local addresses are looked up in an alias database and expanded as necessary.  The alias database is formed from the text file /usr/lib/aliases by the command newaliases. Each line of /usr/lib/aliases is of the form, alias: mailing list. A mailing list consists of one or more recipients as defined above, or a command line of the form “| command line” to which the letter will be piped as standard input.  Aliasing can be prevented by preceding the address with a backslash.  Normally the sender is not included in any alias expansions; e.g., if “john” sends to “group”, and “group” includes “john” in the expansion, then the letter will not be delivered to “john”. 

Mail that is temporarily undeliverable is saved in a mail queue in the directory usr/spool/mqueue.  Sendmail will re-try failed deliveries from the queue when called with the −q flag (see below). 

If invoked as newaliases, sendmail will rebuild the alias database. 

If invoked as mailq, sendmail will print the contents of the mail queue. 

Flags

Sendmail recognizes the following flags:

−ba Go into ARPANET mode.  All input lines must end with a CR-LF, and all messages will be generated with a CR-LF at the end.  Also, the “From:” and “Sender:” fields are examined for the name of the sender. 

−bd Run as the SMTP server.  This requires TCP/IP IPC sockets. 

−bi Initialize the alias database. 

−bm Deliver mail in the usual way (default). 

−bp Print a listing of the mail queue. 

−bs Use the SMTP protocol on standard input (stdin).  This flag implies all the operations of the −ba flag that are compatible with SMTP. 

−bt Run in address test mode.  This mode reads addresses and shows the parsing steps; it is used for debugging configuration files. 

−bv Verify names only; do not try to collect or deliver a message.  Verify mode is used for validating users or mailing lists. 

−bz Create the configuration freeze file. 

−Cfile Use an alternate configuration file. 

−Ffullname Set the full name of the sender. 

−fname Sets the name of the “from” person (i.e., the sender of the mail).  −f can only be used by the special users root, daemon, and network, or if the person you are trying to become is the same as the person you are. 

−hN Set the hop count to N.  The hop count is incremented every time the mail is processed.  When it reaches a limit, the mail is returned with an error message, the victim of an aliasing loop. 

−n Don’t expand aliases. 

−oxvalue Set option x to the specified value.  These options are described in the options section below. 

−q[ time ] If time is omitted, process the mail queue once.  Otherwise, process the queue at the specified interval.  Time is given as a tagged number, with ‘s’ being seconds, ‘m’ as minutes, ‘h’ as hours, ‘d’ as days, and ‘w’ as weeks.  For example, “−q1h30m” or “−q90m” would both set the queue processing time interval to one hour thirty minutes. 

−rname An alternate and obsolete form of the −f flag. 

−t Read message to determine recipients.  “To:”, “Cc:”, and “Bcc:” lines will be scanned for recipients to send to.  The “Bcc:” line will be deleted before transmission.  Any addresses in the argument list will be suppressed. 

−v Go into verbose mode.  Alias expansions will be announced, etc. 

Processing Options

A number of processing options may also be set.  Normally these will only be used by a system administrator.  Options may be set either on the command line using the −o flag or in the configuration file.  The options are:

Afile Use alternate alias file. 

a Causes sendmail to wait for an “@:@” entry to exist in the alias database before starting up.  If it does not appear in five minutes, then the database is rebuilt. 

c On mailers that are considered “expensive” to connect to, don’t initiate immediate connection; instead, store the message on the mail queue for later delivery. 

dx Set the delivery mode to x.  Delivery modes are ‘i’ for interactive (synchronous) delivery, ‘b’ for background (asynchronous) delivery, and ‘q’ for queue only−i.e., actual delivery is done the next time the queue is run. 

D Try to automatically rebuild the alias database if necessary. 

ex Set error processing to mode x.  Valid modes are ‘m’ to mail back the error message, ‘w’ to “write” back the error message (or mail it back if the sender is not logged in), ‘p’ to print the errors on the sender’s terminal (default), ‘q’ to throw away error messages (only exit status is returned), and ‘e’ to do special processing for the BerkNet. If the text of the message is not mailed back by modes ‘m’ or ‘w’ and if the sender is local to this machine, a copy of the message is appended to the file dead.letter in the sender’s home directory. 

Fmode The mode to use when creating temporary files. 

f Save UNIX-style “From” lines at the front of messages. 

gN The default group id to use when calling mailers. 

Hfile Specify an alternate SMTP help file

i Do not take dots on a line by themselves as a message terminator. 

Ln Set log level to n.

Mxvalue Sets the macro x to value. This option can only be used in the command line.

m Send to “me” (the sender) even if I am in an alias expansion. 

o If set, this message may have old style headers.  If not set, this message is guaranteed to have new style headers (i.e., commas instead of spaces between addresses).  If set, an adaptive algorithm is used that will correctly determine the header format in most cases. 

Qqueuedir Specify the directory in which to queue messages. 

rtimeout The timeout on reads; if none is set, sendmail will wait forever for a mailer that is not responding. 

Sfile Specify the file in which to save statistics.  (The default is /usr/lib/sendmail.st). 

s Always instantiate the queue file, even under circumstances where it is not strictly necessary. 

Ttime Set the timeout on messages in the queue to the specified time.  After sitting in the queue for this amount of time, they will be returned to the sender.  The default is three days. 

un Set the default userid for executing mailers. 

DIAGNOSTICS

Sendmail reports user errors and system errors.  The user errors indicate that the user has attempted to execute sendmail with incorrect or inconsistent parameter(s).  System errors indicate that there are sendmail configuration errors or that the system was unable to successfully execute a system call.   Errors may also be reported by the sendmail daemon when attempting to establish IPC connections.  The possible error messages and a detailed description of each are listed below. 

User Errors

Usage: /usr/lib/sendmail [flags] addr... 
The command line contains incorrect or inconsistent parameters.

Cannot resolve name
The address specified cannot be resolved to a known mailer.

System Errors

Cannot make <buffer name>
Unable to access buffer for initializing the alias database.

Non-continuation line starts with space
A line in the alias database, which is not a continuation of the previous line, is preceeded by a space.

Missing colon
An entry in the alias database is missing a colon.  The left-hand side of the alias declaration must be terminated with a colon and everything after the colon is interpreted as the objects which the alias name resolves to.

Cannot alias non-local names
An attempt was made to alias a remote name.  Only local names are allowed as aliases. However the alias may resolve to local and/or remote addresses.

Forward: no home
A home directory does not exist or is not accessible when attempting to check for the .forward file. 

Unexpected close, from < address >
The message input was unexpectedly closed.  This error occurs when an EOF is encountered during an SMTP transaction. 

Too many hops <maximum hops>
The current message has exceeded the maximum allowable number of node-to-node hops.

Bad hop count
The hop count following the −h option was not included or was not a digit. 

No local mailer defined
The current configuration file does not contain a mailer definition for a mailer which is intended to deliver mail locally.

No prog mailer defined
The current configuration file does not contain a mailer definition for a mailer which is intended to deliver mail to programs.

No tty mailer defined
The current configuration file does not contain a mailer definition for a mailer which is intended to deliver mail via ttys.

Unknown net
The rules used to build recipient addresses were unable to determine a delivery agent for the {delivery agent, host, user} triple.

No host
The rules used to build recipient addresses were unable to determine a host for the {delivery agent, host, user} triple.

No user
The rules used to build recipient addresses were unable to determine a user for the {delivery agent, host, user} triple.

Timeout on read (mailer may be hung)
A read timed out when attempting to receive data from a mailer.

Error: no user
The rules used to build recipient addresses were unable to determine a user for the {delivery agent, host, user} triple.

Sendmail Daemon Errors

Server “smtp” unknown
The sendmail daemon requested information about an SMTP server port which was unknown to the system (see /etc/services).

FILES

Except for /usr/lib/sendmail.cf, the following pathnames may be overridden by /usr/lib/sendmail.cf.  These values are the defaults. 

/usr/lib/aliases raw data for alias names

/usr/lib/aliases.pag

/usr/lib/aliases.dir data base of alias names

/usr/lib/sendmail.cf configuration file

/usr/lib/sendmail.fc frozen configuration

/usr/lib/sendmail.hf help file

/usr/lib/sendmail.st collected statistics

/usr/bin/uux to deliver uucp mail

/bin/mail to deliver local mail

/usr/spool/mqueue/∗ contains the mail queue and syslog files

SEE ALSO

mail(1). 

WARNINGS

Sendmail converts blanks in addresses to dots.  This is incorrect according to the old ARPANET mail protocol, but is consistent with the new protocols. 

Hewlett-Packard Company  —  December 25, 1986

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026