Subject: bug#14367: 24.3; smtpmail-send-it starttls ignores the absence of starttls

From: sea <[email-masked]>
Date: Wed, 08 May 2013 00:44:01 -0400

======================================== 

I've just noticed that if smtpmail-send-it is configured to use
starttls, and if gnutls-cli (or whatever tls client you use) is /not/
installed on the system, then EMacs will go ahead and attempt to send
the email without TLS anyway, usually resulting in an authentication
error.

The only way to diagnose the bug is of course to look at the smtpmail
trace, which shows a conspicuous absence of the STARTTLS line.

I think that this is a bug, since it leads users to believe that
something is wrong on the server side, or that their authentication
details may be wrong. I think that EMacs should say something about the
missing starttls executable, rather than ignoring it outright.

Thanks,
sea
========================================

In GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu)
 of 2013-05-04 on freerunner
System Description:	Trisquel 6.0

Configured using:
 `configure '--without-x''

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: ERC

Minor modes in effect:
  erc-track-mode: t
  erc-track-minor-mode: t
  erc-ring-mode: t
  erc-notify-mode: t
  erc-networks-mode: t
  erc-netsplit-mode: t
  erc-menu-mode: t
  erc-match-mode: t
  erc-log-mode: t
  erc-list-mode: t
  erc-pcomplete-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-autojoin-mode: t
  gpm-mouse-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  shell-dirtrack-mode: t
  show-paren-mode: t
  display-battery-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
t SPC l e a s t SPC s a y SPC s o m e t h i n g RET 
S p e c i f i c a l l y SPC w o r d e d : SPC " s m 
t p m a i l - s e n d - i t SPC i g n o r e s SPC t 
h e SPC a b s e n s e SPC o f SPC s t a r t t l s SPC 
a n d SPC s e DEL DEL t r DEL DEL s e n d s SPC C-b 
C-b C-b C-b C-b C-b a t t e m t p s SPC t o SPC C-k 
s e n d SPC m a i l SPC a n y w a y , SPC DEL DEL SPC 
i f SPC DEL DEL DEL DEL , SPC DEL DEL C-b C-e . " C-b 
C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b 
C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b C-t C-e , SPC 
T h e SPC t r a n c e DEL DEL DEL c e e SPC DEL DEL 
SPC h a d SPC C-x o C-x b * t r TAB c e TAB s m TAB 
RET C-x k RET C-x b * t r TAB c e TAB m a i l TAB r 
TAB RET C-x o C-b C-b C-b C-b C-b C-b C-b C-b C-b C-b 
C-b C-b C-b C-b C-b C-b C-b C-b C-b C-f C-f C-f C-k 
C-a C-k ESC x r e p o r t - e m a c s TAB b u g TAB 
RET

Recent messages:
Quit
Mark set
Mark saved where search started
Connecting to irc.freenode.net:6667... ...done
Logging in as 'sea-theorem'... done
Auto-saving...done
Quit [2 times]
Mark saved where search started
Saving file /home/sea/.emacs...
Wrote /home/sea/.emacs

Load-path shadows:
~/.emacs.d/emms-3.0/tq hides /usr/local/share/emacs/24.3/lisp/emacs-lisp/tq

Features:
(shadow emacsbug rfc2104 mailalias gnus-cite tramp-cache tramp-sh
pcmpl-gnu parse-time gnus-html xml url-cache mm-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie url-domsuf
url-util mm-archive mail-extr gnus-bcklg help-mode dired-aux pcmpl-unix
em-unix em-term term ehelp electric em-script em-prompt em-ls em-hist
em-pred em-glob em-dirs em-cmpl em-basic em-banner em-alias esh-var
esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg eldoc esh-groups eshell
esh-module esh-mode esh-util misearch multi-isearch gnus-async qp
gnus-ml disp-table nndraft nnmh nnfolder nnml gnus-agent gnus-srvr
gnus-score score-mode nnvirtual gnus-msg gnus-art mouse mm-uu mml2015
epg-config mm-view mml-smime smime dig mailcap nntp gnus-cache gnus-sum
nnoo gnus-group gnus-undo nnmail mail-source gnus-start gnus-spec
gnus-int gnus-range message rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader gnus-win
gnus gnus-ems nnheader w3m-cookie w3m-form mule-util w3m-bookmark
w3m-tabmenu w3m-session ffap url-parse url-vars network-stream erc-track
erc-ring erc-notify erc-networks erc-netsplit erc-menu erc-match erc-log
erc-pcomplete erc-button erc-fill erc-stamp erc-join t-mouse server
geiser erc-goodies erc erc-backend erc-compat tls windmove warnings
slime-fancy slime-fontifying-fu slime-package-fu slime-references
slime-scratch slime-presentations slime-fuzzy slime-fancy-inspector
slime-c-p-c slime-editing-commands slime-autodoc slime-parse slime-repl
slime easy-mmode pp hyperspec thingatpt emms-browser sort
emms-playlist-sort emms-score emms-cache emms-info-ogginfo
emms-info-mp3info emms-info later-do emms-playlist-mode edmacro kmacro
emms-player-mplayer emms-player-simple emms-source-playlist
emms-source-file locate emms-setup emms emms-compat smtpmail sendmail
rfc2047 rfc2045 ietf-drums mail-utils starttls midnight w3m browse-url
doc-view jka-compr dired image-mode timezone w3m-hist w3m-fb
bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
tramp tramp-compat auth-source eieio byte-opt bytecomp byte-compile
cconv gnus-util mm-util mail-prsvr password-cache tramp-loaddefs shell
pcomplete comint ansi-color format-spec cl-macs gv color-theme cl
php-mode derived etags ring cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs regexp-opt speedbar
sb-image ezimage image dframe advice help-fns cl-lib advice-preload
cus-edit easymenu wid-edit time-date dichromacy-theme paren battery
cus-start cus-load ediff-hook vc-hooks lisp-float-type tabulated-list
newcomment lisp-mode register page menu-bar rfn-eshadow timer jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process multi-tty emacs)