From: Alain Schneble <a.s@realize.ch>
To: Eli Zaretskii <eliz@gnu.org>
Cc: larsi@gnus.org, j_l_domenech@yahoo.com, 22789@debbugs.gnu.org
Subject: bug#22789: 25.1.50; In last master build https connections stop working
Date: Sat, 5 Mar 2016 19:27:09 +0100 [thread overview]
Message-ID: <86egbo232a.fsf@realize.ch> (raw)
In-Reply-To: <83k2lhxria.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 05 Mar 2016 10:23:25 +0200")
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Alain Schneble <a.s@realize.ch>
>> CC: <larsi@gnus.org>, <j_l_domenech@yahoo.com>, <22789@debbugs.gnu.org>
>> Date: Fri, 4 Mar 2016 22:36:56 +0100
>>
>> I have the impression that GnuTLS doesn't like it too much if we start
>> retrying the handshake many times before the socket is connected. At
>> least on MS-Windows. In nearly all of the cases of loading websites
>> with around 20 images, I observe arbitrary failures of
>> gnutls_try_handshake which usually end up with -10
>> GNUTLS_E_INVALID_SESSION.
>
> I think this warrants a question to GnuTLS developers. We need to
> understand this before we devise a solution. What bothers me is the
> "many times" part -- how many is "too much", and why?
Yes, of course, I agree we have to understand it. I just thought that
maybe the patch would help us in narrowing down the issue further...
And maybe we should wait until somebody else sees the same effects I
described on MS-Windows before asking GnuTLS developers? Did you see
these problems as well?
I should have written "multiple times" not "many times". I just had a
case where for four network processes (get image requests)
gnutls_try_handshake returned for each of these processes -28
GNUTLS_E_AGAIN three times in a row, followed by a single -110
GNUTLS_E_PREMATURE_TERMINATION and then repeatedly by -10
GNUTLS_E_INVALID_SESSION.
> Do you see any
> difference in behavior of sys_write during those many attempts as
> opposed to the first few?
Good point. I'll have to analyze this.
> Also, what URL do you use for testing this?
Because I'm on MS-Windows, I used https://www.microsoft.com :) (it gets
redirected to https://www.microsoft.com/de-ch for me). I currently only
have access to a WLAN not under my control. But the same Website loads
reliably and pretty fast in other web browsers with the same connection.
>> I believe this because the following patch solves the issue on my
>> MS-Windows system: Postponing the handshake until after the socket is
>> connected. Still, I must be honest: I'm in a kind of a trial-and-error
>> mode. I do not really understand all the aspects of the current
>> implementation.
>
> Feel free to ask, I think I can answer any question about the Emacs
> part of this, but probably not about the GnuTLS part -- those we
> should ask on the GnuTLS mailing list.
Ok, thank you! I'll be happy to ask, but I would like to spend some
more time to re-read the code once again and clean up my mind first.
>> Anyway, I think a change in that direction would
>> probably be a good thing. Do you agree? It eliminates all the
>> handshake-retries that would otherwise happen before the socket is
>> connected.
>
> Why is it needed only on Windows? Why does it matter what reason
> causes the failure of a handshake? We need to understand these
> aspects before we consider the solutions.
I'm currently unable to answer these questions. I see that there are
many differencies in Emacs' "platform adaption layer" for w32 vs the
paths for GNU/Linux. And I cannot see if and how the patch I sent could
be related to those differencies. So I follow your advice and will try
to understand the /issue/ first.
>> BTW, `libgnutls-version' evaluates to 30408 on my MS-Windows.
>
> It's 30311 here, but I'm not sure this is a factor. We are talking
> about basic functionality here.
Thanks.
next prev parent reply other threads:[~2016-03-05 18:27 UTC|newest]
Thread overview: 124+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-24 10:26 bug#22789: 25.1.50; In last master build https connections stop working José L. Doménech
2016-02-24 14:00 ` Lars Ingebrigtsen
2016-02-24 16:09 ` José L. Doménech
2016-02-24 18:06 ` Eli Zaretskii
2016-02-24 23:48 ` Lars Ingebrigtsen
2016-02-25 0:02 ` Lars Ingebrigtsen
2016-02-25 1:09 ` Lars Ingebrigtsen
2016-02-25 16:41 ` Eli Zaretskii
2016-02-26 2:29 ` Lars Ingebrigtsen
2016-02-26 9:36 ` Eli Zaretskii
2016-02-27 2:30 ` Lars Ingebrigtsen
2016-02-27 2:43 ` John Wiegley
2016-02-27 3:50 ` Lars Ingebrigtsen
2016-02-27 8:14 ` Eli Zaretskii
2016-02-27 3:49 ` Lars Ingebrigtsen
2016-02-27 8:10 ` Eli Zaretskii
2016-02-27 8:13 ` Eli Zaretskii
2016-02-27 18:05 ` Alain Schneble
2016-02-27 22:38 ` Lars Ingebrigtsen
2016-02-27 23:06 ` Alain Schneble
2016-02-27 23:49 ` Alain Schneble
2016-02-28 3:31 ` Lars Ingebrigtsen
2016-02-28 9:58 ` Alain Schneble
2016-02-28 16:53 ` Eli Zaretskii
2016-02-29 2:37 ` Lars Ingebrigtsen
2016-02-28 3:43 ` Eli Zaretskii
2016-02-28 9:48 ` Alain Schneble
2016-02-28 17:00 ` Eli Zaretskii
2016-02-29 2:49 ` Lars Ingebrigtsen
2016-02-29 3:43 ` Eli Zaretskii
2016-02-29 4:38 ` Lars Ingebrigtsen
2016-02-29 9:55 ` Alain Schneble
2016-02-29 10:03 ` Lars Ingebrigtsen
2016-02-29 17:57 ` Alain Schneble
2016-02-29 18:45 ` Eli Zaretskii
2016-02-29 21:22 ` Lars Ingebrigtsen
2016-03-01 3:35 ` Eli Zaretskii
2016-02-29 23:13 ` Alain Schneble
2016-03-01 0:41 ` Lars Ingebrigtsen
2016-03-01 3:41 ` Eli Zaretskii
2016-03-01 4:29 ` Lars Ingebrigtsen
2016-03-01 4:30 ` Lars Ingebrigtsen
2016-03-01 9:00 ` Andreas Schwab
2016-03-01 14:12 ` Lars Ingebrigtsen
2016-03-01 14:25 ` Alain Schneble
2016-03-01 14:43 ` Lars Ingebrigtsen
2016-03-01 15:59 ` Eli Zaretskii
2016-03-01 16:19 ` Alain Schneble
2016-03-01 17:00 ` Eli Zaretskii
2016-03-01 17:09 ` Alain Schneble
2016-03-01 17:22 ` Eli Zaretskii
2016-03-01 17:55 ` Alain Schneble
2016-03-01 18:13 ` Eli Zaretskii
2016-03-01 16:33 ` Andreas Schwab
2016-03-01 15:53 ` Eli Zaretskii
2016-03-01 15:36 ` Alain Schneble
2016-03-01 16:05 ` Eli Zaretskii
2016-03-01 16:25 ` Alain Schneble
2016-03-04 8:56 ` Eli Zaretskii
2016-03-04 16:55 ` Alain Schneble
2016-03-04 21:36 ` Alain Schneble
2016-03-04 22:33 ` Alain Schneble
2016-03-05 8:23 ` Eli Zaretskii
2016-03-05 18:27 ` Alain Schneble [this message]
2016-03-05 19:21 ` Eli Zaretskii
2016-03-06 22:45 ` Alain Schneble
2016-03-06 23:24 ` Alain Schneble
2016-03-07 8:49 ` Alain Schneble
2016-03-07 16:08 ` Eli Zaretskii
2016-03-07 17:20 ` Alain Schneble
2016-03-07 17:33 ` Eli Zaretskii
2016-03-07 18:03 ` Alain Schneble
2016-03-07 18:10 ` Eli Zaretskii
2016-03-07 18:26 ` Alain Schneble
2016-03-07 16:07 ` Eli Zaretskii
2016-03-07 16:47 ` Alain Schneble
2016-03-07 22:21 ` Alain Schneble
2016-03-08 16:40 ` Eli Zaretskii
2016-03-08 16:43 ` Alain Schneble
2016-03-10 14:45 ` Eli Zaretskii
2016-03-10 14:59 ` Alain Schneble
2016-03-06 9:31 ` Lars Magne Ingebrigtsen
2016-03-06 15:24 ` Eli Zaretskii
2016-03-05 8:46 ` Lars Magne Ingebrigtsen
2016-03-05 18:32 ` Alain Schneble
2016-02-29 21:18 ` Lars Ingebrigtsen
2016-02-29 23:20 ` Alain Schneble
2016-03-01 3:43 ` Eli Zaretskii
2016-03-01 5:17 ` Lars Ingebrigtsen
2016-03-01 15:46 ` Eli Zaretskii
2016-03-02 18:03 ` Lars Ingebrigtsen
2016-03-02 19:07 ` Alain Schneble
2016-03-02 19:15 ` Lars Ingebrigtsen
2016-03-02 19:38 ` Alain Schneble
2016-03-02 20:46 ` Alain Schneble
2016-03-02 22:02 ` Alain Schneble
2016-03-02 22:22 ` Lars Ingebrigtsen
2016-03-02 22:38 ` Alain Schneble
2016-03-03 0:07 ` Alain Schneble
2016-03-03 5:32 ` Lars Ingebrigtsen
2016-03-03 9:03 ` Alain Schneble
2016-03-02 19:43 ` Eli Zaretskii
2016-03-03 5:23 ` Lars Ingebrigtsen
2016-03-04 8:51 ` Eli Zaretskii
2016-03-04 11:33 ` Lars Ingebrigtsen
2016-03-04 14:48 ` Eli Zaretskii
2016-03-05 12:26 ` Lars Magne Ingebrigtsen
2016-03-05 13:24 ` Eli Zaretskii
2016-03-06 9:33 ` Lars Magne Ingebrigtsen
2016-03-06 15:26 ` Eli Zaretskii
2016-03-06 18:33 ` Lars Magne Ingebrigtsen
2016-03-06 18:41 ` Eli Zaretskii
2016-03-04 11:37 ` Lars Ingebrigtsen
2016-03-04 11:40 ` Lars Ingebrigtsen
2016-03-04 15:41 ` Eli Zaretskii
2016-03-04 15:43 ` Lars Ingebrigtsen
2016-03-04 16:12 ` Eli Zaretskii
2016-03-04 15:40 ` Eli Zaretskii
2016-03-01 15:43 ` Alain Schneble
2016-03-01 16:07 ` Eli Zaretskii
2016-03-01 16:26 ` Alain Schneble
2016-02-28 16:47 ` Eli Zaretskii
2016-02-25 3:46 ` Eli Zaretskii
2016-02-25 5:00 ` Lars Ingebrigtsen
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86egbo232a.fsf@realize.ch \
--to=a.s@realize.ch \
--cc=22789@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=j_l_domenech@yahoo.com \
--cc=larsi@gnus.org \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.