unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
@ 2024-11-03 16:27 Augusto Stoffel
  2024-11-03 17:44 ` Eli Zaretskii
  2024-11-03 18:13 ` Augusto Stoffel
  0 siblings, 2 replies; 9+ messages in thread
From: Augusto Stoffel @ 2024-11-03 16:27 UTC (permalink / raw)
  To: 74193

If I evaluate the form below and then run C-x C-c, I get asked if I want
to kill the network process.

  (open-network-stream "test" nil "www.gnu.org" 443 :type 'tls :noquery t)

If I removed the `:type 'tls' option, then :noquery takes effect as
expected.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-03 16:27 bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection Augusto Stoffel
@ 2024-11-03 17:44 ` Eli Zaretskii
  2024-11-03 18:13 ` Augusto Stoffel
  1 sibling, 0 replies; 9+ messages in thread
From: Eli Zaretskii @ 2024-11-03 17:44 UTC (permalink / raw)
  To: Augusto Stoffel; +Cc: 74193

> From: Augusto Stoffel <arstoffel@gmail.com>
> Date: Sun, 03 Nov 2024 17:27:00 +0100
> 
> If I evaluate the form below and then run C-x C-c, I get asked if I want
> to kill the network process.
> 
>   (open-network-stream "test" nil "www.gnu.org" 443 :type 'tls :noquery t)
> 
> If I removed the `:type 'tls' option, then :noquery takes effect as
> expected.

AFAICT, open-gnutls-stream doesn't support :noquery, so Emacs
basically ignores :noquery in this case and starts a network process
with query-on-exit flag set.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-03 16:27 bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection Augusto Stoffel
  2024-11-03 17:44 ` Eli Zaretskii
@ 2024-11-03 18:13 ` Augusto Stoffel
  2024-11-04 12:01   ` Eli Zaretskii
  2024-11-04 16:35   ` Robert Pluim
  1 sibling, 2 replies; 9+ messages in thread
From: Augusto Stoffel @ 2024-11-03 18:13 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 74193, Augusto Stoffel

[-- Attachment #1: Type: text/plain, Size: 620 bytes --]

On Sun,  3 Nov 2024 at 19:44, Eli Zaretskii wrote:

>> From: Augusto Stoffel <arstoffel@gmail.com>
>> Date: Sun, 03 Nov 2024 17:27:00 +0100
>> 
>> If I evaluate the form below and then run C-x C-c, I get asked if I want
>> to kill the network process.
>> 
>>   (open-network-stream "test" nil "www.gnu.org" 443 :type 'tls :noquery t)
>> 
>> If I removed the `:type 'tls' option, then :noquery takes effect as
>> expected.
>
> AFAICT, open-gnutls-stream doesn't support :noquery, so Emacs
> basically ignores :noquery in this case and starts a network process
> with query-on-exit flag set.

Indeed, the fix is trivial:


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-lisp-net-gnutls.el-open-gnutls-stream-Use-noquery-op.patch --]
[-- Type: text/x-patch, Size: 785 bytes --]

From 01d73dea9243d2b57b6ed2bd0fa37e0935ef7a74 Mon Sep 17 00:00:00 2001
From: Augusto Stoffel <arstoffel@gmail.com>
Date: Sun, 3 Nov 2024 19:11:54 +0100
Subject: [PATCH] * lisp/net/gnutls.el (open-gnutls-stream): Use :noquery
 option

---
 lisp/net/gnutls.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lisp/net/gnutls.el b/lisp/net/gnutls.el
index b5fb4d47d57..e8614bfc6d3 100644
--- a/lisp/net/gnutls.el
+++ b/lisp/net/gnutls.el
@@ -200,6 +200,7 @@ open-gnutls-stream
          (process (open-network-stream
                    name buffer host service
                    :nowait nowait
+                   :noquery (plist-get parameters :noquery)
                    :tls-parameters
                    (and nowait
                         (cons 'gnutls-x509pki
-- 
2.47.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-03 18:13 ` Augusto Stoffel
@ 2024-11-04 12:01   ` Eli Zaretskii
  2024-11-04 16:38     ` Robert Pluim
  2024-11-04 16:35   ` Robert Pluim
  1 sibling, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-11-04 12:01 UTC (permalink / raw)
  To: Augusto Stoffel, Robert Pluim; +Cc: 74193

> From: Augusto Stoffel <arstoffel@gmail.com>
> Cc: Augusto Stoffel <arstoffel@gmail.com>,  74193@debbugs.gnu.org
> Date: Sun, 03 Nov 2024 19:13:44 +0100
> 
> On Sun,  3 Nov 2024 at 19:44, Eli Zaretskii wrote:
> 
> > AFAICT, open-gnutls-stream doesn't support :noquery, so Emacs
> > basically ignores :noquery in this case and starts a network process
> > with query-on-exit flag set.
> 
> Indeed, the fix is trivial:
> 
> 
> >From 01d73dea9243d2b57b6ed2bd0fa37e0935ef7a74 Mon Sep 17 00:00:00 2001
> From: Augusto Stoffel <arstoffel@gmail.com>
> Date: Sun, 3 Nov 2024 19:11:54 +0100
> Subject: [PATCH] * lisp/net/gnutls.el (open-gnutls-stream): Use :noquery
>  option
> 
> ---
>  lisp/net/gnutls.el | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/lisp/net/gnutls.el b/lisp/net/gnutls.el
> index b5fb4d47d57..e8614bfc6d3 100644
> --- a/lisp/net/gnutls.el
> +++ b/lisp/net/gnutls.el
> @@ -200,6 +200,7 @@ open-gnutls-stream
>           (process (open-network-stream
>                     name buffer host service
>                     :nowait nowait
> +                   :noquery (plist-get parameters :noquery)
>                     :tls-parameters
>                     (and nowait
>                          (cons 'gnutls-x509pki

Thanks.

Robert, do you know if GnuTLS, as we use it in Emacs, supports this on
all platforms?  With both :nowait and non-:nowait?  More generally, I
wonder why we don't pass all the parameters to open-network-stream?

In any case, the doc string should be fixed to mention :noquery.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-03 18:13 ` Augusto Stoffel
  2024-11-04 12:01   ` Eli Zaretskii
@ 2024-11-04 16:35   ` Robert Pluim
  1 sibling, 0 replies; 9+ messages in thread
From: Robert Pluim @ 2024-11-04 16:35 UTC (permalink / raw)
  To: Augusto Stoffel; +Cc: 74193, Eli Zaretskii

>>>>> On Sun, 03 Nov 2024 19:13:44 +0100, Augusto Stoffel <arstoffel@gmail.com> said:

    Augusto> On Sun,  3 Nov 2024 at 19:44, Eli Zaretskii wrote:
    >>> From: Augusto Stoffel <arstoffel@gmail.com>
    >>> Date: Sun, 03 Nov 2024 17:27:00 +0100
    >>> 
    >>> If I evaluate the form below and then run C-x C-c, I get asked if I want
    >>> to kill the network process.
    >>> 
    >>> (open-network-stream "test" nil "www.gnu.org" 443 :type 'tls :noquery t)
    >>> 
    >>> If I removed the `:type 'tls' option, then :noquery takes effect as
    >>> expected.
    >> 
    >> AFAICT, open-gnutls-stream doesn't support :noquery, so Emacs
    >> basically ignores :noquery in this case and starts a network process
    >> with query-on-exit flag set.

    Augusto> Indeed, the fix is trivial:

If there are any other keywords supported by `open-network-stream'
that `open-gnutls-stream' doesnʼt, and that make sense to support, now
is a good time to ask for them, as Iʼm working on some changes in
there anyway.

Robert
-- 





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-04 12:01   ` Eli Zaretskii
@ 2024-11-04 16:38     ` Robert Pluim
  2024-11-04 17:05       ` Eli Zaretskii
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Pluim @ 2024-11-04 16:38 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 74193, Augusto Stoffel

>>>>> On Mon, 04 Nov 2024 14:01:53 +0200, Eli Zaretskii <eliz@gnu.org> said:

    >> From: Augusto Stoffel <arstoffel@gmail.com>
    >> Cc: Augusto Stoffel <arstoffel@gmail.com>,  74193@debbugs.gnu.org
    >> Date: Sun, 03 Nov 2024 19:13:44 +0100
    >> 
    >> On Sun,  3 Nov 2024 at 19:44, Eli Zaretskii wrote:
    >> 
    >> > AFAICT, open-gnutls-stream doesn't support :noquery, so Emacs
    >> > basically ignores :noquery in this case and starts a network process
    >> > with query-on-exit flag set.
    >> 
    >> Indeed, the fix is trivial:
    >> 
    >> 
    >> >From 01d73dea9243d2b57b6ed2bd0fa37e0935ef7a74 Mon Sep 17 00:00:00 2001
    >> From: Augusto Stoffel <arstoffel@gmail.com>
    >> Date: Sun, 3 Nov 2024 19:11:54 +0100
    >> Subject: [PATCH] * lisp/net/gnutls.el (open-gnutls-stream): Use :noquery
    >> option
    >> 
    >> ---
    >> lisp/net/gnutls.el | 1 +
    >> 1 file changed, 1 insertion(+)
    >> 
    >> diff --git a/lisp/net/gnutls.el b/lisp/net/gnutls.el
    >> index b5fb4d47d57..e8614bfc6d3 100644
    >> --- a/lisp/net/gnutls.el
    >> +++ b/lisp/net/gnutls.el
    >> @@ -200,6 +200,7 @@ open-gnutls-stream
    >> (process (open-network-stream
    >> name buffer host service
    >> :nowait nowait
    >> +                   :noquery (plist-get parameters :noquery)
    >> :tls-parameters
    >> (and nowait
    >> (cons 'gnutls-x509pki

    Eli> Thanks.

    Eli> Robert, do you know if GnuTLS, as we use it in Emacs, supports this on
    Eli> all platforms?  With both :nowait and non-:nowait?  More generally, I
    Eli> wonder why we don't pass all the parameters to open-network-stream?

I donʼt know if itʼs supported everywhere, I suspect the interactions
with :nowait could get interesting. As far as I remember,
`open-gnutls-stream' is supposed to be a 'simple' wrapper, which is
why it doesnʼt support all the keywords.

    Eli> In any case, the doc string should be fixed to mention :noquery.

Which doc string? `open-gnutls-stream', after this patch?

Robert
-- 





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-04 16:38     ` Robert Pluim
@ 2024-11-04 17:05       ` Eli Zaretskii
  2024-11-04 17:18         ` Robert Pluim
  0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-11-04 17:05 UTC (permalink / raw)
  To: Robert Pluim; +Cc: 74193, arstoffel

> From: Robert Pluim <rpluim@gmail.com>
> Cc: Augusto Stoffel <arstoffel@gmail.com>,  74193@debbugs.gnu.org
> Date: Mon, 04 Nov 2024 17:38:47 +0100
> 
>     Eli> Robert, do you know if GnuTLS, as we use it in Emacs, supports this on
>     Eli> all platforms?  With both :nowait and non-:nowait?  More generally, I
>     Eli> wonder why we don't pass all the parameters to open-network-stream?
> 
> I donʼt know if itʼs supported everywhere, I suspect the interactions
> with :nowait could get interesting. As far as I remember,
> `open-gnutls-stream' is supposed to be a 'simple' wrapper, which is
> why it doesnʼt support all the keywords.

Yes.  But we are going to allow more keywords, it would be good to
test them in at least the more popular configurations.

>     Eli> In any case, the doc string should be fixed to mention :noquery.
> 
> Which doc string? `open-gnutls-stream', after this patch?

Yes.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-04 17:05       ` Eli Zaretskii
@ 2024-11-04 17:18         ` Robert Pluim
  2024-11-05 14:04           ` Robert Pluim
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Pluim @ 2024-11-04 17:18 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 74193, arstoffel

>>>>> On Mon, 04 Nov 2024 19:05:17 +0200, Eli Zaretskii <eliz@gnu.org> said:

    >> From: Robert Pluim <rpluim@gmail.com>
    >> Cc: Augusto Stoffel <arstoffel@gmail.com>,  74193@debbugs.gnu.org
    >> Date: Mon, 04 Nov 2024 17:38:47 +0100
    >> 
    Eli> Robert, do you know if GnuTLS, as we use it in Emacs, supports this on
    Eli> all platforms?  With both :nowait and non-:nowait?  More generally, I
    Eli> wonder why we don't pass all the parameters to open-network-stream?
    >> 
    >> I donʼt know if itʼs supported everywhere, I suspect the interactions
    >> with :nowait could get interesting. As far as I remember,
    >> `open-gnutls-stream' is supposed to be a 'simple' wrapper, which is
    >> why it doesnʼt support all the keywords.

    Eli> Yes.  But we are going to allow more keywords, it would be good to
    Eli> test them in at least the more popular configurations.

Iʼve re-read the many-headed hydra that is `open-network-stream', and
':noquery' is the only keyword that appears to be missing for
`open-gnutls-stream'. The others are only used when opening plain
connections or when upgrading plain connections to TLS (which should
be avoided if at all possible).

Iʼll see if I can find time to test. I have GNU/Linux, macOS, and if
really needed, MSWindows (I need to test the ALPN changes in any case).

    Eli> In any case, the doc string should be fixed to mention :noquery.
    >> 
    >> Which doc string? `open-gnutls-stream', after this patch?

    Eli> Yes.

OK

Robert
-- 





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection
  2024-11-04 17:18         ` Robert Pluim
@ 2024-11-05 14:04           ` Robert Pluim
  0 siblings, 0 replies; 9+ messages in thread
From: Robert Pluim @ 2024-11-05 14:04 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 74193, arstoffel

>>>>> On Mon, 04 Nov 2024 18:18:06 +0100, Robert Pluim <rpluim@gmail.com> said:

    Robert> Iʼll see if I can find time to test. I have GNU/Linux, macOS, and if
    Robert> really needed, MSWindows (I need to test the ALPN changes in any case).

Augustoʼs patch works with both ':nowait t' and ':nowait nil' on
GNU/Linux.  I wonʼt be able to test macOS or MSWindows until this
weekend at the earliest.

In any case, this is for emacs-31, so thereʼs no hurry.

Robert
-- 





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-11-05 14:04 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-03 16:27 bug#74193: 30.0.92; noquery argument ignored when creating a TLS connection Augusto Stoffel
2024-11-03 17:44 ` Eli Zaretskii
2024-11-03 18:13 ` Augusto Stoffel
2024-11-04 12:01   ` Eli Zaretskii
2024-11-04 16:38     ` Robert Pluim
2024-11-04 17:05       ` Eli Zaretskii
2024-11-04 17:18         ` Robert Pluim
2024-11-05 14:04           ` Robert Pluim
2024-11-04 16:35   ` Robert Pluim

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).