simon-git: putty (main): Simon Tatham
Commits to Tartarus hosted VCS
tartarus-commits at lists.tartarus.org
Sun Sep 12 11:59:26 BST 2021
TL;DR:
346a7548 New Seat method, notify_session_started().
Repository: https://git.tartarus.org/simon/putty.git
On the web: https://git.tartarus.org/?p=simon/putty.git
Branch updated: main
Committer: Simon Tatham <anakin at pobox.com>
Date: 2021-09-12 11:59:26
commit 346a7548e2ba2739f0cc5a2c9ec092186735fa57
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=346a7548e2ba2739f0cc5a2c9ec092186735fa57;hp=c3366435765afcfcef30cff8b65da4dcf36c2bd7
Author: Simon Tatham <anakin at pobox.com>
Date: Sun Sep 12 11:48:42 2021 +0100
New Seat method, notify_session_started().
This is called by the backend to notify the Seat that the connection
has progressed to the point where the main session channel (i.e. the
thing that would typically correspond to the client's stdin/stdout)
has been successfully set up.
The only Seat that implements this method nontrivially is the one in
SshProxy, which uses it as an indication that the proxied connection
to the remote host has succeeded, and sends the
PLUGLOG_CONNECT_SUCCESS notification to its own Plug.
Hence, the only backends that need to implement it at the moment are
the two SSH-shaped backends (SSH proper and bare-connection / psusan).
For other backends, it's not always obvious what 'main session
channel' would even mean, or whether it means anything very useful; so
I've also introduced a backend flag indicating whether the backend is
expecting to call that method at all, so as not to have to spend
pointless effort on defining an arbitrary meaning for it in other
contexts.
So a lot of this patch is just introducing the new method and putting
its trivial do-nothing implementation into all the existing Seat
methods. The interesting parts happen in ssh/mainchan.c (which
actually calls it), and sshproxy.c (which does something useful in
response).
pscp.c | 1 +
psftp.c | 1 +
putty.h | 16 ++++++++++++++++
ssh/mainchan.c | 1 +
ssh/server.c | 1 +
ssh/sesschan.c | 1 +
ssh/ssh.c | 4 ++--
sshproxy.c | 17 +++++++++++++++++
unix/plink.c | 1 +
unix/window.c | 1 +
utils/nullseat.c | 1 +
windows/plink.c | 1 +
windows/window.c | 1 +
13 files changed, 45 insertions(+), 2 deletions(-)
More information about the tartarus-commits
mailing list