Re: Issue with SMTP

Kazuhiro Ito <[email protected]> Sun, 02 Jun 2019 18:22:04 +0900
Newsgroups gmane.mail.wanderlust.general
Message-ID <86pnnw1gw3.wl--xmue__22509.1877438658$1559467421$gmane$org@d1.dion.ne.jp>
> > Or, enable built-in GnuTLS support of Emacs and use it.  You use
> > gnutls-cli program for STARTTLS connection, but this feature (tls.el
> > and starttls.el) has been obsolete in trunk.
> 
> Would you mind elaborating in two sentences? I understand that
> starttls.el  and tls.el is depreciated. I understand that I used and
> use the gnutls-cli and hope which is what I should do preferably.

Emacs can have built-in GnuTLS library and make a STARTTLS connection
without external programs such as gnutls-cli.  Wanderlust uses this
feature when available.  You can confirm whether your emacs has
built-in GnuTLS library by evaluating (gnutls-available-p) .  If your
emacs uses gnutls-cli despite of having built-in GnuTLS library, you
may modify elmo-network-stream-type-alist variable.

> I noticed that the SMTP session trace changed completely after
> inserting
> 
> (setq starttls-success "- Options: ")
> 
> not printing out any certificates or public art anymore.
> 
> So, it works, which is great but why, what have I changed by inserting
> this line? 

The problem was that starttls-negotiate-gnutls function couldn't
detect the end of the handshake.  It is indicated by starttls-success
variable.  The varialbe's default value is "- Compression: ", but
which does not be outputted by gnutls-cli 3.6 anymore.  So you need to
change starttls-success's value accroding to actual gnutls-cli's
output.  starttls-negotiate-gnutls removes the TLS negotiation junk
before finish.

-- 
Kazuhiro Ito