Scroll to navigation

SPOST(8mh) [mmh-0.4] SPOST(8mh)


spost - feed a message to sendmail


spost [-verbose | -noverbose] file [-Version] [-help]


Spost is the program called by send to feed the message in file to sendmail for delivery. In fact, many of the features attributed to send in its manual page are performed by spost, with send acting as a preprocessor. Thus, it is spost which parses the various header fields, appends `From:' and `Date:' lines, and finally feeds the message to the MTA. Spost will not normally be called directly by the user.

Spost searches the `To:', `Cc:', `Bcc:', `Dcc:', `Fcc:', and `Resent-xxx:' header lines of the specified message for destination addresses,

Spost invokes sendmail with all recipients, except the blind ones (`Bcc:'), as command line arguments:

sendmail -i [-v] recipients ...

If a `Bcc:' field is encountered, its addresses will be used for delivery, and the `Bcc:' field will be removed from the message sent to sighted recipients. The blind recipients will receive a newly constructed message with a copy of the original message attached. MIME rules are used for encapsulation. (spost invokes send to send the Bcc message.)

If a `Dcc:' field is encountered, the field will be removed before sending the message. The Dcc recipient will receive the message as well, but without being mentioned in the recipient headers.

In contrast to Bcc, the Dcc recipient receives the same original message as all the sighted reciepients, whereas the Bcc recipient receives a special, newly constructed message, which contains the original message as an attachment.

Bcc is probably a good choice for a message with both sighted and invisible reciepients (e.g. inform someone privately about the message being sent). Dcc is probably a good choice for a message to a group of only invisible recipients (e.g. invite to a party).

The `Aliasfile' profile entry can be used to specify one or more files that spost should take aliases from.

Aliasing is done on any address field. Those are: `From:', `To:', `Cc:', `Bcc:' and `Dcc:', or the `Resent-xxx:' versions of these fields.

The -verbose switch enables informational messages. For example, the `-v' switch will be added to the sendmail invocation.

If you specify a `From:' line manually in the message draft, it will be used as provided. If there is no `From:' line in the draft, spost uses the `Default-From' profile entry, if set. Otherwise spost constructs the `From:' line from the user's login name and the full name from the GECOS field of the passwd file. An example is `From: Dan Harkless <dan>'.

If you set the $SIGNATURE environment variable. Its value overrides the full name from the GECOS field.

A `Sender:' header will be added in two cases. First, if the `From:' line given in the draft contains one or more addresses, of which none is the user's own one, as defined by `Alternate-Mailboxes'. (The sender address will then be determined equally as described above for the absent `From:' header.) Second, if the `From:' line contains multiple addresses, of which at least one is the user's own address. The first own address will be used as the sender address.

Note that this applies equally to `Resent-From:' lines in messages sent with dist.

Spost tries to fully qualify the addresses in every address field. Your MTA is supposed to add the correct domain, if there is none after aliasing.

The draft is filed to the folders in the Fcc headers by refile.




^Aliasfile:~^For default alias files
^Default-From:~^The default From header
^Alternate-Mailboxes:~^The user's addresses
^Sendmail:~^The path name to the sendmail program.


send(1), mh-mail(5), mh-alias(5), mh-tailor(5), refile(1), Standard for the Format of ARPA Internet Text Messages (RFC-822)








The spost in mmh-0.1 used sendmail's -t flag to have sendmail extract the recipients from the message headers. Now, it passes the recipients as command line arguments. This provides better compatibility to other sendmail implementations.

2019-01-06 MH.6.8