GNU bug report logs - #22493
25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous

Previous Next

Package: emacs;

Reported by: Lars Ingebrigtsen <larsi <at> gnus.org>

Date: Sat, 30 Jan 2016 04:02:01 UTC

Severity: normal

Found in version 25.1.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 22493 <at> debbugs.gnu.org
Subject: bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous
Date: Sat, 06 Feb 2016 09:51:35 +0200
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Cc: 22493 <at> debbugs.gnu.org
> Date: Sat, 06 Feb 2016 14:03:40 +1100
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> >> Cc: 22493 <at> debbugs.gnu.org
> >> Date: Fri, 05 Feb 2016 18:34:44 +1100
> >> 
> >> There is no waiting in the GnuTLS library during negotiation.  It is
> >> fully asynchronous.  If any action blocks, it will return, and we can
> >> proceed later.  It works, seen from the application side, as any other
> >> network connection.
> >
> > The _waiting_ is asynchronous.  The processing cannot be, because
> > GnuTLS doesn't start any threads.
> 
> I think you're nitpicking semantics now.  There will be no user-visible
> waiting while a TLS connection is negotiated, OK?

That is only true if the foreground program has something useful to do
while TLS negotiation goes on.  You have a very particular application
in mind (a browser) where you can just let user scroll through the
rest of the buffer, but (1) what if the user doesn't want to scroll,
but wants to see that image that wasn't yet downloaded; and (b) not
every application is a browser where there's something to do while
these negotiations go on.

IOW, your changes might make sense for some small set of applications,
but for the others it's just a major complication in the code base
with no real gains.

We shouldn't make such major changes in low-level code when they
benefit only a small class of applications, IMO.




This bug report was last modified 9 years and 166 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.