]> git.lizzy.rs Git - plan9front.git/blob - sys/man/1/vnc
merge
[plan9front.git] / sys / man / 1 / vnc
1 .TH VNC 1
2 .SH NAME
3 vncs, vncv \- remote frame buffer server and viewer for Virtual Network Computing (VNC)
4 .SH SYNOPSIS
5 .B vncs
6 [
7 .B -v
8 ]
9 [
10 .B -c
11 .I cert
12 ]
13 [
14 .B -d
15 .BI : display
16 ]
17 [
18 .B -g
19 .IB width x height
20 ]
21 [
22 .B -p
23 .I pixfmt
24 ]
25 [
26 .B -x
27 .I net
28 ]
29 [
30 .I cmd
31 [
32 .I args
33 ...
34 ]
35 ]
36 .PP
37 .B vncs
38 .B -k
39 .BI : display
40 [
41 .B -x
42 .I net
43 ]
44 .PP
45 .B vncv
46 [
47 .B -cstv
48 ]
49 [
50 .B -e
51 .I encodings
52 ]
53 [
54 .B -l
55 .I charset
56 ]
57 [
58 .B -k
59 .I keypattern
60 ]
61 .IR host [\fL: n ]
62 .SH DESCRIPTION
63 VNC is a lightweight protocol
64 for accessing graphical applications
65 remotely.  The protocol allows one or more
66 clients to connect to a server.
67 While connected, clients display the frame buffer
68 presented by the server and can send mouse events,
69 keyboard events, and exchange snarf buffers.
70 The server persists across viewer sessions, so that
71 the virtual application can be accessed from various locations
72 as its owner moves around.
73 .PP
74 VNC displays have names of the form
75 .IB host : n \fR,
76 where
77 .I host
78 is the machine's network name and
79 .I n
80 is a small integer identifier; display
81 .I n
82 is served on TCP port
83 .RI 5900+ n .
84 .PP
85 .I Vncs
86 starts a new virtual frame buffer in memory, simulating
87 a Plan 9 terminal running
88 .I cmd
89 .IR args ,
90 by default an interactive shell.
91 As viewers connect, each is authenticated using a 
92 (rather breakable) challenge-response protocol using
93 the user's Inferno/POP password.
94 .PP
95 The options are:
96 .TF "\fL-p \fIpixfmt"
97 .PD
98 .TP
99 .B -c \fIcert
100 start TLS on each viewer connection using the certificate
101 in the file
102 .IR cert .
103 The corresponding private key must be loaded into
104 the server's
105 .IR factotum (4).
106 When serving TLS connections, the base port is
107 35729 rather than 5900.
108 .TP
109 .B -d :\fIn
110 run on display
111 .I n ;
112 without this option, the server searches
113 for an unused display.
114 .TP
115 .B -g \fIwidth\fBx\fIheight\fR
116 set the virtual frame buffer to be
117 .IB width x height
118 (default
119 1024x768)
120 pixels.
121 .TP
122 .B -p \fIpixfmt
123 set the virtual frame buffer's internal pixel format to
124 .I pixfmt
125 (default
126 .BR r5g6b5 ).
127 .TP
128 .B -v
129 print verbose output to standard error.
130 .TP
131 .B -x \fInet
132 announce on an alternate network interface.
133 Because of the weak authentication protocol and
134 default lack of encryption, this option must
135 be accompanied by
136 .BR -c .
137 .PD
138 .PP
139 The command
140 .B vncs
141 .B -k
142 .BI : n
143 kills the VNC server running on display
144 .IR n .
145 .PP
146 .I Vncv
147 provides access to remote display
148 .IB host : n \fR.
149 It resizes its window to be the smaller of the
150 remote frame buffer size and the local screen.
151 .PP
152 The options are:
153 .TP
154 .B -c
155 when connecting to 8-bit displays, request
156 .B r4g4b4
157 pixels rather than 
158 .B r3g3b2
159 pixels.
160 This takes up more bandwidth but usually gives
161 significantly better matching to the Plan 9 color map.
162 .TP
163 .B -e \fIencodings
164 set the ordered list of allowed frame buffer update encodings.
165 The default (and full) set is
166 .B copyrect
167 .B corre
168 .B hextile
169 .B rre
170 .BR raw .
171 The encodings should be given as a single space-separated argument
172 (quoted when using the shell).
173 .TP
174 .B -l \fIcharset
175 sets the character set (see
176 .IR tcs (1))
177 used by the server to encode clipboard text. The default is
178 .B utf-8.
179 .TP
180 .B -k \fIkeypattern
181 add 
182 .I keypattern
183 to the pattern used to select a key from 
184 .IR factotum (4).
185 .TP
186 .B -s
187 share the display with extant viewers;
188 by default extant viewers are closed
189 when a new viewer connects.
190 .TP
191 .B -t
192 start TLS on the connection.
193 .TP
194 .B -v
195 print verbose output to standard error.
196 .PD
197 .PP
198 The VNC protocol represents keyboard input as
199 key up/down events.
200 Plan 9 does not expose the state of the
201 Ctl and Shift keys except as it can be inferred
202 from receipt of control or shifted characters.
203 It does not expose the state of the Alt key at all,
204 since the Alt key is used to compose Unicode characters
205 (see
206 .IR keyboard (6)).
207 .I Vncv
208 correctly handles the sending of control and shifted
209 characters.
210 To support systems that use key sequences like Alt-X
211 (or worse, Alt-mouse-click), typing the Plan 9 compose
212 sequences
213 .B Alt
214 .B Z
215 .B A
216 (for Alt), 
217 .B Alt
218 .B Z
219 .B C
220 (for Ctrl),
221 and
222 .B Alt
223 .B Z
224 .B S
225 (for Shift)
226 will send a ``key down'' message for
227 the given key.
228 A corresponding ``key up'' message
229 will be sent after the next key is pressed,
230 or when the sequence is retyped,
231 whichever happens first.
232 .SH SOURCE
233 .B /sys/src/cmd/vnc
234 .SH "SEE ALSO
235 .IR drawterm (8)
236 .br
237 .B http://www.uk.research.att.com/vnc
238 .SH BUGS
239 If the remote frame buffer is larger than the local screen,
240 only the upper left corner can be accessed.
241 .PP
242 .I Vncv
243 does no verification of the TLS certificate presented
244 by the server.
245 .PP
246 .I Vncv
247 supports only version 3.3 of the RFB protocol.