GNU bug report logs -
#49496
28.0.50; process-tests/fd-setsize-no-crash/make-network-process hangs on Cygwin
Previous Next
Reported by: Ken Brown <kbrown <at> cornell.edu>
Date: Fri, 9 Jul 2021 18:08:02 UTC
Severity: normal
Found in version 28.0.50
Done: Ken Brown <kbrown <at> cornell.edu>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 49496 <at> debbugs.gnu.org (full text, mbox):
> From: Ken Brown <kbrown <at> cornell.edu>
> Date: Fri, 9 Jul 2021 14:01:33 -0400
>
> It is possible to work around this problem by disabling the credential exchange
> as in the following patch:
>
> diff --git a/src/process.c b/src/process.c
> index b8c3e4ecfb..01548c8ab5 100644
> --- a/src/process.c
> +++ b/src/process.c
> @@ -3355,6 +3355,12 @@ connect_network_socket (Lisp_Object proc, Lisp_Object
> addrinfos,
> xerrno = EMFILE;
> continue;
> }
> +#ifdef CYGWIN
> + /* Avoid possible hang in connect/accept. */
> + if (family == AF_LOCAL && p->socktype == SOCK_STREAM
> + && setsockopt (s, SOL_SOCKET, SO_PEERCRED, 0, 0) < 0)
> + report_file_error ("Cannot disable credential exchange", Qnil);
> +#endif
> }
> if (p->is_non_blocking_client && ! (SOCK_NONBLOCK && socket_to_use < 0))
>
> But this seems too drastic just to fix a potential problem that doesn't seem to
> occur in practice, but only in the contrived situation of
> process-tests/fd-setsize-no-crash/make-network-process. So my preference is to
> simply skip that test on Cygwin.
>
> OK?
Yes, OK. But please explain there in a comment why we skip that, with
a reference to this bug.
(FWIW, I consider the process-tests suite to be not useful enough, in
that it many times tests behavior that is only guaranteed to happen on
GNU/Linux, and is not really required, nor should be expected, in
portable Lisp programs. So it doesn't surprise me that some of the
tests fail on some systems.)
This bug report was last modified 3 years and 313 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.