Subject: bug#10060: 24.0.91; Built-in GNUtls err=-64 error

From: Ted Zlatanov <[email-masked]>
Date: Wed, 25 Jan 2012 12:02:34 -0600

On Tue, 15 Nov 2011 21:48:31 -0500 [email-masked] wrote: 

n> When using an intentionally incorrect PEM file, Emacs gives the following
n> *Backtrace* (see below).

n> The *Message* buffer has:

n> Starting GNUTLS
n> gnutls.el: (err=[-64] Error while reading file.) boot: (:priority NORMAL :hostname imap.aim.com :loglevel 0 :min-prime-bits nil :trustfiles (AOL.pem) :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error t :callbacks nil)
n> Entering debugger...

n> Can the built-in GNUtls give a more graceful error message, if possible,
n> for a "err=[-64] error?

n> Thanks.

n> Diagnostic information follows:

n> Debugger entered--Lisp error: (gnutls-error #<process tls> -64)
n>   signal(gnutls-error (#<process tls> -64))

I'm not sure that should be the library's job.  IOW, the error is really
what GnuTLS tells us, and the text is a bonus that can be easily
obtained with `gnutls-error-string' (I assume end users don't run GnuTLS
functions directly, so it's reasonable to ask code that uses gnutls.el
to make that effort).  If you disagree, tell me how the error should be
bubbled back to the code that invoked it, and how we should embellish
GnuTLS error messages in general (there are hundreds).

Thanks
Ted