# HG changeset patch # Parent 44592f09f090e74432f608084069d30d808fda69 Do not throw away already open sockets for X11 forwarding if another socket family is not available for bind() Index: openssh-8.8p1/channels.c =================================================================== --- openssh-8.8p1.orig/channels.c +++ openssh-8.8p1/channels.c @@ -4607,6 +4607,13 @@ x11_create_display_inet(struct ssh *ssh, debug2_f("bind port %d: %.100s", port, strerror(errno)); close(sock); + /* do not remove successfully opened sockets if + * the request failed because the protocol + * IPv4/6 is not available (e.g. IPv6 may be + * disabled while being supported) + */ + if (EADDRNOTAVAIL == errno) + continue; for (n = 0; n < num_socks; n++) close(socks[n]); num_socks = 0;