Provided by: xtrace_1.4.0-1_amd64 bug

NAME

       xtrace - trace communication between X11 client and server

SYNOPSIS

       xtrace [ options ] [ -s | -k ] [ [ -W ] [ -- ] command args ... ]

DESCRIPTION

       Xtrace  fakes  an  X server and forwards all connections to a real X server, displaying the communication
       between clients in (well, theoretically) human readable form.  If a command is given, xtrace executes the
       named command with $DISPLAY set to the faked X server. If that command exits before any  connections  are
       made, xtrace exits immediately unless -W is specified.

OPTIONS

       -I directory
              Look  into  directory  for protocol description files.  (i.e. the directory where the .proto files
              can be found).

       -s | --stopwhendone (default)
              Terminate when all forwarded clients have disconnected.  (Or when  a  program  was  run  once  the
              program has finished and all connections are closed).

       -k | --keeprunning
              If all clients disconnected, wait for new ones to connect.

       -W | --waitforclient
              Do  not  stop  when  the  started  program  terminates  before any connection was made.  (Might be
              necessary if the program forks to background).

       -d name | --display name
              Forward connections to the X server specified  by  name  instead  of  the  one  specified  by  the
              environment variable DISPLAY.

       -D name | --fakedisplay name
              Fake display name instead of $FAKEDISPLAY or :9 respectively.

       -f filename | --authfile filename
              Add an -f filename to the arguments for all calls to xauth to get the authentication tokens of the
              X server to connect to.

       -F filename | --newauthfile filename
              Add  an  -f  filename to the arguments for all calls to xauth to save the authentication tokens to
              connect to the faked X server.

       -c | --copyauthentication (default)
              Copy the authentication tokens for the X server to connect to so that clients  connecting  to  our
              fake server will use them.

              The  commands  run  are roughly equivalent to: xauth add $FAKEDISPLAY . `xauth list $DISPLAY | awk
              '$2=="MIT-MAGIC-COOKIE-1" {print $3}'`

              Not that only MIT-MAGIC-COOKIE-1 tokens are copied as xtrace does not yet support  to  change  the
              authentication tokens so that XDM-AUTHORIZATION-1 would be possible.

       -n | --nocopyauthentication
              Do not call xauth and do fiddle with authentication tokens but leave that to the user to handle.

       -e | --denyextensions
              Modify all server replies to say there are no extensions available.  (As xtrace does supports only
              a  small  number of extensions anyway and calls all extended requests "unknown" and all replies to
              such requests "unexpected").

       -w | --readwritedebug
              Print how many bytes are read and/or written when.

       -m count | --maxklistlength count
              Print only the first count many elements of all lists.

       -i | --interactive
              Only sent requests from the client to the server after interactive confirmation.  Confirmation  is
              given by pressing enter or a number followed by enter via stdin.  This can give funny results when
              multiple clients are tunneled.

       -o | --outfile filename
              Dump output into filename instead of stdout.

       -b | --buffered
              Do not write every line on its own but wait until buffers are full.  Speeds up things a little bit
              when outputting to a file.  Not very useful at all together with -i.

       --timestamps
              Print a timestamp before each line.

              Note  that  the  time  a packet is printed is between the time a packet is received and the time a
              packet is sent, but it gives no other information than that.

       --relative-timestamps
              Print a timestamp relative to the beginning of the connection before each line.

              Note that the time a packet is printed is between the time a packet is received  and  the  time  a
              packet is sent, but it gives no other information than that.

       --monotonic-timestamps
              Print  a CLOCK_MONOTONIC (see clock_gettime(3)) timestamp each time a package is printed.  This is
              likely to be the uptime of your system.

              Note that the time a packet is printed is between the time a packet is received  and  the  time  a
              packet is sent, but it gives no other information than that.

       --print-offsets
              Print offsets of all fields (useful to debug nested lists in protocol descriptions)

       --print-counts
              Print counts (useful to debug lists in protocol descriptions)

ENVIRONMENT VARIABLES

       DISPLAY
              Without --display the content of this variable is used to determine the server to connect to. (And
              without -n given to xauth to get the authentication tokens for this display.)

       FAKEDISPLAY
              Without --fakedisplay the content of this variable is used to determine how to listen for clients.
              (And  without -n given to xauth to set the authentication tokens for this display.)  If neither is
              given, xtrace will try :9

       XAUTHORITY
              Without -n and without -f or -F your xauth program will most likely look into  this  variable  for
              the  file  to get/save the authentication tokens from/into. If this is not set it will most likely
              use $HOME/.Xauthority.

REPORTING BUGS

       Report bugs to the Debian BTS.

SEE ALSO

       xauth(1), x(7x),

COPYRIGHT

       Copyright © 2005 Bernhard R. Link
       This is free software; see the source for  copying  conditions.  There  is  NO  warranty;  not  even  for
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

xtrace                                            26 June 2009                                         XTRACE(1)