1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00
putty-source/ssh
Simon Tatham c62b7229c1 Bug workaround to delay sending our SSH greeting.
Ian Jackson recently tried to use the recipe in the psusan manpage for
talking to UML, and found that the connection was not successfully set
up, because at some point during startup, UML read the SSH greeting
(ok, the bare-ssh-connection greeting) from its input fd and threw it
away. So by the time psusan was run by the guest init process, the
greeting wasn't there to be read.

Ian's report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=991958

I was also able to reproduce this locally, which makes me wonder why I
_didn't_ notice it when I originally wrote that part of the psusan man
page. It worked for me before, honest! But now it doesn't.

Anyway. The ssh verstring module already has a mode switch to decide
whether we ought to send our greeting before or after waiting for the
other side's greeting (because that decision varies between client and
server, and between SSH-1 and SSH-2). So it's easy to implement an
override that forces it to 'wait for the server greeting first'.

I've added this as yet another bug workaround flag. But unlike all the
others, it can't be autodetected from the server's version string,
because, of course, we have to act on it _before_ seeing the server's
greeting and version string! So it's a manual-only flag.

However, I've mentioned it in the UML section of the psusan man page,
since that's the place where I _know_ people are likely to need to use
this flag.
2021-08-14 11:46:21 +01:00
..
agentf.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
bpp1.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
bpp2.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
bpp-bare.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
bpp.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
censor1.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
censor2.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
channel.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
CMakeLists.txt Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
common.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection1-client.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection1-server.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection1.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection1.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection2-client.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection2-server.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
connection2.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
connection2.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
crc-attack-detector.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
gss.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
gssc.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
gssc.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
kex2-client.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
kex2-server.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
login1-server.c Uppity: add stunt options for trivial authentication. 2021-06-19 21:34:56 +01:00
login1.c New option to reject 'trivial' success of userauth. 2021-06-19 21:34:56 +01:00
mainchan.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
nogss.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
nosharing.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
pgssapi.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
pgssapi.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
portfwd.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
ppl.h New option to reject 'trivial' success of userauth. 2021-06-19 21:34:56 +01:00
scpserver.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
server.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
server.h Uppity: add stunt options for trivial authentication. 2021-06-19 21:34:56 +01:00
sesschan.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
sftp.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
sftp.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
sftpcommon.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
sftpserver.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
sharing.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
signal-list.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
ssh.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
transient-hostkey-cache.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
transport2.c New Seat callback, seat_sent(). 2021-06-27 13:52:48 +01:00
transport2.h Spelling: standardise on "DSA", not "DSS". 2021-04-22 18:34:47 +01:00
ttymode-list.h Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
userauth2-client.c New option to reject 'trivial' success of userauth. 2021-06-19 21:34:56 +01:00
userauth2-server.c Uppity: add stunt options for trivial authentication. 2021-06-19 21:34:56 +01:00
verstring.c Bug workaround to delay sending our SSH greeting. 2021-08-14 11:46:21 +01:00
x11fwd.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00
zlib.c Move the SSH implementation into its own subdirectory. 2021-04-22 18:09:13 +01:00