Control: forwarded -1 https://github.com/ronf/asyncssh/pull/679
On Tue, Sep 26, 2023 at 02:44:18PM +0200, Lucas Nussbaum wrote:
> > ======================================================================
> > ERROR: test_bad_auth_big (tests.test_x11._TestX11.test_bad_auth_big)
> > Test sending bad auth data with big-endian connect
> > ----------------------------------------------------------------------
> > Traceback (most recent call last):
> > File "/usr/lib/python3.11/unittest/mock.py", line 1375, in patched
> > return func(*newargs, **newkeywargs)
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/tests/util.py", line 81, in async_wrapper
> > return self.loop.run_until_complete(coro(self, *args, **kwargs))
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/usr/lib/python3.11/asyncio/base_events.py", line 653, in
> > run_until_complete
> > return future.result()
> > ^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/tests/test_x11.py", line 414, in test_bad_auth_big
> > await self._check_x11('connect BX', exit_status=0)
> > File "/<<PKGBUILDDIR>>/tests/test_x11.py", line 332, in _check_x11
> > proc = await _create_x11_process(conn, command, **kwargs)
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/tests/test_x11.py", line 57, in _create_x11_process
> > return await conn.create_process(command, x11_forwarding=x11_forwarding,
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/asyncssh/connection.py", line 3980, in
> > create_process
> > chan, process = await self.create_session(
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/asyncssh/connection.py", line 3887, in
> > create_session
> > session = await chan.create(session_factory, command, subsystem,
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > File "/<<PKGBUILDDIR>>/asyncssh/channel.py", line 1183, in create
> > raise ChannelOpenError(
> > asyncssh.misc.ChannelOpenError: X11 forwarding request failed
I saw this in my local tests when working on upgrading to 2.15.0, and
after some debugging I found that it's because my /etc/hosts happened to
have multiple entries mapping localhost to 127.0.0.1, which caused
asyncssh.listener.create_tcp_local_listener to attempt to bind the same
address twice.
I've proposed https://github.com/ronf/asyncssh/pull/679 upstream to fix
this, and will cherry-pick that for the time being since it's pretty
harmless.
(The test failures in Helmut's message to this bug are unrelated:
they're a combination of problems already fixed in the new upstream
release and problems introduced by Debian patches that can now be
dropped.)
--
Colin Watson (he/him) [[email protected]]