xref: /openbsd-src/usr.bin/cu/cu.1 (revision f2da64fbbbf1b03f09f390ab01267c93dfd77c4c)
1.\"	$OpenBSD: cu.1,v 1.15 2015/05/18 09:35:05 nicm Exp $
2.\"
3.\" Copyright (c) 1980, 1990, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. Neither the name of the University nor the names of its contributors
15.\"    may be used to endorse or promote products derived from this software
16.\"    without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28.\" SUCH DAMAGE.
29.\"
30.Dd $Mdocdate: May 18 2015 $
31.Dt CU 1
32.Os
33.Sh NAME
34.Nm cu
35.Nd serial terminal emulator
36.Sh SYNOPSIS
37.Nm
38.Op Fl d
39.Op Fl l Ar line
40.Op Fl s Ar speed | Fl Ar speed
41.Nm
42.Op Ar host
43.Sh DESCRIPTION
44.Nm
45is used to connect to another system over a serial link.
46In the era before modern networks, it was typically used to
47connect to a modem in order to dial in to a remote host.
48It is now frequently used for tasks such as attaching to the
49serial console of another machine for administrative or
50debugging purposes.
51.Pp
52The options are as follows:
53.Bl -tag -width 4n
54.It Fl d
55Specify that the line is directly connected and
56.Nm
57should not allow the driver to block waiting for a carrier to be detected.
58.It Fl l Ar line
59Specify the line to use.
60Either of the forms like
61.Pa cua00
62or
63.Pa /dev/cua00
64are permitted.
65The default is
66.Pa /dev/cua00 .
67See
68.Xr cua 4
69for information on terminal devices.
70Users in group
71.Dq dialer
72are permitted to use
73.Xr cua 4
74devices by default.
75.It Fl s Ar speed | Fl Ar speed
76Set the speed of the connection.
77The default is 9600.
78.El
79.Pp
80If
81.Ar host
82is given,
83.Nm
84uses the
85.Xr remote 5
86database to retrieve the
87.Sy dc Pq directly connected ,
88.Sy dv Pq device
89and
90.Sy br Pq baud rate
91capabilities for that host.
92The
93.Nm
94utility ignores other capabilities found in that database.
95.Pp
96Typed characters are normally transmitted directly to the remote
97machine (which does the echoing as well).
98A tilde
99.Pq Ql ~
100appearing as the first character of a line is an escape signal; the
101following are recognized:
102.Bl -tag -offset indent -width Fl
103.It Ic ~^D No or Ic ~.
104Drop the connection and exit.
105Only the connection is dropped \(en the login session is not terminated.
106.It Ic ~\*(Gt
107Copy file from local to remote.
108.Nm
109prompts for the name of a local file to transmit.
110.It Ic ~$
111Pipe the output from a local
112.Ux
113process to the remote host.
114The command string sent to the local
115.Ux
116system is processed by the shell.
117.It Ic ~#
118Send a
119.Dv BREAK
120to the remote system.
121.It Ic ~^Z
122Stop
123.Nm
124(only available with job control).
125.It Ic ~C
126Fork a child process on the local system to perform special protocols
127such as XMODEM.
128The child program will be run with the following arrangement of
129file descriptors:
130.Bd -literal -offset indent
1310 \*(Lt-\*(Gt remote tty in
1321 \*(Lt-\*(Gt remote tty out
1332 \*(Lt-\*(Gt local tty stderr
134.Ed
135.It Ic ~D
136Deassert the data terminal ready (DTR) line briefly.
137.It Ic ~R
138Record all output from the remote system to a file.
139If the given file already exists, it is appended to.
140If no file is specified, any existing recording is stopped.
141.It Ic ~S
142Change the speed of the connection.
143.It Ic ~X
144Send a file with the XMODEM protocol.
145.It Ic ~?
146Get a summary of the tilde escapes.
147.El
148.Pp
149When
150.Nm
151prompts for an argument, for example during setup of a file transfer,
152the line typed may be edited with the standard erase and kill characters.
153A null line in response to a prompt, or an interrupt, will abort the
154dialogue and return the user to the remote machine.
155.Pp
156.Nm
157guards against multiple users connecting to a remote system by opening
158modems and terminal lines with exclusive access.
159.Sh ENVIRONMENT
160.Bl -tag -width REMOTEXXX
161.It Ev HOST
162The default value for
163.Ar host
164if none is specified via the command line.
165.It Ev REMOTE
166A system description, or an absolute path to a
167.Xr remote 5
168system description database.
169.El
170.Sh FILES
171.Bl -tag -width /etc/remote
172.It Pa /etc/remote
173host description file
174.El
175.Sh EXIT STATUS
176.Ex -std cu
177.Sh SEE ALSO
178.Xr remote 5
179.Sh HISTORY
180The
181.Nm
182command appeared in
183.Bx 4.2 .
184This version was written for
185.Ox 5.4
186by Nicholas Marriott.
187