Factor trim format function out
[mmh] / man / spost.man8
index 1e0429d..1e96286 100644 (file)
@@ -9,14 +9,9 @@ spost \- feed a message to sendmail
 .na
 .HP 5
 .B spost
-.RB [ \-alias
-.IR aliasfile
-.RB " | " \-noalias ]
-.RB [ \-dist ]
 .RB [ \-verbose " | " \-noverbose ]
-.RB [ \-watch " | " \-nowatch ]
 .I file
-.RB [ \-version ]
+.RB [ \-Version ]
 .RB [ \-help ]
 .ad
 .SH DESCRIPTION
@@ -38,18 +33,30 @@ acting as a preprocessor.
 Thus, it is
 .B spost
 which parses the various header fields, appends
-\*(lqFrom:\*(rq and \*(lqDate:\*(rq lines,
+`From:' and `Date:' lines,
 and finally feeds the message to the MTA.
 .B Spost
 will not normally be called directly by the user.
 .PP
 .B Spost
-searches the \*(lqTo:\*(rq, \*(lqCc:\*(rq, \*(lqBcc:\*(rq,
-\*(lqFcc:\*(rq, and \*(lqResent\-xxx:\*(rq header lines of the specified
+searches the `To:', `Cc:', `Bcc:', `Dcc:',
+`Fcc:', and `Resent\-xxx:' header lines of the specified
 message for destination addresses,
 .PP
-If a \*(lqBcc:\*(rq field is encountered, its addresses will be used for
-delivery, and the \*(lqBcc:\*(rq field will be removed from the message
+.B Spost
+invokes
+.B sendmail
+with all recipients, except the blind ones (`Bcc:'),
+as command line arguments:
+.RS
+.B sendmail
+.B \-i
+.RB [ \-v ]
+.I recipients ...
+.RE
+.PP
+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.
@@ -58,51 +65,73 @@ invokes
 .B send
 to send the Bcc message.)
 .PP
-The
-.B \-alias
-.I aliasfile
-switch can be used to specify a file that spost
-should take aliases from.  More than one file can be specified, each
-being preceded with
-.BR \-alias .
-In any event, the alias file, set with the `Aliasfile' profile entry, is
-read first.
+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.
 .PP
-The
-.B \-verbose
-enables the output of informational messages.
-This option sets \-watch, too.
+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.
+.PP
+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).
+.PP
+The `Aliasfile' profile entry
+can be used to specify one or more files that spost
+should take aliases from.
+.PP
+Aliasing is done on any address field. Those are:
+`From:', `To:', `Cc:', `Bcc:' and `Dcc:',
+or the `Resent\-xxx:' versions of these fields.
 .PP
 The
-.B \-watch
-switch adds the `\-v' switch to the
+.B \-verbose
+switch enables informational messages.
+For example, the `\-v' switch will be added to the
 .B sendmail
 invocation.
 .PP
-.B Spost
-constructs the \*(lqFrom:\*(rq line of the
-message from the user's login name and the full name from the GECOS field
-of the passwd file.
-An example is \*(lqFrom: Dan Harkless <dan>\*(rq.
+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,
+.B spost
+uses the
+.RI ` Default-From '
+profile entry, if set.
+Otherwise
+.B 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>'.
 .PP
 If you set the
 .B $SIGNATURE
 environment variable.
 Its value overrides the full name from the GECOS field.
 .PP
-If you specify a \*(lqFrom:\*(rq
-line manually in the message draft.
-It will be used as provided.
-However, a \*(lqSender:\*(rq header with the user's
-.B real
-address will be added.
+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
+.RI ` 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.
 .PP
-Note that this applies equally to \*(lqResent\-From:\*(rq lines
+Note that this applies equally to `Resent\-From:' lines
 in messages sent with
 .BR dist .
 .PP
-Your MTA is supposed to care to fully qualitfy the addresses
-with the correct domain name.
+.B 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.
 .PP
 The draft is filed to the folders in the Fcc headers by
 .BR refile .
@@ -115,10 +144,15 @@ None
 .fi
 
 .SH "PROFILE COMPONENTS"
-.B spost
-does
-.B NOT
-consult the user's profile.
+.fc ^ ~
+.nf
+.ta 3.5i
+.ta \w'ExtraBigProfileName  'u
+^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.
+.fi
 
 .SH "SEE ALSO"
 send(1), mh\-mail(5), mh\-alias(5), mh\-tailor(5), refile(1),
@@ -128,13 +162,22 @@ send(1), mh\-mail(5), mh\-alias(5), mh\-tailor(5), refile(1),
 .SH DEFAULTS
 .nf
 .RB ` \-noverbose '
-.RB ` \-nowatch '
 .fi
 
 .SH CONTEXT
 None
 
 .SH BUGS
-Spost does not qualify addresses.
-.PP
-Spost does only basic processing and checking, yet.
+None
+
+.SH HISTORY
+The
+.B spost
+in mmh-0.1 used
+.BR sendmail 's
+.I -t
+flag to have
+.B 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.