-.\"
+.TH SEND %manext1% 2017-05-11 "%nmhversion%"
+.
.\" %nmhwarning%
-.\"
-.TH SEND %manext1% "August 14, 2016" "%nmhversion%"
+.
.SH NAME
-send \- send a message
+send \- send an nmh 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
+.IR service ]
.RB [ \-snoop ]
.RB [ \-user
.IR username ]
.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
.B send
-is re\-distributing a message, as invoked from
+is re-distributing a message, as invoked from
.BR dist ,
then the
corresponding \*(lqResent\-xxx\*(rq fields are examined instead.
.IR mhshow (1)
for more details and example syntax.
.PP
-Each attached MIME part contains a
+Each attached MIME part contains a
\*(lqContent-Description\*(rq header that includes the filename, and
adds a \*(lqContent-Disposition\*(rq header.
Here is an example of MIME part headers for an attachment:
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
.B \-filter
.I filterfile
is specified, then this copy is filtered
-(re\-formatted) by
+(re-formatted) by
.B mhl
prior to being sent to the blind recipients.
Alternately, if you specify the
.PP
If
.B send
-is re\-distributing a message (when invoked by
+is re-distributing a message (when invoked by
.BR dist ),
then \*(lqResent\-\*(rq will be prepended to each of these
fields: \*(lqFrom:\*(rq, \*(lqDate:\*(rq, and \*(lqMessage\-ID:\*(rq.
.PP
If a message with multiple \*(lqFrom:\*(rq
addresses does
-.B NOT
+.I not
include a \*(lqSender:\*(rq field but does include an \*(lqEnvelope\-From:\*(rq
field, the \*(lqEnvelope\-From:\*(rq field will be used to construct
a \*(lqSender:\*(rq field.
.PP
-When using SMTP for mail submission, the envelope\-from used for the SMTP
+When using SMTP for mail submission, the envelope-from used for the SMTP
transaction is derived from the \*(lqEnvelope\-From:\*(rq field.
If no \*(lqEnvelope\-From:\*(rq field is present, the \*(lqSender:\*(rq
field is used. If neither the \*(lqEnvelope\-From:\*(rq nor the
the appended fields and field reformatting. The \*(lqFcc:\*(rq fields
will be removed from all outgoing copies of the message.
.PP
+Beware that if an \*(lqFcc:\*(rq with one or more folders is present
+but none of the folders exist, and the default
+.I fileproc
+and
+.I postproc
+are in use, then
+.B refile
+will prompt the user to create the folder(s) if
+.B \-push
+is not specified. If all responses are negative, or creation of each folder
+fails, or
+.B \-push
+is specified, the message will not be copied to any folder and will be
+removed by
+.BR post.
+With the default
+.B refile
+switches, the message draft will be renamed according to the specification
+of its
+.B \-nolink
+switch.
+.PP
By using the
.B \-width
.I columns
.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
.B \-snoop
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.)
+plaintext or easily decoded base64.) If
+.B \-sasl \-saslmech xoauth2
+is used, the HTTP transaction is also shown.
.PP
If
.B nmh
man page description of
.B \-snoop
for its other features.
-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.
+.PP
+If
+.B nmh
+has been compiled with OAuth support, the
+.B \-sasl
+and
+.B \-saslmech xoauth2
+switches will enable OAuth authentication. The
+.B \-user
+switch must be used, and the
+.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 OAuth authentication, the user must authorize nmh by
+running
+.B mhlogin
+and grant authorization to that account. See the
+.IR mhlogin (1)
+man page for more details.
.PP
If
.B nmh
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; see the
.B post
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
.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
.fc ^ ~
.nf
.ta \w'%nmhetcdir%/ExtraBigFileName 'u
-^$HOME/\&.mh\(ruprofile~^The user profile
+^$HOME/.mh_profile~^The user profile
.fi
.SH "PROFILE COMPONENTS"
.fc ^ ~
.ta 2.4i
.ta \w'ExtraBigProfileName 'u
^Path:~^To determine the user's nmh directory
-^Draft\-Folder:~^To find the default draft\-folder
+^Draft\-Folder:~^To find the default draft-folder
^Aliasfile:~^For a default alias file
^Signature:~^To determine the user's mail signature
^mailproc:~^Program to post failure notices
.IR forw (1),
.IR mhbuild (1),
.IR mhparam (1),
+.IR mhlogin (1),
+.IR refile (1),
.IR repl (1),
.IR whatnow (1),
.IR mh\-alias (5),
.IR post (8)
.SH DEFAULTS
.nf
-.RB ` file "' defaults to <mh\-dir>/draft"
+.RB ` file "' defaults to <mh-dir>/draft"
.RB ` \-alias "' defaults to %nmhetcdir%/MailAliases"
.RB ` \-nodraftfolder '
.RB ` \-nofilter '
.RB ` \-noverbose '
.RB ` \-nowatch '
.RB ` "\-width\ 72" '
+.RB ` \-certverify '
.fi
.SH CONTEXT
None