GNU bug report logs -
#8825
24.0.50; Problem with builtin gnutls on Windows
Previous Next
Reported by: nyc4bos <at> aol.com
Date: Wed, 8 Jun 2011 21:52:01 UTC
Severity: normal
Found in version 24.0.50
Done: Juanma Barranquero <lekktu <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 8825 in the body.
You can then email your comments to 8825 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Wed, 08 Jun 2011 21:52:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
nyc4bos <at> aol.com
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Wed, 08 Jun 2011 21:52:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
When trying to use Gnus with the (presumably) builtin gnutls
functionality on Windows
(using the binaries graciously built by Sean) I get the error:
Opening connection to imap.aim.com via tls...
Unable to open server nnimap+aol due to: Symbol's function definition is void: gnutls-boot
Opening nnimap server on aol...failed:
I have the DLL libgnutls-26.dll in my PATH as well as in `exec-path`.
I specified:
(require 'gnutls)
before starting Gnus.
Eval'ing the expression:
(eval-expression (quote (fboundp (quote open-gnutls-stream))) nil)
t
gives `t'.
I tried the simple test specified in `gnutls.el':
(require 'gnutls)
(open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
Debugger entered--Lisp error: (void-function gnutls-boot)
gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
gnutls-negotiate(:process #<process tls> :type gnutls-x509pki :hostname "imap.aim.com")
open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
eval((open-gnutls-stream "tls-" "tls-buffer" "imap.aim.com" "imaps") nil)
eval-last-sexp-1(t)
eval-last-sexp(t)
eval-print-last-sexp()
call-interactively(eval-print-last-sexp nil nil)
recursive-edit()
debug(error (void-function gnutls-boot))
I did get a `process-list':
tls open tls-buffer -- (network connection to imap.aim.com)
I also got an ESTALISHED TCP connection:
TCP XXX.XXX.XXX.XXX:4151 205.188.58.10:993 ESTABLISHED
[Aside: Hopefully, we will continue to be able to use the external gnutls-cli
if we wish when `(require 'gnutls)' is NOT specified (or a variable to
the same effect) even when Emacs 24.1 is released. Thanks.]
In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
of 2011-06-06 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.5) --no-opt --cflags -Ic:/build/include'
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_US
value of $XMODIFIERS: nil
locale-coding-system: cp1252
default enable-multibyte-characters: t
Major mode: Group
Minor modes in effect:
gnus-undo-mode: t
show-paren-mode: t
tooltip-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> C-x b <return> C-v C-v
C-v ^ q C-r d a d a C-p C-p C-p SPC C-n SPC C-n C-n
SPC C-p C-p C-p C-p SPC C-p SPC <return> Q y q y C-n
C-n C-n C-n C-n C-SPC <escape> > C-p C-p C-p C-p C-p
C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p
C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p
C-p C-p C-n C-n C-w C-v C-n C-n C-n C-n C-x b <return>
C-x b <return> <escape> x g n u s <return> <return>
<return> SPC SPC SPC <backspace> T C-g t SPC SPC <escape>
x t e d SPC s SPC <return> n SPC SPC SPC <backspace>
SPC <escape> x t e d - s p <tab> <return> C-x o <escape>
< C-x o Q y C-s g m C-n C-n C-n C-n SPC q q y <help-echo>
<help-echo> <escape> : l i b p n <tab> <return> <escape>
x l i s t SPC p r o c SPC <return> <escape> x l i s
t SPC b u f SPC <return> C-x b * g n <tab> <return>
C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-x 1 <escape>
x g n u s <return> <return> <return> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> <menu-bar>
<help-menu> <send-emacs-bug-report>
Recent messages:
nnimap read 286k
nnimap read 288k
nnimap read 289k
nnimap read 290k
nnimap read 293k
nnimap read 294k
nnimap read 298k
Reading active file from archive+nnfolder+archive:posts via nnfolder...done
Reading active file via nndraft...done
Checking new news...done
Load-path shadows:
None found.
Features:
(shadow emacsbug tabulated-list gnus-html gnus-dup mule-util sort
gnus-cite smiley ansi-color mail-extr gnus-bcklg gnus-async qp gnus-ml
re-builder multi-isearch nndraft nnmh nndoc utf-7 rfc2104 nnagent nnml
nnimap utf7 nnfolder parse-time rot13 netrc network-stream gnus-agent
gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu
mml2015 mm-view mml-smime smime dig nntp gnus-cache offlineimap
google-weather url-cache google-maps google-maps-static
google-maps-geocode google-maps-base json pcmpl-ssh executable pcomplete
jabber jabber-libnotify dbus jabber-awesome jabber-osd jabber-wmii
jabber-xmessage jabber-festival jabber-sawfish jabber-ratpoison
jabber-screen jabber-socks5 jabber-ft-server jabber-si-server
jabber-ft-client jabber-ft-common jabber-si-client jabber-si-common
jabber-feature-neg jabber-truncate jabber-time jabber-autoaway
jabber-vcard-avatars jabber-chatstates jabber-events jabber-vcard
jabber-avatar jabber-activity jabber-watch jabber-modeline
jabber-ahc-presence jabber-ahc jabber-version jabber-ourversion
jabber-muc-nick-completion hippie-exp comint ring jabber-browse
jabber-search jabber-register jabber-roster jabber-presence jabber-muc
jabber-muc-nick-coloring hexrgb jabber-newdisco jabber-widget
jabber-disco jabber-chat jabber-history jabber-chatbuffer jabber-alert
jabber-iq jabber-core jabber-console sgml-mode ewoc jabber-keymap
jabber-sasl sasl sasl-anonymous sasl-login sasl-plain fsm jabber-logon
jabber-conn srv dns starttls tls jabber-xml xml jabber-menu
jabber-autoloads jabber-util epa-file epa derived epg epg-config sieve
sieve-mode sieve-manage nnir gnus-sum gnus-group mm-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie url-util
url-parse auth-source eieio byte-opt bytecomp byte-compile cconv
macroexp assoc password-cache url-vars mailcap gnus-undo nnmail
mail-source gnus-start gnus-spec gnus-int gnus-range message format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win gnus
gnus-ems nnoo nnheader gnus-util time-date mm-util mail-prsvr mail-utils
help-mode view pcase advice advice-preload pager w3m-search w3m help-fns
browse-url doc-view easymenu jka-compr dired regexp-opt image-mode
timezone w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon
w3m-image w3m-proc w3m-util wid-edit w3m-wget server easy-mmode cl
edmacro kmacro paren tooltip ediff-hook vc-hooks lisp-float-type mwheel
dos-w32 disp-table ls-lisp w32-win w32-vars tool-bar dnd fontset image
fringe lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mouse 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 button faces cus-face files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process multi-tty emacs)
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Wed, 08 Jun 2011 23:41:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 8825 <at> debbugs.gnu.org (full text, mbox):
> I tried the simple test specified in `gnutls.el':
>
> (require 'gnutls)
> (open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
>
> Debugger entered--Lisp error: (void-function gnutls-boot)
> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
[...etc...]
That's weird. I have a build from the trunk, and evaling the lines
above gets me a message
gnutls.c: [1] (Emacs) GnuTLS library loaded: libgnutls-26.dll
and a tls-buffer buffer with
* OK IMAP4 ready
In your case, does (require 'gnutls) generate the "library loaded" message?
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Thu, 09 Jun 2011 07:39:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 8825 <at> debbugs.gnu.org (full text, mbox):
> From: Juanma Barranquero <lekktu <at> gmail.com>
> Date: Thu, 9 Jun 2011 01:39:57 +0200
> Cc: 8825 <at> debbugs.gnu.org
>
> > I tried the simple test specified in `gnutls.el':
> >
> > (require 'gnutls)
> > (open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
> >
> > Debugger entered--Lisp error: (void-function gnutls-boot)
> > gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
> [...etc...]
>
> That's weird. I have a build from the trunk, and evaling the lines
> above gets me a message
>
> gnutls.c: [1] (Emacs) GnuTLS library loaded: libgnutls-26.dll
>
> and a tls-buffer buffer with
>
> * OK IMAP4 ready
Is this your own build or Sean's build? If the former, perhaps there
was some problem with Sean's binaries.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Thu, 09 Jun 2011 09:45:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Thu, Jun 9, 2011 at 09:38, Eli Zaretskii <eliz <at> gnu.org> wrote:
> Is this your own build or Sean's build? If the former, perhaps there
> was some problem with Sean's binaries.
My own.
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org
:
bug#8825
; Package
emacs
.
(Thu, 09 Jun 2011 16:15:03 GMT)
Full text and
rfc822 format available.
Message #17 received at submit <at> debbugs.gnu.org (full text, mbox):
On Wed, 08 Jun 2011 17:48:00 -0400 nyc4bos <at> aol.com wrote:
n> [Aside: Hopefully, we will continue to be able to use the external gnutls-cli
n> if we wish when `(require 'gnutls)' is NOT specified (or a variable to
n> the same effect) even when Emacs 24.1 is released. Thanks.]
I'm not sure if that's a good idea. We've had many, many reports over
the years of I/O and stability problems with that setup in Gnus
(especially on W32). I'm not strongly opposed to it, but think it's
counterproductive in the long run. `gnutls-cli' is just a simple
wrapper around GnuTLS, so the Emacs support for GnuTLS should be fixed
if it's missing features `gnutls-cli' has.
Can you please follow up about this on emacs-devel? It's worth a
discussion there; within this bug I fear many people would miss it.
Ted
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Fri, 10 Jun 2011 20:38:02 GMT)
Full text and
rfc822 format available.
Message #20 received at submit <at> debbugs.gnu.org (full text, mbox):
nyc4bos <at> aol.com writes:
I have the DLL libgnutls-26.dll in my PATH as well as in `exec-path`.
Does the `26' refer to the version? The binary is built against
gnutls.h of version 2.10.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sat, 11 Jun 2011 01:18:01 GMT)
Full text and
rfc822 format available.
Message #23 received at 8825 <at> debbugs.gnu.org (full text, mbox):
(second try to post this, Gmane ate the first one)
On Wed, 08 Jun 2011 17:48:00 -0400 nyc4bos <at> aol.com wrote:
n> [Aside: Hopefully, we will continue to be able to use the external gnutls-cli
n> if we wish when `(require 'gnutls)' is NOT specified (or a variable to
n> the same effect) even when Emacs 24.1 is released. Thanks.]
I'm not sure if that's a good idea. We've had many, many reports over
the years of I/O and stability problems with that setup in Gnus
(especially on W32). I'm not strongly opposed to it, but think it's
counterproductive in the long run. `gnutls-cli' is just a simple
wrapper around GnuTLS, so the Emacs support for GnuTLS should be fixed
if it's missing features `gnutls-cli' has.
Can you please follow up about this on emacs-devel? It's worth a
discussion there; within this bug I fear many people would miss it.
Ted
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Tue, 14 Jun 2011 23:34:02 GMT)
Full text and
rfc822 format available.
Message #26 received at submit <at> debbugs.gnu.org (full text, mbox):
Sean Sieger <sean.sieger <at> gmail.com> writes:
> nyc4bos <at> aol.com writes:
>
> I have the DLL libgnutls-26.dll in my PATH as well as in `exec-path`.
>
> Does the `26' refer to the version? The binary is built against
> gnutls.h of version 2.10.
This DLL is from gnutls-2.10.1.zip which was obtained from
http://josefsson.org/gnutls4win. This is the location you are
sent to when you click on the "windows" link on the page
http://www.gnu.org/software/gnutls.
Inside the ZIP file, among other files, is libgnutls-26.dll.
I also tried the previous version, gnutls-2.10.0.zip, which is the
one I think you said you had, with the same result.
Both gnutls.h files from 2.10.1 and 2.10.0 were identical except
for:
#define GNUTLS_VERSION
#define GNUTLS_VERSION_PATCH
#define GNUTLS_VERSION_NUMBER
I'm begining to think that the problem is in the way that gnutls
is called and/or its error handling.
When I try the test from the *scratch* buffer:
(require 'gnutls)
gnutls
(open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
I get the *Backtrace* error:
Debugger entered--Lisp error: (void-function gnutls-boot)
gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
gnutls-negotiate(:process #<process tls> :type gnutls-x509pki :hostname "imap.aim.com")
open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
eval((open-gnutls-stream "tls-" "tls-buffer" "imap.aim.com" "imaps") nil)
eval-last-sexp-1(t)
eval-last-sexp(t)
eval-print-last-sexp()
call-interactively(eval-print-last-sexp nil nil)
recursive-edit()
debug(error (void-function gnutls-boot))
But I do get the 'tls-buffer' and a TCP ESTABLISHED connection:
I did get in `process-list':
tls open tls-buffer -- (network connection to imap.aim.com)
I also got an ESTALISHED TCP connection:
TCP XXX.XXX.XXX.XXX:4151 205.188.58.10:993 ESTABLISHED
The `tls-buffer' is empty for a while and then when it timesout it
contains:
Process tls connection broken by remote peer
Gnus gets the same "void: gnutls-boot" error:
Opening nnimap server on aol...
Opening connection to imap.aim.com via tls...
Unable to open server nnimap+aol due to: Symbol's function definition is void: gnutls-boot
Opening nnimap server on aol...failed:
Is it the handshaking that is failing?
I turned on debugging '(setq gnutls-log-level 1)' but got no debugging
information in the *Messages* buffer.
Juanma said he successfully built Emacs 24 on Windows and was able
to test builtin gnutls.
Juanma:
Are you using the libgnutls-26.dll in gnutls-2.10.1.zip (or
gnutls-2.10.0.zip) from http://josefsson.org/gnutls4win?
Are you linking, explicitly, to a gnutls library when building?
Does libgnutls-26.dll show up when you do the equivalent of ldd
on the emacs.exe binary?
Sean's build is implicitly/dynamically using libgnutls-26.dll.
I believe he only has the gnutls.h file and not any other file
from the gnutls-2.10.0.zip archive.
The variable `dynamic-library-alist' shows:
Value: ((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
(png "libpng14-14.dll" "libpng14.dll")
(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
(tiff "libtiff3.dll" "libtiff.dll")
(gif "giflib4.dll" "libungif4.dll" "libungif.dll")
(svg "librsvg-2-2.dll")
(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
(glib "libglib-2.0-0.dll")
(gobject "libgobject-2.0-0.dll")
(gnutls "libgnutls-26.dll"))
I'm on Windows XP, if it matters.
Thanks.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Wed, 15 Jun 2011 00:50:03 GMT)
Full text and
rfc822 format available.
Message #29 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Wed, Jun 15, 2011 at 01:28, <nyc4bos <at> aol.com> wrote:
> Juanma:
>
> Are you using the libgnutls-26.dll in gnutls-2.10.1.zip (or
> gnutls-2.10.0.zip) from http://josefsson.org/gnutls4win?
The one in gnutls-2.10.1.zip, from that URL.
> Are you linking, explicitly, to a gnutls library when building?
No.
> Does libgnutls-26.dll show up when you do the equivalent of ldd
> on the emacs.exe binary?
On startup, no. Once I invoke GnuTLS, the following libraries get loaded:
libgcrypt-11.dll
libgnutls-26.dll
libgpg-error-0.dll
libtasn1-3.dll
> Sean's build is implicitly/dynamically using libgnutls-26.dll.
Yes, I know.
> I believe he only has the gnutls.h file and not any other file
> from the gnutls-2.10.0.zip archive.
I think gnutls/gnutls.h and gnutls/compat.h are required.
> The variable `dynamic-library-alist' shows:
> (gnutls "libgnutls-26.dll"))
Yes, but note that does not mean that libgnutls-26.dll is the only
required DLL. It means that it is the only one that Emacs tries to
load dynamically. Any DLLs required by libgnutls-26.dll have to be in
the path, too.
> I'm on Windows XP, if it matters.
It shouldn't, though I'm not ready to bet on it ;-)
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Wed, 15 Jun 2011 15:20:03 GMT)
Full text and
rfc822 format available.
Message #32 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Tue, 14 Jun 2011 19:28:37 -0400 nyc4bos <at> aol.com wrote:
n> I'm begining to think that the problem is in the way that gnutls
n> is called and/or its error handling.
n> When I try the test from the *scratch* buffer:
n> (require 'gnutls)
n> gnutls
n> (open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
n> I get the *Backtrace* error:
n> Debugger entered--Lisp error: (void-function gnutls-boot)
n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
n> gnutls-negotiate(:process #<process tls> :type gnutls-x509pki :hostname "imap.aim.com")
n> open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
n> eval((open-gnutls-stream "tls-" "tls-buffer" "imap.aim.com" "imaps") nil)
n> eval-last-sexp-1(t)
n> eval-last-sexp(t)
n> eval-print-last-sexp()
n> call-interactively(eval-print-last-sexp nil nil)
n> recursive-edit()
n> debug(error (void-function gnutls-boot))
n> But I do get the 'tls-buffer' and a TCP ESTABLISHED connection:
n> I did get in `process-list':
n> tls open tls-buffer -- (network connection to imap.aim.com)
n> I also got an ESTALISHED TCP connection:
n> TCP XXX.XXX.XXX.XXX:4151 205.188.58.10:993 ESTABLISHED
This is not a GnuTLS bug, but a missing `gnutls-boot'. I think that
will only happen if Emacs is compiled without the --with-gnutls
configure option.
Ted
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Wed, 15 Jun 2011 21:41:02 GMT)
Full text and
rfc822 format available.
Message #35 received at submit <at> debbugs.gnu.org (full text, mbox):
Ted Zlatanov <tzz <at> lifelogs.com> writes:
> On Tue, 14 Jun 2011 19:28:37 -0400 nyc4bos <at> aol.com wrote:
>
> n> I'm begining to think that the problem is in the way that gnutls
> n> is called and/or its error handling.
>
> n> When I try the test from the *scratch* buffer:
>
> n> (require 'gnutls)
> n> gnutls
> n> (open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps")
>
> n> I get the *Backtrace* error:
>
> n> Debugger entered--Lisp error: (void-function gnutls-boot)
> n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
> n> gnutls-negotiate(:process #<process tls> :type gnutls-x509pki :hostname "imap.aim.com")
> n> open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
> n> eval((open-gnutls-stream "tls-" "tls-buffer" "imap.aim.com" "imaps") nil)
> n> eval-last-sexp-1(t)
> n> eval-last-sexp(t)
> n> eval-print-last-sexp()
> n> call-interactively(eval-print-last-sexp nil nil)
> n> recursive-edit()
> n> debug(error (void-function gnutls-boot))
>
> n> But I do get the 'tls-buffer' and a TCP ESTABLISHED connection:
>
> n> I did get in `process-list':
>
> n> tls open tls-buffer -- (network connection to imap.aim.com)
>
> n> I also got an ESTALISHED TCP connection:
>
> n> TCP XXX.XXX.XXX.XXX:4151 205.188.58.10:993 ESTABLISHED
>
> This is not a GnuTLS bug, but a missing `gnutls-boot'. I think that
> will only happen if Emacs is compiled without the --with-gnutls
> configure option.
Sean,
Could you build Emacs with the "--with-gnutls" configure option?
I don't seem to see it specified in your build:
In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
of 2011-06-13 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.5) --no-opt --cflags -Ic:/build/include'
Thanks.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Fri, 17 Jun 2011 21:43:01 GMT)
Full text and
rfc822 format available.
Message #38 received at submit <at> debbugs.gnu.org (full text, mbox):
nyc4bos <at> aol.com writes:
Ted Zlatanov <tzz <at> lifelogs.com> writes:
> This is not a GnuTLS bug, but a missing `gnutls-boot'. I think that
> will only happen if Emacs is compiled without the --with-gnutls
> configure option.
Sean,
Could you build Emacs with the "--with-gnutls" configure option?
I don't seem to see it specified in your build:
In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
of 2011-06-13 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.5) --no-opt --cflags
-Ic:/build/include'
Thanks.
from nyc4bos <at> aol.com
to Sean Sieger <sean.sieger <at> gmail.com>
date Fri, Jun 17, 2011 at 2:34 PM
subject Re: bug#8825: 24.0.50; Problem with builtin gnutls on
Windows
mailed-by aol.com
hide details 2:34 PM (3 hours ago)
Hi Sean,
Could you compile Emacs with the "--with-gnutls" configure
option?
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8825#35
Thanks for your efforts!
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Fri, 17 Jun 2011 22:01:01 GMT)
Full text and
rfc822 format available.
Message #41 received at submit <at> debbugs.gnu.org (full text, mbox):
Could you compile Emacs with the "--with-gnutls" configure
option?
Emacs-24 supports GnuTLS by default; runtime is different, the GnuTLS
binaries are needed.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sat, 18 Jun 2011 16:51:02 GMT)
Full text and
rfc822 format available.
Message #44 received at submit <at> debbugs.gnu.org (full text, mbox):
Sean Sieger <sean.sieger <at> gmail.com> writes:
> Could you compile Emacs with the "--with-gnutls" configure
> option?
>
> Emacs-24 supports GnuTLS by default; runtime is different, the GnuTLS
> binaries are needed.
I have the GnuTLS binaries and they are in my PATH and Emacs'
`exec-path'.
Ted Zlatanov <tzz <at> lifelogs.com> writes:
> On Tue, 14 Jun 2011 19:28:37 -0400 nyc4bos <at> aol.com wrote:
> This is not a GnuTLS bug, but a missing `gnutls-boot'. I think that
> will only happen if Emacs is compiled without the --with-gnutls
> configure option.
Ted seems to indicate that "--with-gnutls" is necessary.
What do I need to do to be able to use the builtin GnuTLS in
Emacs?
Can anyone tell me how do I debug this and/or how to pass along
the necessary information needed to track this down?
The steps I followed are in my previous post.
Here is the *Backtrace* error again:
> n> I get the *Backtrace* error:
>
> n> Debugger entered--Lisp error: (void-function gnutls-boot)
> n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
> n> gnutls-negotiate(:process #<process tls> :type gnutls-x509pki :hostname "imap.aim.com")
> n> open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
> n> eval((open-gnutls-stream "tls-" "tls-buffer" "imap.aim.com" "imaps") nil)
> n> eval-last-sexp-1(t)
> n> eval-last-sexp(t)
> n> eval-print-last-sexp()
> n> call-interactively(eval-print-last-sexp nil nil)
> n> recursive-edit()
> n> debug(error (void-function gnutls-boot))
Thanks.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 00:15:02 GMT)
Full text and
rfc822 format available.
Message #47 received at 8825 <at> debbugs.gnu.org (full text, mbox):
> Ted seems to indicate that "--with-gnutls" is necessary.
Not on Windows. configure.bat tests for gnutls/gnutls.h and enables
GnuTLS if found. There's the option --without-gnutls to disable that
check.
>> n> Debugger entered--Lisp error: (void-function gnutls-boot)
>> n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
That backtrace means that the executable you are using wasn't compiled
with GnuTLS support. Apparently Sean's binary tarballs (including
emacs-20110613-bin-i386.zip) are built without it.
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 02:27:01 GMT)
Full text and
rfc822 format available.
Message #50 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Sun, 19 Jun 2011 02:13:38 +0200 Juanma Barranquero <lekktu <at> gmail.com> wrote:
>> Ted seems to indicate that "--with-gnutls" is necessary.
JB> Not on Windows. configure.bat tests for gnutls/gnutls.h and enables
JB> GnuTLS if found. There's the option --without-gnutls to disable that
JB> check.
n> Debugger entered--Lisp error: (void-function gnutls-boot)
n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL"
n> :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles
n> nil :keylist nil :verify-flags nil :verify-error nil
n> :verify-hostname-error nil :callbacks nil))
JB> That backtrace means that the executable you are using wasn't compiled
JB> with GnuTLS support. Apparently Sean's binary tarballs (including
JB> emacs-20110613-bin-i386.zip) are built without it.
Sorry if I've confused anyone. I don't use W32 Emacs builds so I'm not
too knowledgeable about DLLs and bindings. I am 100% sure, however,
that if `gnutls-boot' is a void function, this means that Emacs was
compiled without HAVE_GNUTLS. That's what Juanma is saying too.
My understanding is that all the DLL function calls happen when calling
the GnuTLS API, but `gnutls-boot' is in src/gnutls.c and thus can't be
missing because of a DLL. `gnutls-boot' will in turns call the GnuTLS
API, which are all the wrapped fn_gnutls_* functions,
e.g. `fn_gnutls_init'. *Those* functions are in the GnuTLS DLLs.
I hope that's helpful.
Ted
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 03:09:02 GMT)
Full text and
rfc822 format available.
Message #53 received at 8825 <at> debbugs.gnu.org (full text, mbox):
2011/6/19 Ted Zlatanov <tzz <at> lifelogs.com>:
> I am 100% sure, however,
> that if `gnutls-boot' is a void function, this means that Emacs was
> compiled without HAVE_GNUTLS. That's what Juanma is saying too.
Yes, that's what's happening here. I compiled the trunk without GnuTLS
support and I get the exact same error as the OP:
Debugger entered--Lisp error: (void-function gnutls-boot)
gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL"
:hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil
:keylist nil :verify-flags nil :verify-error nil
:verify-hostname-error nil :callbacks nil))
gnutls-negotiate(:process #<process tls> :type gnutls-x509pki
:hostname "imap.aim.com")
open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
eval((open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps") nil)
eval-last-sexp-1(nil)
eval-last-sexp(nil)
call-interactively(eval-last-sexp nil nil)
vs. the following error when the DLL is not found:
Debugger entered--Lisp error: (error "GnuTLS not available")
gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL"
:hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil
:keylist nil :verify-flags nil :verify-error nil
:verify-hostname-error nil :callbacks nil))
gnutls-negotiate(:process #<process tls> :type gnutls-x509pki
:hostname "imap.aim.com")
open-gnutls-stream("tls" "tls-buffer" "imap.aim.com" "imaps")
eval((open-gnutls-stream "tls" "tls-buffer" "imap.aim.com" "imaps") nil)
eval-last-sexp-1(nil)
eval-last-sexp(nil)
call-interactively(eval-last-sexp nil nil)
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 11:01:02 GMT)
Full text and
rfc822 format available.
Message #56 received at submit <at> debbugs.gnu.org (full text, mbox):
Juanma Barranquero <lekktu <at> gmail.com> writes:
Yes, that's what's happening here. I compiled the trunk without GnuTLS
support and I get the exact same error as the OP:
So is it not enough to have the file gnutls.h in the include path?
Because I can assure you it has been since you asked me to put it there
months ago. I don't use GnuTLS so I have no idea about its
functionality. Thanks for the practical help, Juanma. Though, I still
don't know where to go from here.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 11:25:01 GMT)
Full text and
rfc822 format available.
Message #59 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Sun, Jun 19, 2011 at 12:59, Sean Sieger <sean.sieger <at> gmail.com> wrote:
> So is it not enough to have the file gnutls.h in the include path?
gnutls.c does not include <gnutls.h>, but <gnutls/gnutls.h>, so you
need to have in the include path a subdirectory gnutls with the
approppriate .h files. For example, what I do is to install GnuTLS
somewhere, let's say C:\soft\gnutls-2.10.1, and then add to my Emacs
include directory a link (a junction) to
C:\soft\gnutls-2.10.1\include\gnutls:
C:\emacs\include> dir
25/04/2011 15:58 <JUNCTION> gnutls
[c:\soft\GnuTLS-2.10.1\include\gnutls]
05/11/2009 15:39 <DIR> X11
24/10/2005 21:22 16.055 gif_lib.h
04/05/2006 21:23 4.902 iconv.h
30/11/2002 19:39 1.727 jconfig.h
18/10/1997 21:59 13.936 jerror.h
12/12/2002 21:29 14.330 jmorecfg.h
21/02/1998 20:48 46.205 jpeglib.h
17/08/2010 16:38 118.986 png.h
17/08/2010 16:38 46.138 pngconf.h
25/10/2004 00:07 4.959 simx.h
27/12/2005 13:28 33.725 tiff.h
23/03/2006 23:31 2.968 tiffconf.h
28/03/2006 10:35 23.216 tiffio.h
23/03/2006 16:46 410 tiffvers.h
20/08/2010 11:18 14.962 zconf.h
20/08/2010 11:18 78.468 zlib.h
but of course you can simply copy gnutls.h and compat.h to a suitable
gnutls directory, and then add the parent of it to the include path.
In any case, take a look at nt/config.log. If you didn't use
--without-gnutls, and configure.bat was unable to find GnuTLS, you'll
see
junk.c:1:28: fatal error: gnutls/gnutls.h: No such file or directory
compilation terminated.
The failed program was:
#include "gnutls/gnutls.h"
main (){}
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 11:27:02 GMT)
Full text and
rfc822 format available.
Message #62 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Sun, Jun 19, 2011 at 13:24, Juanma Barranquero <lekktu <at> gmail.com> wrote:
> but of course you can simply copy gnutls.h and compat.h to a suitable
> gnutls directory, and then add the parent of it to the include path.
Or, obviously, add C:\soft\GnuTLS-2.10.1\include (<-- or whatever) to
the include path, if you don't want to copy it.
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 12:40:03 GMT)
Full text and
rfc822 format available.
Message #65 received at submit <at> debbugs.gnu.org (full text, mbox):
> but of course you can simply copy gnutls.h and compat.h to a suitable
> gnutls directory, and then add the parent of it to the include path.
Or, obviously, add C:\soft\GnuTLS-2.10.1\include (<-- or whatever) to
the include path, if you don't want to copy it.
Thank you, Juanma. It'll be done tomorrow. Sorry for the confusion.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Sun, 19 Jun 2011 14:57:01 GMT)
Full text and
rfc822 format available.
Message #68 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Sun, 19 Jun 2011 08:39:40 -0400 Sean Sieger <sean.sieger <at> gmail.com> wrote:
SS> Thank you, Juanma. It'll be done tomorrow. Sorry for the confusion.
Thanks for working on this, Sean.
Ted
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Mon, 20 Jun 2011 17:12:01 GMT)
Full text and
rfc822 format available.
Message #71 received at submit <at> debbugs.gnu.org (full text, mbox):
Ted Zlatanov <tzz <at> lifelogs.com> writes:
Thanks for working on this, Sean.
Yep.
Anyone interested, please test that GnuTLS is fully-functioning with the
binaries that I've uploaded today.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Mon, 20 Jun 2011 20:12:02 GMT)
Full text and
rfc822 format available.
Message #74 received at 8825 <at> debbugs.gnu.org (full text, mbox):
> Anyone interested, please test that GnuTLS is fully-functioning with the
> binaries that I've uploaded today.
The OP's test case now works, yes.
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Mon, 20 Jun 2011 22:17:02 GMT)
Full text and
rfc822 format available.
Message #77 received at submit <at> debbugs.gnu.org (full text, mbox):
Juanma Barranquero <lekktu <at> gmail.com> writes:
The OP's test case now works, yes.
Thanks, Juanma.
Reply sent
to
Juanma Barranquero <lekktu <at> gmail.com>
:
You have taken responsibility.
(Mon, 20 Jun 2011 22:50:04 GMT)
Full text and
rfc822 format available.
Notification sent
to
nyc4bos <at> aol.com
:
bug acknowledged by developer.
(Mon, 20 Jun 2011 22:50:04 GMT)
Full text and
rfc822 format available.
Message #82 received at 8825-done <at> debbugs.gnu.org (full text, mbox):
> The OP's test case now works, yes.
I'm closing this bug, BTW.
Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Mon, 20 Jun 2011 23:26:01 GMT)
Full text and
rfc822 format available.
Message #85 received at 8825 <at> debbugs.gnu.org (full text, mbox):
Juanma Barranquero <lekktu <at> gmail.com> writes:
>> Ted seems to indicate that "--with-gnutls" is necessary.
>
> Not on Windows. configure.bat tests for gnutls/gnutls.h and enables
> GnuTLS if found. There's the option --without-gnutls to disable that
> check.
>
>>> n> Debugger entered--Lisp error: (void-function gnutls-boot)
>>> n> gnutls-boot(#<process tls> gnutls-x509pki (:priority "NORMAL" :hostname "imap.aim.com" :loglevel 0 :trustfiles nil :crlfiles nil :keylist nil :verify-flags nil :verify-error nil :verify-hostname-error nil :callbacks nil))
>
> That backtrace means that the executable you are using wasn't compiled
> with GnuTLS support. Apparently Sean's binary tarballs (including
> emacs-20110613-bin-i386.zip) are built without it.
Sean's build of emacs-20110620-bin-i386.zip now has the GnuTLS builtin
which is working fine.
(Now I just need to fix the errors/warnings:
imap.aim.com certificate could not be verified.
gnutls.c: [1] (Emacs) certificate signer was not found: imap.aim.com
gnutls.c: [1] (Emacs) certificate validation failed: imap.aim.com
on Windows)
Thanks to all, especially Sean.
>
> Juanma
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8825
; Package
emacs
.
(Tue, 21 Jun 2011 12:03:02 GMT)
Full text and
rfc822 format available.
Message #88 received at 8825 <at> debbugs.gnu.org (full text, mbox):
On Mon, 20 Jun 2011 19:22:02 -0400 nyc4bos <at> aol.com wrote:
n> Sean's build of emacs-20110620-bin-i386.zip now has the GnuTLS builtin
n> which is working fine.
n> (Now I just need to fix the errors/warnings:
n> imap.aim.com certificate could not be verified.
n> gnutls.c: [1] (Emacs) certificate signer was not found: imap.aim.com
n> gnutls.c: [1] (Emacs) certificate validation failed: imap.aim.com
n> on Windows)
I don't know if you want to open a new bug for this, but it's definitely
fixable. See gnutls.el for the current defaults for the certificate
bundle (Debian/Ubuntu and RedHat are the only cases now, IIRC).
Ted
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 20 Jul 2011 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 13 years and 342 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.