mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-25 01:02:24 +00:00
91cf47dd0d
If Plink's standard output and/or standard error points at a Windows console or a Unix tty device, and if Plink was not configured to request a remote pty (and hence to send a terminal-type string), then we apply the new control-character stripping facility. The idea is to be a mild defence against malicious remote processes sending confusing escape sequences through the standard error channel when Plink is being used as a transport for something like git: it's OK to have actual sensible error messages come back from the server, but when you run a git command, you didn't really intend to give the remote server the implicit licence to write _all over_ your local terminal display. At the same time, in that scenario, the standard _output_ of Plink is left completely alone, on the grounds that git will be expecting it to be 8-bit clean. (And Plink can tell that because it's redirected away from the console.) For interactive login sessions using Plink, this behaviour is disabled, on the grounds that once you've sent a terminal-type string it's assumed that you were _expecting_ the server to use it to know what escape sequences to send to you. So it should be transparent for all the use cases I've so far thought of. But in case it's not, there's a family of new command-line options like -no-sanitise-stdout and -sanitise-stderr that you can use to forcibly override the autodetection of whether to do it. This all applies the same way to both Unix and Windows Plink. |
||
---|---|---|
.. | ||
blurb.but | ||
chm.css | ||
config.but | ||
errors.but | ||
faq.but | ||
feedback.but | ||
gs.but | ||
index.but | ||
intro.but | ||
Makefile | ||
man-pag.but | ||
man-pg.but | ||
man-pl.but | ||
man-pscp.but | ||
man-psft.but | ||
man-ptel.but | ||
man-pter.but | ||
man-putt.but | ||
mancfg.but | ||
manpages.but | ||
pageant.but | ||
pgpkeys.but | ||
plink.but | ||
pscp.but | ||
psftp.but | ||
pubkey.but | ||
site.but | ||
sshnames.but | ||
udp.but | ||
using.but | ||
vids.but |