[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1117631: marked as done (openssh: Connection sharing is very sluggish.)



Your message dated Thu, 09 Oct 2025 00:20:07 +0000
with message-id <E1v6eO7-00E0nK-0v@fasolo.debian.org>
and subject line Bug#1117594: fixed in openssh 1:10.1p1-2
has caused the Debian Bug report #1117594,
regarding openssh: Connection sharing is very sluggish.
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1117594: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1117594
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: src:openssh
Version: 1:10.1p1-1
Severity: serious
Tags: upstream fixed-upstream patch
control: forwarded -1 https://bugzilla.mindrot.org/show_bug.cgi?id=3872

Since the 10.1p1 connection sharing (ssh -M, ControlMaster yes) is very
sluggish. It turns to be a openssh regression that is already fixed as
of commit beae06f56e0d0 ("upstream: don't reuse c->isatty for signalling
that the remote channel") in the portable tree. Please find attached the
patch.

Since I have it almost always enabled, especially for long distance
connection, I can't use it. Hence the severity.

Sebastian
>From beae06f56e0d0a66ca535896149d5fb0b2e8a1b4 Mon Sep 17 00:00:00 2001
From: "djm@openbsd.org" <djm@openbsd.org>
Date: Tue, 7 Oct 2025 08:02:32 +0000
Subject: [PATCH] upstream: don't reuse c->isatty for signalling that the
 remote channel

has a tty attached as this causes side effects, e.g. in channel_handle_rfd().
bz3872

ok markus@

OpenBSD-Commit-ID: 4cd8a9f641498ca6089442e59bad0fd3dcbe85f8
---
 channels.c | 9 +++++----
 channels.h | 3 ++-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/channels.c b/channels.c
index f1d7bcf345b19..80014ff341fad 100644
--- a/channels.c
+++ b/channels.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: channels.c,v 1.451 2025/09/25 06:33:19 djm Exp $ */
+/* $OpenBSD: channels.c,v 1.452 2025/10/07 08:02:32 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -362,7 +362,7 @@ channel_classify(struct ssh *ssh, Channel *c)
 {
 	struct ssh_channels *sc = ssh->chanctxt;
 	const char *type = c->xctype == NULL ? c->ctype : c->xctype;
-	const char *classifier = c->isatty ?
+	const char *classifier = (c->isatty || c->remote_has_tty) ?
 	    sc->bulk_classifier_tty : sc->bulk_classifier_notty;
 
 	c->bulk = type != NULL && match_pattern_list(type, classifier, 0) == 1;
@@ -566,7 +566,7 @@ channel_new(struct ssh *ssh, char *ctype, int type, int rfd, int wfd, int efd,
 void
 channel_set_tty(struct ssh *ssh, Channel *c)
 {
-	c->isatty = 1;
+	c->remote_has_tty = 1;
 	channel_classify(ssh, c);
 }
 
@@ -1078,7 +1078,8 @@ channel_format_status(const Channel *c)
 	    c->rfd, c->wfd, c->efd, c->sock, c->ctl_chan,
 	    c->have_ctl_child_id ? "c" : "nc", c->ctl_child_id,
 	    c->io_want, c->io_ready,
-	    c->isatty ? "T" : "", c->bulk ? "B" : "I");
+	    c->isatty ? "T" : (c->remote_has_tty ? "RT" : ""),
+	    c->bulk ? "B" : "I");
 	return ret;
 }
 
diff --git a/channels.h b/channels.h
index df7c7f364d225..7456541f8ce3a 100644
--- a/channels.h
+++ b/channels.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: channels.h,v 1.161 2025/09/25 06:33:19 djm Exp $ */
+/* $OpenBSD: channels.h,v 1.162 2025/10/07 08:02:32 djm Exp $ */
 
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -145,6 +145,7 @@ struct Channel {
 	int     ctl_chan;	/* control channel (multiplexed connections) */
 	uint32_t ctl_child_id;	/* child session for mux controllers */
 	int	have_ctl_child_id;/* non-zero if ctl_child_id is valid */
+	int     remote_has_tty;	/* remote side has a tty */
 	int     isatty;		/* rfd is a tty */
 #ifdef _AIX
 	int     wfd_isatty;	/* wfd is a tty */
-- 
2.51.0


--- End Message ---
--- Begin Message ---
Source: openssh
Source-Version: 1:10.1p1-2
Done: Colin Watson <cjwatson@debian.org>

We believe that the bug you reported is fixed in the latest version of
openssh, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1117594@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Colin Watson <cjwatson@debian.org> (supplier of updated openssh package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 09 Oct 2025 00:54:25 +0100
Source: openssh
Architecture: source
Version: 1:10.1p1-2
Distribution: unstable
Urgency: medium
Maintainer: Debian OpenSSH Maintainers <debian-ssh@lists.debian.org>
Changed-By: Colin Watson <cjwatson@debian.org>
Closes: 1117574 1117594
Changes:
 openssh (1:10.1p1-2) unstable; urgency=medium
 .
   * Don't reuse c->isatty for signalling that the remote channel has a tty
     attached (closes: #1117574, #1117594).
   * Link ssh-keygen directly against ssh-pkcs11.c.
Checksums-Sha1:
 578bd4007e3505334ff4a1572784702492f9a13b 3654 openssh_10.1p1-2.dsc
 1741da614d417ad096cec66edfc0d0315800737f 200372 openssh_10.1p1-2.debian.tar.xz
 44f3697d2b951e029cb67c8bcb70af06d72fd84f 5903300 openssh_10.1p1-2.git.tar.xz
 5186b6565a192df2d6782800ae0ed457794db173 18224 openssh_10.1p1-2_source.buildinfo
Checksums-Sha256:
 892d67278ff329be90166a13d7082aa7cd0ea0b5d262461865fc27e1aa062ad6 3654 openssh_10.1p1-2.dsc
 e7bee9a63c6f7ce70a41c314344aa52ca05cbcda987d63cd6559152f155a0bed 200372 openssh_10.1p1-2.debian.tar.xz
 fae51dfd4492bef7e0aa9cdfce520de01e308fe7948a6109cc061e82231f4f49 5903300 openssh_10.1p1-2.git.tar.xz
 f9763565d0d05b3a72d2efe058427428442a80691eeb022e188400cec0e6da20 18224 openssh_10.1p1-2_source.buildinfo
Files:
 a921d1a0abbbd69a5516e78f879296a1 3654 net standard openssh_10.1p1-2.dsc
 fc4386189d04b63ae58408ce5b98c82d 200372 net standard openssh_10.1p1-2.debian.tar.xz
 aea5e42775033de86baf6e4968650304 5903300 net standard openssh_10.1p1-2.git.tar.xz
 91022a018b275c11144ede90b77d15e9 18224 net standard openssh_10.1p1-2_source.buildinfo
Git-Tag-Info: tag=33c021362ac506111e178e031e13add40122ca97 fp=ac0a4ff12611b6fccf01c111393587d97d86500b
Git-Tag-Tagger: Colin Watson <cjwatson@debian.org>

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEN02M5NuW6cvUwJcqYG0ITkaDwHkFAmjm+iQACgkQYG0ITkaD
wHmKuhAAiQ11CWujqQIbb21NzHDztRKDLYEmxt+jXvsDbqTuqybtU0J7qATaIrMZ
kK/Thf2dFqoZpZbVY0AoVEn3G050pgLsg6oukGXqktoYhkM0yeb1mqXR3oYOhjSk
wLlDrFfnQEFyWQkKkQYn+GkvSu4QSwrKIzUM98QsMz6CasLakQNXfOx5J+a/rRU6
VTn5wkDgE1X6hPMwzNwYgVCOjtAYLEbn58liNh5770qXLKWpX3Jqolos/UbwVaCy
a2uR2zU8J3y32Nsn9iwHSkjgqVFkNyV9gn9QxHyezg+cSuC7TbsmpEQqaqO4zpZc
VRsLD73LSfCHAmwDfcYjmKyU1pqmBTTCz5j6uMNDbc+JW+ZWTVUIaI73Ojkkcml7
bklLWNKCAuSXJGz3CpHkYjrZSQ9ZObi+qyt5WEb6e7tSvYvOXeW50tVmCEhRqkfT
fAmOUholuTcGdlXW+PP2oMvNbm+Bs/mR/rMqH+ooaC9XXT7QyQZZN3ueFlQSLqsG
IUURAujFAJ4zgBKJnzsvbDp4wSEmsgWf1H5VPRZVgKA++a6rCGN7kArhpmk145Ub
qtJQB4uvTePmAo+vdrOHaEeSMxmpoFylpN7Vx9Nf4AzL1aX+9ZhDgUrqdl42/OKx
5GMzL56k712nJ9dHx5/kT68K0fnzU8DdKSc8bJP7jPQPDvy38gQ=
=JI8D
-----END PGP SIGNATURE-----

Attachment: pgpA_Gb4vBEfZ.pgp
Description: PGP signature


--- End Message ---

Reply to: