Yesterday's proxy enhancements also slightly nadgered the config
[u/mdw/putty] / doc / config.but
index 37c959c..3850656 100644 (file)
@@ -1,4 +1,4 @@
-\versionid $Id: config.but,v 1.52 2003/01/27 23:03:30 simon Exp $
+\versionid $Id: config.but,v 1.64 2003/05/07 12:07:23 simon Exp $
 
 \C{config} Configuring PuTTY
 
@@ -89,6 +89,13 @@ Each saved session is independent of the Default Settings
 configuration. If you change your preferences and update Default
 Settings, you must also update every saved session separately.
 
+Saved sessions are stored in the Registry, at the location
+
+\c HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions
+
+If you need to store them in a file, you could try the method
+described in \k{config-file}.
+
 \S{config-closeonexit} \q{Close Window on Exit}
 
 \cfg{winhelp-topic}{session.coe}
@@ -622,10 +629,14 @@ on a terminal bell:
 the server can send as many Control-G characters as it likes and
 nothing at all will happen.
 
-\b \q{Play Windows Default Sound} is the default setting. It causes
-the Windows \q{Default Beep} sound to be played. To change what this
-sound is, or to test it if nothing seems to be happening, use the
-Sound configurer in the Windows Control Panel.
+\b \q{Make default system alert sound} is the default setting. It
+causes the Windows \q{Default Beep} sound to be played. To change
+what this sound is, or to test it if nothing seems to be happening,
+use the Sound configurer in the Windows Control Panel.
+
+\b \q{Visual bell} is a silent alternative to a beeping computer. In
+this mode, when the server sends a Control-G, the whole PuTTY window
+will flash white for a fraction of a second.
 
 \b \q{Play a custom sound file} allows you to specify a particular
 sound file to be used by PuTTY alone, or even by a particular
@@ -634,10 +645,6 @@ beeps from any other beeps on the system. If you select this option,
 you will also need to enter the name of your sound file in the edit
 control \q{Custom sound file to play as a bell}.
 
-\b \q{Visual bell} is a silent alternative to a beeping computer. In
-this mode, when the server sends a Control-G, the whole PuTTY window
-will flash white for a fraction of a second.
-
 \S{config-belltaskbar} \q{Taskbar/caption indication on bell}
 
 \cfg{winhelp-topic}{bell.taskbar}
@@ -769,6 +776,26 @@ commands from the server. If you find PuTTY is doing this
 unexpectedly or inconveniently, you can tell PuTTY not to respond to
 those server commands.
 
+\S{config-features-qtitle} Disabling remote window title querying
+
+\cfg{winhelp-topic}{features.qtitle}
+
+PuTTY can optionally provide the xterm service of allowing server
+applications to find out the local window title. This feature is
+disabled by default, but you can turn it on if you really want it.
+
+NOTE that this feature is a \e{potential security hazard}. If a
+malicious application can write data to your terminal (for example,
+if you merely \c{cat} a file owned by someone else on the server
+machine), it can change your window title (unless you have disabled
+this as mentioned in \k{config-features-retitle}) and then use this
+service to have the new window title sent back to the server as if
+typed at the keyboard. This allows an attacker to fake keypresses
+and potentially cause your server-side applications to do things you
+didn't want. Therefore this feature is disabled by default, and we
+recommend you do not turn it on unless you \e{really} know what you
+are doing.
+
 \S{config-features-dbackspace} Disabling destructive backspace
 
 \cfg{winhelp-topic}{features.dbackspace}
@@ -856,6 +883,22 @@ terminal contents. You can disable this behaviour by turning off
 screen revert when you press a key, by turning on \q{Reset
 scrollback on keypress}.
 
+\S{config-erasetoscrollback} \q{Push erased text into scrollback}
+
+\cfg{winhelp-topic}{window.erased}
+
+When this option is enabled, the contents of the terminal screen
+will be pushed into the scrollback when a server-side application
+clears the screen, so that your scrollback will contain a better
+record of what was on your screen in the past.
+
+If the application switches to the alternate screen (see
+\k{config-features-altscreen} for more about this), then the
+contents of the primary screen will be visible in the scrollback
+until the application switches back again.
+
+This option is enabled by default.
+
 \H{config-appearance} The Appearance panel
 
 The Appearance configuration panel allows you to control aspects of
@@ -883,32 +926,6 @@ offered a choice from all the fixed-width fonts installed on the
 system. (VT100-style terminal handling can only deal with fixed-
 width fonts.)
 
-\S{config-title} Controlling the window title
-
-\cfg{winhelp-topic}{appearance.title}
-
-The \q{Window title} edit box allows you to set the title of the
-PuTTY window. By default the window title will contain the host name
-followed by \q{PuTTY}, for example \c{server1.example.com - PuTTY}.
-If you want a different window title, this is where to set it.
-
-PuTTY allows the server to send \c{xterm} control sequences which
-modify the title of the window in mid-session. There is also an
-\c{xterm} sequence to modify the title of the window's \e{icon}.
-This makes sense in a windowing system where the window becomes an
-icon when minimised, such as Windows 3.1 or most X Window System
-setups; but in the Windows 95-like user interface it isn't as
-applicable.
-
-By default, PuTTY only uses the server-supplied \e{window} title, and
-ignores the icon title entirely. If for some reason you want to see
-both titles, check the box marked \q{Separate window and icon titles}.
-If you do this, PuTTY's window title and Taskbar caption will
-change into the server-supplied icon title if you minimise the PuTTY
-window, and change back to the server-supplied window title if you
-restore it. (If the server has not bothered to supply a window or
-icon title, none of this will happen.)
-
 \S{config-mouseptr} \q{Hide mouse pointer when typing in window}
 
 \cfg{winhelp-topic}{appearance.hidemouse}
@@ -944,6 +961,32 @@ it to zero, or increase it further.
 The Behaviour configuration panel allows you to control aspects of
 the behaviour of PuTTY's window.
 
+\S{config-title} Controlling the window title
+
+\cfg{winhelp-topic}{appearance.title}
+
+The \q{Window title} edit box allows you to set the title of the
+PuTTY window. By default the window title will contain the host name
+followed by \q{PuTTY}, for example \c{server1.example.com - PuTTY}.
+If you want a different window title, this is where to set it.
+
+PuTTY allows the server to send \c{xterm} control sequences which
+modify the title of the window in mid-session. There is also an
+\c{xterm} sequence to modify the title of the window's \e{icon}.
+This makes sense in a windowing system where the window becomes an
+icon when minimised, such as Windows 3.1 or most X Window System
+setups; but in the Windows 95-like user interface it isn't as
+applicable.
+
+By default, PuTTY only uses the server-supplied \e{window} title, and
+ignores the icon title entirely. If for some reason you want to see
+both titles, check the box marked \q{Separate window and icon titles}.
+If you do this, PuTTY's window title and Taskbar caption will
+change into the server-supplied icon title if you minimise the PuTTY
+window, and change back to the server-supplied window title if you
+restore it. (If the server has not bothered to supply a window or
+icon title, none of this will happen.)
+
 \S{config-warnonclose} \q{Warn before closing window}
 
 \cfg{winhelp-topic}{behaviour.closewarn}
@@ -1109,15 +1152,20 @@ characters
 \cfg{winhelp-topic}{selection.linedraw}
 
 By default, when you copy and paste a piece of the PuTTY screen that
-contains VT100 line and box drawing characters, PuTTY will translate
-them into the \q{poor man's} line-drawing characters \c{+}, \c{-}
-and \c{|}. The checkbox \q{Don't translate line drawing chars}
-disables this feature, so line-drawing characters will be pasted as
-if they were in the normal character set. This will typically mean
-they come out mostly as \c{q} and \c{x}, with a scattering of
-\c{jklmntuvw} at the corners. This might be useful if you were
-trying to recreate the same box layout in another program, for
-example.
+contains VT100 line and box drawing characters, PuTTY will paste
+them in the form they appear on the screen: either Unicode line
+drawing code points, or the \q{poor man's} line-drawing characters
+\c{+}, \c{-} and \c{|}. The checkbox \q{Paste VT100 line drawing
+chars as lqqqk} disables this feature, so line-drawing characters
+will be pasted as the ASCII characters that were printed to produce
+them. This will typically mean they come out mostly as \c{q} and
+\c{x}, with a scattering of \c{jklmntuvw} at the corners. This might
+be useful if you were trying to recreate the same box layout in
+another program, for example.
+
+Note that this option only applies to line-drawing characters which
+\e{were} printed by using the VT100 mechanism. Line-drawing
+characters displayed using Unicode will paste as Unicode always.
 
 \S{config-rtfpaste} Pasting in Rich Text Format
 
@@ -1409,8 +1457,8 @@ connection.
 web server supporting the HTTP \cw{CONNECT} command, as documented
 in \W{http://www.ietf.org/rfc/rfc2817.txt}{RFC 2817}.
 
-\b Selecting \q{SOCKS} allows you to proxy your connections through
-a SOCKS server.
+\b Selecting \q{SOCKS 4} or \q{SOCKS 5} allows you to proxy your
+connections through a SOCKS server.
 
 \b Many firewalls implement a less formal type of proxy in which a
 user can make a Telnet connection directly to the firewall machine
@@ -1497,7 +1545,7 @@ and your SOCKS 4 server cannot deal with it, this might be why.
 If your proxy requires authentication, you can enter a username and
 a password in the \q{Username} and \q{Password} boxes.
 
-Authentication is not supported for all forms of proxy:
+Authentication is not fully supported for all forms of proxy:
 
 \b Username and password authentication is supported for HTTP
 proxies and SOCKS 5 proxies.
@@ -1531,7 +1579,7 @@ password you specify. To get a literal \c{%} sign, enter \c{%%}.
 If the Telnet proxy server prompts for a username and password
 before commands can be sent, you can use a command such as:
 
-\c %user\\n%pass\\nconnect %host %port\\n
+\c %user\n%pass\nconnect %host %port\n
 
 This will send your username and password as the first two lines to 
 the proxy, followed by a command to connect to the desired host and 
@@ -1539,15 +1587,6 @@ port. Note that if you do not include the \c{%user} or \c{%pass}
 tokens in the Telnet command, then the \q{Username} and \q{Password}
 configuration fields will be ignored.
 
-\S{config-proxy-socksver} Selecting the version of the SOCKS protocol
-
-\cfg{winhelp-topic}{proxy.socksver}
-
-SOCKS servers exist in two versions: version 5
-(\W{http://www.ietf.org/rfc/rfc1928.txt}{RFC 1928}) and the earlier
-version 4. The \q{SOCKS Version} radio buttons allow you to select
-which one to use, if you have selected the SOCKS proxy type.
-
 \H{config-telnet} The Telnet panel
 
 The Telnet panel allows you to configure options that only apply to
@@ -1962,7 +2001,8 @@ To add a port forwarding:
 \b Set one of the \q{Local} or \q{Remote} radio buttons, depending
 on whether you want to forward a local port to a remote destination
 (\q{Local}) or forward a remote port to a local destination
-(\q{Remote}).
+(\q{Remote}). Alternatively, select \q{Dynamic} if you want PuTTY to
+provide a local SOCKS proxy on a local port.
 
 \b Enter a source port number into the \q{Source port} box. For
 local forwardings, PuTTY will listen on this port of your PC. For
@@ -1970,10 +2010,12 @@ remote forwardings, your SSH server will listen on this port of the
 remote machine. Note that most servers will not allow you to listen
 on port numbers less than 1024.
 
-\b Enter a hostname and port number separated by a colon, in the
-\q{Destination} box. Connections received on the source port will be
-directed to this destination. For example, to connect to a POP-3
-server, you might enter \c{popserver.example.com:110}.
+\b If you have selected \q{Local} or \q{Remote} (this step is not
+needed with \q{Dynamic}), enter a hostname and port number separated
+by a colon, in the \q{Destination} box. Connections received on the
+source port will be directed to this destination. For example, to
+connect to a POP-3 server, you might enter
+\c{popserver.example.com:110}.
 
 \b Click the \q{Add} button. Your forwarding details should appear
 in the list box.
@@ -2007,7 +2049,7 @@ controls in the Tunnels panel to change this:
 \b The \q{Local ports accept connections from other hosts} option
 allows you to set up local-to-remote port forwardings in such a way
 that machines other than your client PC can connect to the forwarded
-port.
+port. (This also applies to dynamic SOCKS forwarding.)
 
 \b The \q{Remote ports do the same} option does the same thing for
 remote-to-local port forwardings (so that machines other than the
@@ -2124,7 +2166,7 @@ This is an SSH2-specific bug.
 
 \cfg{winhelp-topic}{ssh.bugs.derivekey2}
 
-Versions below 2.1.0 of the SSH server software from \cw{ssh.com}
+Versions below 2.0.11 of the SSH server software from \cw{ssh.com}
 compute the keys for the session encryption incorrectly. This
 problem can cause various error messages, such as \q{Incoming packet
 was garbled on decryption}, or possibly even \q{Out of memory}.
@@ -2172,6 +2214,24 @@ workaround, you need to enable it manually.
 
 This is an SSH2-specific bug.
 
+\S{config-ssh-bug-pksessid2} \q{Misuses the session ID in PK auth}
+
+\cfg{winhelp-topic}{ssh.bugs.pksessid2}
+
+Versions below 2.3 of OpenSSH require SSH2 public-key authentication
+to be done slightly differently: the data to be signed by the client
+contains the session ID formatted in a different way. If public-key
+authentication mysteriously does not work but the Event Log (see
+\k{using-eventlog}) thinks it has successfully sent a signature, it
+might be worth enabling the workaround for this bug to see if it
+helps.
+
+If this bug is detected, PuTTY will sign data in the way OpenSSH
+expects. If this bug is enabled when talking to a correct server,
+SSH2 public-key authentication will fail.
+
+This is an SSH2-specific bug.
+
 \H{config-file} Storing configuration in a file
 
 PuTTY does not currently support storing its configuration in a file