1XSCOPE(1)                   General Commands Manual                  XSCOPE(1)
2
3
4

NAME

6       xscope - X Window Protocol Viewer
7

SYNOPSIS

9       xscope  [-i<in-port>] [-o<out-port>] [-h<server-host>] [-d<display-num‐
10       ber>] [-f<filename>] [-I] [-S<n>]  [-T]  [-A]  [-a<level>]  [-n<server-
11       host>] [-D<level>] [-q] [-r] [-v<level>] [-V] [-t]
12

DESCRIPTION

14       Xscope  sits  in-between an X11 client and an X11 server and prints the
15       contents of each request, reply, error, or event that  is  communicated
16       between  them.  Xscope can decode the core X11 protocol and several ex‐
17       tensions, including BIG-REQUESTS, DAMAGE, LBX, MIT-SHM,  NCD-WinCenter‐
18       Pro,  RANDR,  and  RENDER.  This information can be useful in debugging
19       and performance tuning of X11 servers and clients.
20
21       To operate, xscope must know the host, port, and display to use to con‐
22       nect to the X11 server.  In addition, it must know the port on which it
23       should listen for X11 clients.  Two cases are common:
24
25       (1) The X11 server is on the same host as xscope.
26            In this case, the input port for xscope should be selected  as  an
27            X11 server on a different display, and the client DISPLAY argument
28            adjusted to select xscope .  For example, if the X11 server is  on
29            port  6001,  display 1, then xscope can use port 6002 as its input
30            port.  The client can use display 1 for direct access  to  X11  or
31            display 2 for access to xscope.
32
33       (2) The X11 server is on a different host than xscope.
34            In  this case the same input and output ports can be used, and the
35            host component of the DISPLAY is used to select xscope or X11.
36

ARGUMENTS

38       -i<in-port>
39                 Specify the port that xscope will use to take  requests  from
40                 clients (defaults to 1).  For X11, this port is automatically
41                 biased by 6000.
42
43       -o<output-port>
44                 Determines the port that xscope will use to  connect  to  X11
45                 (defaults  to 0).  For X11, this port is automatically biased
46                 by 6000.
47
48       -h<host>  Determines the host that  xscope will use  to  find  its  X11
49                 server.
50
51       -d<display-number>
52                 Defines  the  display number.  The display number is added to
53                 the input and output port to give the actual ports which  are
54                 used by  xscope.
55
56       -f<filename>
57                 Instead of decoding a live session, reads previously captured
58                 raw data from a file to decode.
59
60       -I        Enter interactive mode at startup.
61
62       -S<n>     Toggle output on or off when SIGUSR1 is received.  If n is 0,
63                 the  initial  state  is off.  If n is 1, the initial state is
64                 on.
65
66       -T        Transpose some output with an offset of 0x20.
67
68       -A        Enables tracing of the Network Audio System (NAS) protocol as
69                 well,  using  a port number derived by adding 2000 to the X11
70                 port number.
71
72       -a<level> NAS verbose output level (1 to 4, 1 by default).
73
74       -n<server-host>
75                 Set the hostname of the NAS server to connect to.
76
77       -D<level> Print debugging information at the specified  level  (255  by
78                 default) :
79
80                 - 2, Trace each procedure entry
81
82                 - 4, I/O, connections
83
84                 - 8, Scope internals
85
86                 - 16, Message protocol
87
88                 - 32 to 64, Was malloc, now unused
89
90                 - 128 to 256, Really low level
91
92       -q        Quiet  output  mode.   Gives  only  the  names  of  requests,
93                 replies, errors, and events, but does not indicate contents.
94
95       -r        Print only raw data without decoding it.
96
97       -v<level> Determines the level of printing which xscope  will  provide.
98                 The  level  can be 0 (same as quiet mode), 1 (default), 2, 3,
99                 4, 5.  The larger numbers give more and more output.  For ex‐
100                 ample,  a successful setup returns a string which is the name
101                 of the vendor of the X11 server.  At level  1,  the  explicit
102                 field  giving the length of the string is suppressed since it
103                 can be inferred from the string.  At level 2  and  above  the
104                 length is explicitly printed.
105
106       -V        Print version information and exit.
107
108       -t        Terminate xscope when all clients close.
109

INTERACTIVE MODE

111       When  xscope  receives  an interrupt signal (normally generated by Con‐
112       trol-C) or is started with the -I flag, it enters an  interactive  mode
113       in which it prompts for commands.  Available commands in this mode are:
114
115       audio, a  Show current verbosity level for NAS protocol packets.
116
117       audio n, a n
118                 Set current verbosity level for NAS protocol packets to n.
119
120       break, b  List currently defined breakpoints.
121
122       break request..., b request...
123                 Create a breakpoint for the specified protocol requests.  The
124                 breakpoint will be enabled by default.   When the  breakpoint
125                 is  enabled,  xscope will stop for interactive commands after
126                 processing a request of the specified  type.    Requests  and
127                 extensions  may be specified by name or number.  If an exten‐
128                 sion is followed by a ":" and a number, it  will  only  break
129                 for  the  specified  minor  opcode for that extension.   Note
130                 that since extension opcodes are not known until  the  exten‐
131                 sion  is  first  seen, breakpoints cannot currently be set on
132                 extensions until after a QueryExtension request and reply are
133                 processed  for that extension, so users may need to initially
134                 set a breakpoint on QueryExtension, and after processing that
135                 set the breakpoint for the target extension.
136
137       cont, c   Resume processing of data passing between server and clients.
138
139       delete, del
140                 Delete all breakpoints.
141
142       delete breakpoint..., del breakpoint...
143                 Delete listed breakpoints, specified by number.
144
145       disable, d
146                 Disable all breakpoints.
147
148       disable breakpoint..., d breakpoint...
149                 Disable listed breakpoints, specified by number.
150
151       enable, e Enable all breakpoints.
152
153       enable breakpoint..., e breakpoint...
154                 Enable listed breakpoints, specified by number.
155
156       help, ?   Print list of available commands.
157
158       help command..., ? command...
159                 Describe specified command or commands.
160
161       level, l  Show current verbosity level for X11 protocol packets.
162
163       level n, l n
164                 Set current verbosity level for X11 protocol packets to n.
165
166       quit, q   Quit xscope.
167
168       step, s   Process one request, then prompt for another command.
169

EXAMPLES

171       xscope -v4 -hcleo -d0 -o0 -i1
172
173       This  command  would have xscope communicate with an X11 server on host
174       ``cleo'', display 0;  xscope itself would be available on  the  current
175       host as display 1 (display of 0 plus the 1 of -i1). Verbose level 4.
176
177       xscope -q -d1 -o1 -o3
178
179       The  X11  server  for the current host, display 2 (1 for -d1 plus 1 for
180       -o1) would be used by xscope which would run as display 4  (1  for  -d1
181       plus 3 for -o3). Quiet mode (verbose level 0).
182

SEE ALSO

184       X(7), Xsecurity(7), X11 Protocol and extension protocol documents
185

AUTHOR

187       James L. Peterson (MCC)
188
189       Copyright (C) 1988 MCC
190
191       Permission to use, copy, modify, distribute, and sell this software and
192       its documentation for any purpose is hereby granted without  fee,  pro‐
193       vided  that  the  above  copyright notice appear in all copies and that
194       both that copyright notice and this permission notice  appear  in  sup‐
195       porting  documentation,  and that the name of MCC not be used in adver‐
196       tising or publicity pertaining to distribution of the software  without
197       specific, written prior permission.  MCC makes no representations about
198       the suitability of this software for any purpose.  It is  provided  "as
199       is" without express or implied warranty.
200
201       MCC  DISCLAIMS  ALL  WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
202       ALL IMPLIED WARRANTIES OF MERCHANTABILITY  AND  FITNESS,  IN  NO  EVENT
203       SHALL  MCC BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES
204       OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR  PROFITS,
205       WHETHER  IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
206       ARISING OUT OF OR IN CONNECTION WITH THE USE  OR  PERFORMANCE  OF  THIS
207       SOFTWARE.
208
209
210
211
212X Version 11                     xscope 1.4.4                        XSCOPE(1)
Impressum