.\"
.\" %nmhwarning%
.\"
-.TH SEND %manext1% "July 5, 2016" "%nmhversion%"
+.TH SEND %manext1% "October 10, 2016" "%nmhversion%"
.SH NAME
send \- send a message
.SH SYNOPSIS
.HP 5
.na
.B send
+.RB [ \-help ]
+.RB [ \-version ]
.RB [ \-alias
.IR aliasfile ]
.RB [ \-draft ]
.IR port-name/number ]
.RB [ \-sasl ]
.RB [ \-nosasl ]
-.RB [ \-saslmaxssf
-.IR ssf ]
.RB [ \-saslmech
.IR mechanism ]
.RB [ \-authservice
.RB [ \-tls ]
.RB [ \-initialtls ]
.RB [ \-notls ]
+.RB [ \-certverify ]
+.RB [ \-nocertverify ]
.RB [ \-width
.IR columns ]
.RB [ file
\&...]
-.RB [ \-version ]
-.RB [ \-help ]
.ad
.SH DESCRIPTION
-.B Send
+.B send
will cause each of the specified files to be delivered
to each of the destinations in the \*(lqTo:\*(rq, \*(lqcc:\*(rq,
\*(lqBcc:\*(rq, \*(lqDcc:\*(rq, and \*(lqFcc:\*(rq fields of the message. If
tells it how long
to pause between postings.
.PP
-.B Send
+.B send
with no
.I file
argument will query whether the draft
mail transport method is not in use, its addresses will be used for
delivery, and the \*(lqDcc:\*(rq field will be removed from the message. The
blind recipients will receive the same message sent to the sighted
-recipients. *WARNING* Recipients listed in the \*(lqDcc:\*(rq field receive no
+recipients. *WARNING* Recipients listed in the \*(lqDcc:\*(rq field receive no
explicit indication that they have received a \*(lqblind copy\*(rq.
This can cause blind recipients to
inadvertently reply to all of the sighted recipients of the
.PP
The mail transport system default is provided in
.I %nmhetcdir%/mts.conf
-but can be overriiden here with the
+but can be overridden here with the
.B \-mts
switch.
.PP
switch can be used to view the SMTP transaction. (Beware that the
SMTP transaction may contain authentication information either in
plaintext or easily decoded base64.) If
-.B \-saslmech xoauth2
+.B \-sasl \-saslmech xoauth2
is used, the HTTP transaction is also shown.
.PP
If
Encrypted data is labelled with `(encrypted)' and `(decrypted)' when
viewing the SMTP transaction with the
.B \-snoop
-switch. The
-.B \-saslmaxssf
-switch can be used to select the maximum value of the Security Strength Factor.
-This is an integer value and the exact meaning of this value depends on the
-underlying SASL mechanism. A value of 0 disables encryption.
+switch; see the
+.B post
+man page description of
+.B \-snoop
+for its other features.
.PP
If
.B nmh
has been compiled with OAuth support, the
+.B \-sasl
+and
.B \-saslmech xoauth2
-switch will enable OAuth authentication. The
+switches will enable OAuth authentication. The
.B \-user
switch must be used, and the
-.I user-name
+.I username
must be an email address the user has for the service, which must
be specified with the
.B \-authservice
.I service
-switch. Before using this, the user must authorize nmh by running
+switch. Before using OAuth authentication, the user must authorize nmh by
+running
.B mhlogin
and grant authorization to that account. See the
-.B mhlogin
+.IR mhlogin (1)
man page for more details.
.PP
If
will negotiate TLS immediately after the connection has
taken place, before any SMTP commands are sent or received. Encrypted data
is labelled with `(tls-encrypted)' and
-`(tls-decrypted)' when viewing the SMTP transction with the
+`(tls-decrypted)' when viewing the SMTP transaction with the
.B \-snoop
-switch.
+switch; see the
+.B post
+man page description of
+.B \-snoop
+for its other features.
The
.B \-notls
switch will disable all attempts to negotiate TLS.
SMTPS (SMTP over SSL) was deregistered by IANA in 1998, it is still
used for that service.
.PP
+When using TLS the default is to verify the remote certificate and SubjectName
+against the local trusted certificate store. This can be controlled by
+the
+.B \-certverify
+and
+.B \-nocertverify
+switches. See your OpenSSL documentation for more information on certificate
+verification.
+.PP
The files specified by the profile entry \*(lqAliasfile:\*(rq and any
additional alias files given by the
.B \-alias
See
.IR mh\-alias (5)
for more information.
-.SS Selection based on From: address: sendfrom
+.SS Selection based on sender address: sendfrom
One or more
.I sendfrom
profile components can be used to select a mail server address, mail server
port, or any other switch that can be supplied to
.BR post .
-It works by first looking at the address and domain name in the From: header
-line in the message draft.
+It works by first looking at the sender address and domain name in the
+message draft, as described below.
It then looks for a corresponding profile entry, which contains the
.B post
switches.
.RI sendfrom- "address/domain name" : " post switches"
.RE
.PP
-The email address is extracted from the From: header line of the message draft.
+The email address is extracted from the Envelope-From: header, if not blank,
+the Sender: header, or the From: header line in the message draft.
Multiple profile entries, with different email addresses or domain names, are
supported.
This allows different switches to
.PP
.nf
.RS 5
-sendfrom-gmail_address@example.com: -saslmech xoauth2
+sendfrom-gmail_address@example.com: -sasl -saslmech xoauth2
.RS 5
-authservice gmail -tls -server smtp.gmail.com
-user gmail_login@example.com
.PP
(Indentation indicates a continued line, as supported in MH profiles.)
The username need not be the same as the sender address, which was extracted
-from the From: header line.
+from the appropriate header line as noted above.
.PP
Here are example profile entries that use an nmh credentials file:
.PP
^Signature:~^To determine the user's mail signature
^mailproc:~^Program to post failure notices
^postproc:~^Program to post the message
-^sendfrom-address:~^Switches to post for From: address
-^sendfrom-domain:~^Switches to post for From: domain name
+^sendfrom-address:~^Switches to post for sender address
+^sendfrom-domain:~^Switches to post for sender domain name
.fi
.SH "SEE ALSO"
.IR comp (1),
.RB ` \-noverbose '
.RB ` \-nowatch '
.RB ` "\-width\ 72" '
+.RB ` \-certverify '
.fi
.SH CONTEXT
None