1X11TRACE(1)                        X11TRACE                        X11TRACE(1)
2
3
4

NAME

6       x11trace - trace communication between X11 client and server
7

SYNOPSIS

9       x11trace [ options ] [ -s | -k ] [ [ -W ] [ -- ] command args ... ]
10

DESCRIPTION

12       x11trace  fakes  an  X  server and forwards all connections to a real X
13       server, displaying the communication between clients in (well, theoret‐
14       ically)  human readable form.  If a command is given, x11trace executes
15       the named command with $DISPLAY set to the faked X server. If that com‐
16       mand  exits before any connections are made, x11trace exits immediately
17       unless -W is specified.
18

OPTIONS

20       -I directory
21              Look into directory for protocol description files.   (i.e.  the
22              directory where the .proto files can be found).
23
24       -s | --stopwhendone (default)
25              Terminate  when  all  forwarded  clients have disconnected.  (Or
26              when a program was run once the program  has  finished  and  all
27              connections are closed).
28
29       -k | --keeprunning
30              If all clients disconnected, wait for new ones to connect.
31
32       -W | --waitforclient
33              Do  not stop when the started program terminates before any con‐
34              nection was made.  (Might be necessary if the program  forks  to
35              background).
36
37       -d name | --display name
38              Forward connections to the X server specified by name instead of
39              the one specified by the environment variable DISPLAY.
40
41       -D name | --fakedisplay name
42              Fake display name instead of $FAKEDISPLAY or :9 respectively.
43
44       -f filename | --authfile filename
45              Add an -f filename to the arguments for all calls  to  xauth  to
46              get the authentication tokens of the X server to connect to.
47
48       -F filename | --newauthfile filename
49              Add  an  -f  filename to the arguments for all calls to xauth to
50              save the authentication tokens to connect to the faked X server.
51
52       -c | --copyauthentication (default)
53              Copy the authentication tokens for the X server to connect to so
54              that clients connecting to our fake server will use them.
55
56              The  commands run are roughly equivalent to: xauth add $FAKEDIS‐
57              PLAY . `xauth  list  $DISPLAY  |  awk  '$2=="MIT-MAGIC-COOKIE-1"
58              {print $3}'`
59
60              Not  that  only MIT-MAGIC-COOKIE-1 tokens are copied as x11trace
61              does not yet support to change the authentication tokens so that
62              XDM-AUTHORIZATION-1 would be possible.
63
64       -n | --nocopyauthentication
65              Do  not  call xauth and do fiddle with authentication tokens but
66              leave that to the user to handle.
67
68       -e | --denyextensions
69              Modify all server replies to say there are no extensions  avail‐
70              able.   (As x11trace does supports only a small number of exten‐
71              sions anyway and calls all extended requests "unknown"  and  all
72              replies to such requests "unexpected").
73
74       -w | --readwritedebug
75              Print how many bytes are read and/or written when.
76
77       -m count | --maxklistlength count
78              Print only the first count many elements of all lists.
79
80       -i | --interactive
81              Only  sent requests from the client to the server after interac‐
82              tive confirmation.  Confirmation is given by pressing enter or a
83              number followed by enter via stdin.  This can give funny results
84              when multiple clients are tunneled.
85
86       -o | --outfile filename
87              Dump output into filename instead of stdout.
88
89       -b | --buffered
90              Do not write every line on its own but wait  until  buffers  are
91              full.   Speeds up things a little bit when outputting to a file.
92              Not very useful at all together with -i.
93
94       --timestamps
95              Print a timestamp before each line.
96
97              Note that the time a packet is printed is  between  the  time  a
98              packet  is  received and the time a packet is sent, but it gives
99              no other information than that.
100
101       --relative-timestamps
102              Print a timestamp relative to the beginning  of  the  connection
103              before each line.
104
105              Note  that  the  time  a packet is printed is between the time a
106              packet is received and the time a packet is sent, but  it  gives
107              no other information than that.
108
109
110       --monotonic-timestamps
111              Print  a  CLOCK_MONOTONIC  (see clock_gettime(3)) timestamp each
112              time a package is printed.  This is likely to be the  uptime  of
113              your system.
114
115              Note  that  the  time  a packet is printed is between the time a
116              packet is received and the time a packet is sent, but  it  gives
117              no other information than that.
118
119       --print-offsets
120              Print  offsets  of  all  fields (useful to debug nested lists in
121              protocol descriptions)
122
123       --print-counts
124              Print counts (useful to debug lists in protocol descriptions)
125

ENVIRONMENT VARIABLES

127       DISPLAY
128              Without --display the content of this variable is used to deter‐
129              mine the server to connect to. (And without -n given to xauth to
130              get the authentication tokens for this display.)
131
132       FAKEDISPLAY
133              Without --fakedisplay the content of this variable  is  used  to
134              determine  how  to  listen for clients. (And without -n given to
135              xauth to set the authentication tokens for  this  display.)   If
136              neither is given, x11trace will try :9
137
138       XAUTHORITY
139              Without  -n  and  without  -f or -F your xauth program will most
140              likely look into this variable for  the  file  to  get/save  the
141              authentication tokens from/into. If this is not set it will most
142              likely use $HOME/.Xauthority.
143
144

REPORTING BUGS

146       Report bugs to <brlink@debian.org> or the Debian BTS.
147

SEE ALSO

149       xauth(1), x(7x),
150
152       Copyright © 2005 Bernhard R. Link
153       This is free software; see the source for copying conditions. There  is
154       NO  warranty;  not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
155       PURPOSE.
156
157
158
159x11trace                         26 June 2009                      X11TRACE(1)
Impressum