Add default Smack manifest for xorg-x11-xauth.spec
[pkgs/xorg/util/xorg-x11-xauth.git] / xauth.man
1 .\" Copyright 1993, 1998  The Open Group
2 .\"
3 .\" Permission to use, copy, modify, distribute, and sell this software and its
4 .\" documentation for any purpose is hereby granted without fee, provided that
5 .\" the above copyright notice appear in all copies and that both that
6 .\" copyright notice and this permission notice appear in supporting
7 .\" documentation.
8 .\"
9 .\" The above copyright notice and this permission notice shall be included
10 .\" in all copies or substantial portions of the Software.
11 .\"
12 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
13 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
14 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
15 .\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
16 .\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
17 .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
18 .\" OTHER DEALINGS IN THE SOFTWARE.
19 .\"
20 .\" Except as contained in this notice, the name of The Open Group shall
21 .\" not be used in advertising or otherwise to promote the sale, use or
22 .\" other dealings in this Software without prior written authorization
23 .\" from The Open Group.
24 .\"
25 .\"
26 .TH XAUTH 1 __xorgversion__
27 .SH NAME
28 xauth \- X authority file utility
29 .SH SYNOPSIS
30 .B xauth
31 [ \fB\-f\fP \fIauthfile\fP ] [ \fB\-vqibn\fP ] [ \fIcommand arg ...\fP ]
32 .SH DESCRIPTION
33 .PP
34 The \fIxauth\fP program is used to edit and display the authorization
35 information used in connecting to the X server.  This program is usually
36 used to extract authorization records from one machine and merge them in on
37 another (as is the case when using remote logins or granting access to
38 other users).  Commands (described below) may be entered interactively,
39 on the \fIxauth\fP command line, or in scripts.  Note that this program
40 does \fBnot\fP contact the X server except when the generate command is used.
41 Normally \fIxauth\fP is not used to create the authority file entry in
42 the first place; the program that starts the X server (often \fIxdm\fP
43 or \fIstartx\fP) does that.
44 .SH OPTIONS
45 The following options may be used with \fIxauth\fP.  They may be given
46 individually (e.g., \fI\-q \-i\|\fP) or may combined (e.g., \fI\-qi\|\fP).
47 .TP 8
48 .B "\-f \fIauthfile\fP"
49 This option specifies the name of the authority file to use.  By default,
50 \fIxauth\fP will use the file specified by the XAUTHORITY environment variable
51 or \fI\.Xauthority\fP in the user's home directory.
52 .TP 8
53 .B \-q
54 This option indicates that \fIxauth\fP should operate quietly and not print
55 unsolicited status messages.  This is the default if an \fIxauth\fP command
56 is given on the command line or if the standard output is not directed to a
57 terminal.
58 .TP 8
59 .B \-v
60 This option indicates that \fIxauth\fP should operate verbosely and print
61 status messages indicating the results of various operations (e.g., how many
62 records have been read in or written out).  This is the default if \fIxauth\fP
63 is reading commands from its standard input and its standard output is
64 directed to a terminal.
65 .TP 8
66 .B \-i
67 This option indicates that \fIxauth\fP should ignore any authority file
68 locks.  Normally, \fIxauth\fP will refuse to read or edit any authority files
69 that have been locked by other programs (usually \fIxdm\fP or another
70 \fIxauth\fP).
71 .TP 8
72 .B \-b
73 This option indicates that \fIxauth\fP should attempt to break any authority
74 file locks before proceeding.  Use this option only to clean up stale locks.
75 .TP 8
76 .B \-n
77 This option indicates that \fIxauth\fP should not attempt to resolve any
78 hostnames, but should simply always print the host address as stored in
79 the authority file.
80 .SH COMMANDS
81 The following commands may be used to manipulate authority files:
82 .TP 8
83 .B "add \fIdisplayname protocolname hexkey"
84 An authorization entry for the indicated display using the given protocol
85 and key data is added to the authorization file.  The data is specified as
86 an even-lengthed string of hexadecimal digits, each pair representing
87 one octet.  The first digit of each pair gives the most significant 4 bits
88 of the octet, and the second digit of the pair gives the least significant 4
89 bits.  For example, a 32 character hexkey would represent a 128-bit value.
90 A protocol name consisting of just a
91 single period is treated as an abbreviation for \fIMIT-MAGIC-COOKIE-1\fP.
92
93 .TP 8
94 .B "generate \fIdisplayname protocolname\fP \fR[\fPtrusted|untrusted\fR]\fP"
95 .B \fR[\fPtimeout \fIseconds\fP\fR]\fP  \fR[\fPgroup \fIgroup-id\fP\fR]\fP \fR[\fBdata \fIhexdata\fR]
96
97 This command is similar to add.  The main difference is that instead
98 of requiring the user to supply the key data, it connects to the
99 server specified in \fIdisplayname\fP and uses the SECURITY extension
100 in order to get the key data to store in the authorization file.  If
101 the server cannot be contacted or if it does not support the SECURITY
102 extension, the command fails.  Otherwise, an authorization entry for
103 the indicated display using the given protocol is added to the
104 authorization file.  A protocol name consisting of just a single
105 period is treated as an abbreviation for \fIMIT-MAGIC-COOKIE-1\fP.
106
107 If the \fBtrusted\fP option is used, clients that connect using this
108 authorization will have full run of the display, as usual.  If
109 \fBuntrusted\fP is used, clients that connect using this authorization
110 will be considered untrusted and prevented from stealing or tampering
111 with data belonging to trusted clients.  See the SECURITY extension
112 specification for full details on the restrictions imposed on
113 untrusted clients.  The default is \fBuntrusted\fP.
114
115 The \fBtimeout\fP option specifies how long in seconds this
116 authorization will be valid.  If the authorization remains unused (no
117 clients are connected with it) for longer than this time period, the
118 server purges the authorization, and future attempts to connect using
119 it will fail.  Note that the purging done by the server does \fBnot\fP
120 delete the authorization entry from the authorization file.  The
121 default timeout is 60 seconds.
122
123 The \fBgroup\fP option specifies the application group that clients
124 connecting with this authorization should belong to.  See the
125 application group extension specification for more details.  The
126 default is to not belong to an application group.
127
128 The \fBdata\fP option specifies data that the server should use to
129 generate the authorization.  Note that this is \fBnot\fP the same data
130 that gets written to the authorization file.  The interpretation of
131 this data depends on the authorization protocol.  The \fIhexdata\fP is
132 in the same format as the \fIhexkey\fP described in the add command.
133 The default is to send no data.
134
135 .TP 8
136 .B "[n]extract \fIfilename displayname..."
137 Authorization entries for each of the specified displays are written to the
138 indicated file.  If the \fInextract\fP command is used, the entries are written
139 in a numeric format suitable for non-binary transmission (such as secure
140 electronic mail).  The extracted entries can be read back in using the
141 \fImerge\fP and \fInmerge\fP commands.  If the filename consists of
142 just a single dash, the entries will be written to the standard output.
143 .TP 8
144 .B "[n]list \fR[\fIdisplayname\fP...]"
145 Authorization entries for each of the specified displays (or all if no
146 displays are named) are printed on the standard output.  If the \fInlist\fP
147 command is used, entries will be shown in the numeric format used by
148 the \fInextract\fP command; otherwise, they are shown in a textual format.
149 Key data is always displayed in the hexadecimal format given in the
150 description of the \fIadd\fP command.
151 .TP 8
152 .B "[n]merge \fR[\fIfilename\fP...]"
153 Authorization entries are read from the specified files and are merged into
154 the authorization database, superseding any matching existing entries. If
155 the \fInmerge\fP command is used, the numeric format given in the description
156 of the \fIextract\fP command is used.  If a filename consists of just a single
157 dash, the standard input will be read if it hasn't been read before.
158 .TP 8
159 .B "remove \fIdisplayname\fR..."
160 Authorization entries matching the specified displays are removed from the
161 authority file.
162 .TP 8
163 .B "source \fIfilename"
164 The specified file is treated as a script containing \fIxauth\fP commands
165 to execute.  Blank lines and lines beginning with a sharp sign (#) are
166 ignored.  A single dash may be used to indicate the standard input, if it
167 hasn't already been read.
168 .TP 8
169 .B "info"
170 Information describing the authorization file, whether or not any changes
171 have been made, and from where \fIxauth\fP commands are being read
172 is printed on the standard output.
173 .TP 8
174 .B "exit"
175 If any modifications have been made, the authority file is written out (if
176 allowed), and the program exits.  An end of file is treated as an implicit
177 \fIexit\fP command.
178 .TP 8
179 .B "quit"
180 The program exits, ignoring any modifications.  This may also be accomplished
181 by pressing the interrupt character.
182 .TP 8
183 .B "help [\fIstring\fP]"
184 A description of all commands that begin with the given string (or all
185 commands if no string is given) is printed on the standard output.
186 .TP 8
187 .B "?"
188 A short list of the valid commands is printed on the standard output.
189 .SH "DISPLAY NAMES"
190 Display names for the \fIadd\fP, \fI[n]extract\fP, \fI[n]list\fP,
191 \fI[n]merge\fP, and \fIremove\fP commands use the same format as the
192 DISPLAY environment variable and the common \fI\-display\fP command line
193 argument.  Display-specific information (such as the screen number)
194 is unnecessary and will be ignored.
195 Same-machine connections (such as local-host sockets,
196 shared memory, and the Internet Protocol hostname \fIlocalhost\fP) are
197 referred to as \fIhostname\fP/unix:\fIdisplaynumber\fP so that
198 local entries for different machines may be stored in one authority file.
199 .SH EXAMPLE
200 .PP
201 The most common use for \fIxauth\fP is to extract the entry for the
202 current display, copy it to another machine, and merge it into the
203 user's authority file on the remote machine:
204 .sp
205 .nf
206         %  xauth extract \- $DISPLAY | ssh otherhost xauth merge \-
207 .fi
208 .PP
209 .sp
210 The following command contacts the server :0 to create an
211 authorization using the MIT-MAGIC-COOKIE-1 protocol.  Clients that
212 connect with this authorization will be untrusted.
213 .nf
214         %  xauth generate :0 .
215 .fi
216 .SH ENVIRONMENT
217 This \fIxauth\fP program uses the following environment variables:
218 .TP 8
219 .B XAUTHORITY
220 to get the name of the authority file to use if the \fI\-f\fP option isn't
221 used.
222 .TP 8
223 .B HOME
224 to get the user's home directory if XAUTHORITY isn't defined.
225 .SH FILES
226 .TP 8
227 .I $HOME/.Xauthority
228 default authority file if XAUTHORITY isn't defined.
229 .SH "SEE ALSO"
230 X(__miscmansuffix__), Xsecurity(__miscmansuffix__), xhost(__appmansuffix__),
231 Xserver(__appmansuffix__), xdm(__appmansuffix__), startx(__appmansuffix__),
232 Xau(__libmansuffix__).
233 .SH BUGS
234 .PP
235 Users that have unsecure networks should take care to use encrypted
236 file transfer mechanisms to copy authorization entries between machines.
237 Similarly, the \fIMIT-MAGIC-COOKIE-1\fP protocol is not very useful in
238 unsecure environments.  Sites that are interested in additional security
239 may need to use encrypted authorization mechanisms such as Kerberos.
240 .PP
241 Spaces are currently not allowed in the protocol name.  Quoting could be
242 added for the truly perverse.
243 .SH AUTHOR
244 Jim Fulton, MIT X Consortium