1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-06-30 19:12:48 -05:00

Support for Windows PuTTY connecting straight to a local serial port

in place of making a network connection. This has involved a couple
of minor infrastructure changes:
 - New dlg_label_change() function in the dialog.h interface, which
   alters the label on a control. Only used, at present, to switch
   the Host Name and Port boxes into Serial Line and Speed, which
   means that any platform not implementing serial connections (i.e.
   currently all but Windows) does not need to actually do anything
   in this function. Yet.
 - New small piece of infrastructure: cfg_launchable() determines
   whether a Config structure describes a session ready to be
   launched. This was previously determined by seeing if it had a
   non-empty host name, but it has to check the serial line as well
   so there's a centralised function for it. I haven't gone through
   all front ends and arranged for this function to be used
   everywhere it needs to be; so far I've only checked Windows.
 - Similarly, cfg_dest() returns the destination of a connection
   (host name or serial line) in a text format suitable for putting
   into messages such as `Unable to connect to %s'.

[originally from svn r6815]
This commit is contained in:
Simon Tatham
2006-08-28 10:35:12 +00:00
parent 38f003dbe9
commit 34f747421d
23 changed files with 1056 additions and 43 deletions

View File

@ -25,18 +25,25 @@ filled in before PuTTY can open a session at all.
\b The \q{Host Name} box is where you type the name, or the \i{IP
address}, of the server you want to connect to.
\b The \q{Protocol} radio buttons let you choose what type of
\b The \q{Connection type} radio buttons let you choose what type of
connection you want to make: a \I{raw TCP connections}raw
connection, a \i{Telnet} connection, an \i{Rlogin} connection
or an \i{SSH} connection. (See \k{which-one} for a
summary of the differences between SSH, Telnet and rlogin, and
\k{using-rawprot} for an explanation of \q{raw} connections.)
connection, a \i{Telnet} connection, an \i{Rlogin} connection, an
\i{SSH} connection, or a connection to a local \i{serial line}. (See
\k{which-one} for a summary of the differences between SSH, Telnet
and rlogin; see \k{using-rawprot} for an explanation of \q{raw}
connections; see \k{using-serial} for information about using a
serial line.)
\b The \q{Port} box lets you specify which \i{port number} on the server
to connect to. If you select Telnet, Rlogin, or SSH, this box will
be filled in automatically to the usual value, and you will only
need to change it if you have an unusual server. If you select Raw
mode, you will almost certainly need to fill in the \q{Port} box.
\b The \q{Port} box lets you specify which \i{port number} on the
server to connect to. If you select Telnet, Rlogin, or SSH, this box
will be filled in automatically to the usual value, and you will
only need to change it if you have an unusual server. If you select
Raw mode, you will almost certainly need to fill in the \q{Port} box
yourself.
If you select \q{Serial} from the \q{Connection type} radio buttons,
the \q{Host Name} and \q{Port} boxes are replaced by \q{Serial line}
and \q{Speed}; see \k{config-serial} for more details of these.
\S{config-saving} \ii{Loading and storing saved sessions}
@ -2912,6 +2919,95 @@ would expect.
This is an SSH-2-specific bug.
\H{config-serial} The Serial panel
The \i{Serial} panel allows you to configure options that only apply
when PuTTY is connecting to a local \I{serial port}\i{serial line}.
\S{config-serial-line} Selecting a serial line to connect to
\cfg{winhelp-topic}{serial.line}
The \q{Serial line to connect to} box allows you to choose which
serial line you want PuTTY to talk to, if your computer has more
than one serial port.
On Windows, the first serial line is called \cw{COM1}, and if there
is a second it is called \cw{COM2}, and so on.
This configuration setting is also visible on the Session panel,
where it replaces the \q{Host Name} box (see \k{config-hostname}) if
the connection type is set to \q{Serial}.
\S{config-serial-speed} Selecting the speed of your serial line
\cfg{winhelp-topic}{serial.speed}
The \q{Speed} box allows you to choose the speed (or \q{baud rate})
at which to talk to the serial line. Typical values might be 9600,
19200, 38400 or 57600. Which one you need will depend on the device
at the other end of the serial cable; consult the manual for that
device if you are in doubt.
This configuration setting is also visible on the Session panel,
where it replaces the \q{Port} box (see \k{config-hostname}) if the
connection type is set to \q{Serial}.
\S{config-serial-databits} Selecting the number of data bits
\cfg{winhelp-topic}{serial.databits}
The \q{Data bits} box allows you to choose how many data bits are
transmitted in each byte sent or received through the serial line.
Typical values are 7 or 8.
\S{config-serial-stopbits} Selecting the number of stop bits
\cfg{winhelp-topic}{serial.stopbits}
The \q{Stop bits} box allows you to choose how many stop bits are
used in the serial line protocol. Typical values are 1, 1.5 or 2.
\S{config-serial-parity} Selecting the serial parity checking scheme
\cfg{winhelp-topic}{serial.parity}
The \q{Parity} box allows you to choose what type of parity checking
is used on the serial line. The settings are:
\b \q{None}: no parity bit is sent at all.
\b \q{Odd}: an extra parity bit is sent alongside each byte, and
arranged so that the total number of 1 bits is odd.
\b \q{Even}: an extra parity bit is sent alongside each byte, and
arranged so that the total number of 1 bits is even.
\b \q{Mark}: an extra parity bit is sent alongside each byte, and
always set to 1.
\b \q{Space}: an extra parity bit is sent alongside each byte, and
always set to 0.
\S{config-serial-flow} Selecting the serial flow control scheme
\cfg{winhelp-topic}{serial.flow}
The \q{Flow control} box allows you to choose what type of flow
control checking is used on the serial line. The settings are:
\b \q{None}: no flow control is done. Data may be lost if either
side attempts to send faster than the serial line permits.
\b \q{XON/XOFF}: flow control is done by sending XON and XOFF
characters within the data stream.
\b \q{RTS/CTS}: flow control is done using the RTS and CTS wires on
the serial line.
\b \q{DSR/DTR}: flow control is done using the DSR and DTR wires on
the serial line.
\H{config-file} \ii{Storing configuration in a file}
PuTTY does not currently support storing its configuration in a file

View File

@ -19,13 +19,16 @@ In the \q{Host Name} box, enter the Internet \i{host name} of the server
you want to connect to. You should have been told this by the
provider of your login account.
Now select a login \i{protocol} to use, from the \q{Protocol}
Now select a login \i{protocol} to use, from the \q{Connection type}
buttons. For a login session, you should select \i{Telnet},
\i{Rlogin} or \i{SSH}. See \k{which-one} for a description of the
differences between the three protocols, and advice on which one to
use. The fourth protocol, \I{raw protocol}\e{Raw}, is not used for
interactive login sessions; you would usually use this for debugging
other Internet services (see \k{using-rawprot}).
other Internet services (see \k{using-rawprot}). The fifth option,
\e{Serial}, is used for connecting to a local serial line, and works
somewhat differently: see \k{using-serial} for more information on
this.
When you change the selected protocol, the number in the \q{Port}
box will change. This is normal: it happens because the various

View File

@ -491,6 +491,37 @@ protocol}\q{Raw}, from the \q{Protocol} buttons in the \q{Session}
configuration panel. (See \k{config-hostname}.) You can then enter a
host name and a port number, and make the connection.
\H{using-serial} Connecting to a local serial line
PuTTY can connect directly to a local serial line as an alternative
to making a network connection. In this mode, text typed into the
PuTTY window will be sent straight out of your computer's serial
port, and data received through that port will be displayed in the
PuTTY window. You might use this mode, for example, if your serial
port is connected to another computer which has a serial connection.
To make a connection of this type, simply select \q{Serial} from the
\q{Connection type} radio buttons on the \q{Session} configuration
panel (see \k{config-hostname}). The \q{Host Name} and \q{Port}
boxes will transform into \q{Serial line} and \q{Speed}, allowing
you to specify which serial line to use (if your computer has more
than one) and what speed (baud rate) to use when transferring data.
For further configuration options (data bits, stop bits, parity,
flow control), you can use the \q{Serial} configuration panel (see
\k{config-serial}).
After you start up PuTTY in serial mode, you might find that you
have to make the first move, by sending some data out of the serial
line in order to notify the device at the other end that someone is
there for it to talk to. This probably depends on the device. If you
start up a PuTTY serial session and nothing appears in the window,
try pressing Return a few times and see if that helps.
A serial line provides no well defined means for one end of the
connection to notify the other that the connection is finished.
Therefore, PuTTY in serial mode will remain connected until you
close the window using the close button.
\H{using-cmdline} The PuTTY command line
PuTTY can be made to do various things without user intervention by