From: Eli Zaretskii <eliz@gnu.org>
To: emacs@kosowsky.org
Cc: tzz@lifelogs.com, 15648@debbugs.gnu.org
Subject: bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely, bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely
Date: Wed, 23 Oct 2013 18:16:33 +0300 [thread overview]
Message-ID: <83wql4hvam.fsf@gnu.org> (raw)
In-Reply-To: <21095.19949.639350.970770@consult.pretender>
> From: <emacs@kosowsky.org>
> Date: Wed, 23 Oct 2013 00:17:49 -0400
> Cc: Ted Zlatanov <tzz@lifelogs.com>, 15648@debbugs.gnu.org
>
> Stepping through the *Lisp* code shows that the file paths are all
> properly parsed when cygwin-mount is loaded/activated. Indeed,
> file-exists-p properly recognizes the cygwin path
> "/usr/ssl/certs/ca-bundle.crt" and returns nil on the other paths that
> don't exist in a standard Cygwin setup.
>
> Note that if cygwin-mount is not loaded/activated, then
> "/usr/ssl/certs/ca-bundle.crt" (along with the other list elements)
> fails the file-exists-p test in gnutls-negotiate so that 'trustfiles'
> gets set to nil which explains why it doesn't crash in the case when
> cygwin-mount is not used since trivially 'trustfiles' has no paths
> associated with it.
>
> So, basically, we have the following Catch-22. If cygwin-mount is not
> loaded/activated, then the cert location for Cygwin is never found. If
> cygwin-mount is activated then it causes a crash. The result being
> that in Windows, no certs are ever loaded when using the default
> definition of gnutls-trustfiles
>
> Presumably the problem is that the C-code doesn't know how to deal with
> a Cygwin (*nix) style path that has been properly recognized by the
> Lisp code (via cygwin-mount).
The native Windows build of Emacs certainly doesn't understand the
magic of Cygwin mounts. How can it? The cygwin-mount package cannot
possibly work for external DLLs that were developed for native Windows
builds of programs which know nothing about Lisp and Emacs file I/O.
The problem is almost certainly that the GnuTLS code was assured that
a file exists (because Emacs used cygwin-mount), but then the file
could not be reached. I can understand why GnuTLS becomes confused.
But since you didn't provide any C-level backtraces, we cannot know
where that code is, and thus cannot fix it.
> It seems like there are two potential solutions:
> 1. Use Windows-style paths in the definition of gnutls-trustfiles
> (this should work in Linux too, since
> "C:/usr/ssl/certs/ca-bundle.crt" will generally fail the
> file-exists-p test)
>
> 2. Add cygwin-mount functionality to the C-code so that it can parse
> cygwin (Unix) style paths.
3. Do not use cygwin-mount in conjunction with the native Windows
build of Emacs.
> In any case, I imagine the C-code crashes because it sees a Unix-style
> path while expecting a Windows style path...
Windows supports Unix-style file names. The problem is that the file
"/usr/ssl/certs/ca-bundle.crt" cannot be found by starting from the
root directory of the current drive.
> that being said the C-code should be better behaved than that... at
> a minimum the code should check to make sure the certificate file
> path is well-formed and exists.
See above: unless you present the backtrace from the crash, no one can
know where the offending code is, or what it does wrong. Please
provide that data.
next prev parent reply other threads:[~2013-10-23 15:16 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-18 18:29 bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely emacs
2013-10-18 19:38 ` Glenn Morris
2013-10-20 20:24 ` emacs
2013-10-21 14:22 ` bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely, " Ted Zlatanov
2013-10-21 19:30 ` emacs
2013-10-22 13:27 ` Ted Zlatanov
2013-10-22 15:23 ` emacs
2013-10-22 15:41 ` emacs
2013-10-22 19:10 ` emacs
2013-10-22 20:06 ` Ted Zlatanov
2013-10-22 20:22 ` emacs
2013-10-22 20:34 ` Eli Zaretskii
2013-10-22 22:27 ` emacs
2013-10-23 2:51 ` Eli Zaretskii
2013-10-23 4:17 ` emacs
2013-10-23 14:52 ` Ted Zlatanov
2013-10-23 17:25 ` emacs
2013-10-23 18:07 ` Eli Zaretskii
2013-10-23 18:58 ` Ted Zlatanov
2013-10-23 23:45 ` emacs
2013-10-24 0:13 ` emacs
2013-10-24 10:59 ` Ted Zlatanov
2013-10-24 14:10 ` emacs
2013-10-24 15:48 ` Ted Zlatanov
2013-10-24 17:02 ` emacs
2013-10-24 17:57 ` Stefan Monnier
2013-10-24 18:42 ` emacs
2013-10-25 0:59 ` Stefan Monnier
2013-10-25 13:59 ` emacs
2013-10-26 1:52 ` Stefan Monnier
2013-10-29 5:13 ` emacs
2013-11-03 11:42 ` Ted Zlatanov
2013-11-03 15:12 ` emacs
2013-11-03 17:32 ` Eli Zaretskii
2013-11-03 19:12 ` emacs
2013-11-04 16:28 ` Ted Zlatanov
2013-11-04 16:58 ` Eli Zaretskii
2013-11-11 19:12 ` emacs
2013-11-11 19:42 ` Ted Zlatanov
2013-11-11 20:00 ` emacs
2013-11-11 20:00 ` Achim Gratz
2013-11-11 23:58 ` Ted Zlatanov
2013-11-12 0:45 ` emacs
2013-11-11 20:06 ` Eli Zaretskii
2013-11-11 21:53 ` emacs
2013-11-12 3:56 ` Eli Zaretskii
2013-11-12 15:19 ` emacs
2013-11-12 17:42 ` Eli Zaretskii
[not found] ` <<83ppq51pq8.fsf@gnu.org>
2013-11-12 18:08 ` Drew Adams
2013-11-03 21:37 ` Stefan Monnier
2013-10-23 15:16 ` Eli Zaretskii [this message]
2013-10-23 17:12 ` bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely, " emacs
2013-10-23 18:00 ` Eli Zaretskii
2013-10-23 19:49 ` emacs
2013-10-24 2:46 ` Eli Zaretskii
2013-10-25 3:17 ` emacs
2013-10-25 14:09 ` Eli Zaretskii
2013-10-25 15:38 ` Ted Zlatanov
2013-10-25 18:37 ` Eli Zaretskii
2013-11-03 17:30 ` Eli Zaretskii
2013-11-04 16:44 ` Ted Zlatanov
2013-11-04 17:06 ` Eli Zaretskii
2013-11-04 18:05 ` Ted Zlatanov
2013-11-04 22:14 ` emacs
2013-11-05 2:30 ` Ted Zlatanov
2013-11-05 23:11 ` emacs
2013-11-05 23:16 ` Alp Aker
2013-11-05 23:54 ` emacs
2013-11-11 15:53 ` Ted Zlatanov
2013-11-11 19:40 ` emacs
2013-11-11 20:11 ` Eli Zaretskii
2013-11-11 21:56 ` emacs
2013-11-12 3:58 ` Eli Zaretskii
2013-11-12 15:23 ` emacs
2013-11-06 3:51 ` Eli Zaretskii
2013-11-06 5:45 ` emacs
2013-10-22 15:43 ` bug#15648: 24.2.50; gnutls SSL connection to IMAP server causes emacs to crash completely, " Eli Zaretskii
2013-10-22 20:03 ` Ted Zlatanov
2013-10-22 20:35 ` Andy Moreton
2013-10-22 20:45 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83wql4hvam.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=15648@debbugs.gnu.org \
--cc=emacs@kosowsky.org \
--cc=tzz@lifelogs.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).