/usr/share/doc/xtrace/README is in xtrace 1.3.1-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | XTRACE 1.1
----------
What strace is for system calls, xtrace is for X11 connections:
you hook it between one or more X11 clients and an X server and
it prints the requests going from client to server and the replies,
events and errors going the other way.
Short howto:
Run xtrace, which defaults to listening at :9 and forwarding to
your current $DISPLAY.
Then simply start other clients after setting DISPLAY=:9 or
giving them -display :9 and see all the data flowing in a far
to verbose form.
Things still to do (any volunteers?):
- test, test, test
(currently only what I needed is tested, and as I calculated
offsets by hand and copy&pasted a lot, there might still be
some errors).
- implement the common extensions.
(currently only implemented are the base protocol and
a limted number of extensions)
- make it less verbose or even better allow to control
verbosity.
- implement some filtering
- implement life modification. (Currently only supported
by changing the source, look for requestButtonGrab in
parse.c for an example. Being able to do this via
command line would be nice.)
- more checking of protocol specifications, there are many
easy to make errors that are still not tested for.
- script to translate xorg's protocol xml files to .proto language
- allow generic dictionaries (generalizing the hard-coded atom
support) and giving symbolic names to things (like GC1, GC2,...,
that would make some logs much easier to compare).
|