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
 .na
 .HP 5
 .B spost
-.RB [ \-alias
-.IR aliasfile
-.RB " | " \-noalias ]
-.RB [ \-dist ]
 .RB [ \-verbose " | " \-noverbose ]
 .RB [ \-verbose " | " \-noverbose ]
-.RB [ \-watch " | " \-nowatch ]
 .I file
 .I file
-.RB [ \-version ]
+.RB [ \-Version ]
 .RB [ \-help ]
 .ad
 .SH DESCRIPTION
 .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
 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
 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
 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.
 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
 .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
 .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
 .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 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
 .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
 .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
 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 .
 .PP
 The draft is filed to the folders in the Fcc headers by
 .BR refile .
@@ -115,10 +144,15 @@ None
 .fi
 
 .SH "PROFILE COMPONENTS"
 .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),
 
 .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 '
 .SH DEFAULTS
 .nf
 .RB ` \-noverbose '
-.RB ` \-nowatch '
 .fi
 
 .SH CONTEXT
 None
 
 .SH BUGS
 .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.