36dd7911a471e69add8111d680c662608681b99a
[xscreensaver] / hacks / sonar.man
1 .de EX          \"Begin example
2 .ne 5
3 .if n .sp 1
4 .if t .sp .5
5 .nf
6 .in +.5i
7 ..
8 .de EE
9 .fi
10 .in -.5i
11 .if n .sp 1
12 .if t .sp .5
13 ..
14 .TH Sonar 1 "3-Nov-98" "X Version 11"
15 .SH NAME
16 sonar - display a sonar scope
17 .SH SYNOPSIS
18 .B sonar
19 [\-ping \fIhosts-or-subnets\fP]
20 [\-background \fIcolor\fP]
21 [\-sweep\-color \fIcolor\fP]
22 [\-low\-color \fIcolor\fP] 
23 [\-scope\-color \fIcolor\fP]
24 [\-grid\-color \fIcolor\fP]
25 [\-text\-color \fIcolor\fP]
26 [\-ttl \fIinteger\fP]
27 [\-font \fIfont\fP]
28 [\-ping\-timeout \fIint\fP]
29 [\-team-a-name \fIstring\fP] 
30 [\-team-b-name \fIstring\fP]
31 [\-team-a-count \fIint\fP]
32 [\-team-b-count \fIint\fP]
33 [\-no\-dns] 
34 [\-debug] 
35 .SH DESCRIPTION
36 The \fIsonar\fP program displays a sonar scope on the computer's screen.
37 This scope polls a sensor as the sweep goes around the scope and displays
38 what it finds as bogies on the screen.  The program is designed to support
39 different modes representing different types of sensors.  Currently the
40 only implemented sensors are a simulator, and a network ping function that
41 pings hosts and plots the results on the scope.
42 .SH OPTIONS
43 .I sonar
44 understands the following options:
45 .TP 8
46 .B \-background \fIColor\fP
47 The background Color of the screen not covered by the scope.
48 .TP 8
49 .B \-sweep\-color \fIColor\fP
50 The color of the brightest part of the sweep.
51 .TP 8
52 .B \-scope\-color \fIColor\fP
53 The color of the circular part of the scope.
54 .TP 8
55 .B \-grid\-color \fIColor\fP
56 The color to the grid lines overlaying the scope.
57 .TP 8
58 .B \-text\-color \fIColor\fP
59 The color of the text identifying bogies on the scope.
60 .TP 8
61 .B \-ttl \fIinteger\fP
62 "Time to live": visible time of a Bogie. Try values between 10 (very short)
63 and 100. 
64 .TP 8
65 .B \-font \fIfont\fP
66 The font used to display text on the scope.  Default "fixed".
67 .TP 8
68 .B \-ping\-timeout \fIint\fP
69 The amount of time in milliseconds the program will wait for an answer
70 to a ping.
71 .TP 8
72 .B \-ping \fIhosts-or-subnets\fP
73 The list of things to ping, separated by commas or spaces. 
74 Elements of this list may be:
75 .RS 8
76 .TP 12
77 .B simulation
78 to run in simulation mode, instead of pinging real hosts (this is the default
79 if the program is not installed setuid);
80 .TP 12
81 .I hostname
82 to ping the given host;
83 .TP 12
84 .I A.B.C.D
85 to ping the given IP address;
86 .TP 12
87 .B subnet
88 to ping the local class C subnet (the nearest 255 addresses);
89 .TP 12
90 .B subnet/\fINN\fP
91 to ping a different-sized local subnet: e.g., \fBsubnet/28\fP would ping
92 a 4-bit subnet (the nearest 15 addresses);
93 .TP 12
94 .I A.B.C.D/NN
95 to ping an arbitrary other subnet: the IP address specifies the base address,
96 and the part after the slash is how wide the subnet is.  Typical values
97 are /24 (for 255 addresses) and /28 (for 15 addresses.)
98 .TP 12
99 .I filename
100 to ping the hosts listed in the given file.  This file can be in the
101 format used by \fI/etc/hosts\fP, or it can be any file that has host
102 names as the first element on each line.  If you use ssh, try this:
103
104   sonar -ping $HOME/.ssh/known_hosts
105 .RE
106 .TP 8
107 .B \-no\-dns
108 Do not attempt to resolve IP addresses to hostnames.
109 .TP 8
110 .B \-team-a-name \fIstring\fP
111 In simulation mode, the name of team A.
112 .TP 8
113 .B \-team-b-name \fIstring\fP
114 In simulation mode, the name of team B.
115 .TP 8
116 .B \-team-a-count \fIint\fP
117 In simulation mode, the number of bogies on team A.
118 .TP 8
119 .B \-team-b-count \fIint\fP
120 In simulation mode, the number of bogies on team B.
121 .SH RESOURCES
122 Configuration of the targets to ping is best done by setting X Resources.
123 .PP
124 .TP 8
125 .B background \fI(Color)\fP
126 See option \-background, above; default value is \fIblack\fP.
127 .TP 8
128 .B sweepColor \fI(Color)\fP
129 See option \-sweep\-color, above; default value is \fI#00ff00\fP.
130 .TP 8
131 .B scopeColor \fI(Color)\fP
132 See option \-scope\-color, above; default value is \fI#003300\fP.
133 .TP 8
134 .B gridColor \fI(Color)\fP
135 See option \-grid\-color, above; default value is \fI#00aa00\fP.
136 .TP 8
137 .B textColor \fI(Color)\fP
138 See option \-text\-color, above; default value is \fI#ffff00\fP.
139 .TP 8
140 .B ttl \fI(integer)\fP
141 See option \-ttl, above; default value is \fI90\fP or one sweep.
142 .TP 8
143 .B ping \fI(string)\fP
144 See option \-ping, above.  If set to \fBdefault\fP, it will ping
145 the contents of /etc/hosts if possible, otherwise, will run in
146 simulation-mode.
147 .TP 8
148 .B font \fI(font)\fP
149 See option \-font, above; default value is \fIfixed\fP.
150 .TP 8
151 .B pingTimeout \fI(Integer)\fP
152 See option \-pingtimeout, above; default value is 3000.
153 .TP 8
154 .B teamAName \fIstring\fP
155 See option \-team\-a\-name, above.  Default value is \fBF18\fP.
156 .TP 8
157 .B teamBName \fIstring\fP
158 See option \-teamBName, above.  Default value is \fBMIG\fP.
159 .TP 8
160 .B teamACount \fIint\fP
161 See option \-teamACount, above.  Default value is 4.
162 .TP 8
163 .B teamBCount \fIint\fP
164 See option \-teamBCount, above.  Default value is 4.
165 .SH NOTES
166 In order to use the ping sensor, this program must be installed as 
167 setuid root, so that it can create an ICMP socket.  Root privileges
168 are disavowed shortly after startup (just after connecting to the
169 X server and reading the resource database) so this is \fIbelieved\fP
170 to be a safe thing to do, but it is usually recommended that you 
171 have as few setuid programs around as possible, on general principles.
172 .EX
173 chown root.root sonar
174 chmod u+s sonar
175 .EE
176 .SH SEE ALSO
177 .BR X (1),
178 .BR xscreensaver (1),
179 .BR ping (8)
180 .SH COPYRIGHT
181 Copyright \(co 1998 by Stephen Martin. <smartin@canada.com>
182 Copyright \(co 2000-2004 by Jamie Zawinski <jwz@jwz.org>
183
184 Permission to use, copy, modify, distribute, and sell this software and its
185 documentation for any purpose is hereby granted without fee, provided that
186 the above copyright notice appear in all copies and that both that
187 copyright notice and this permission notice appear in supporting
188 documentation.  No representations are made about the suitability of this
189 software for any purpose.  It is provided "as is" without express or 
190 implied warranty.
191
192 .SH AUTHORS
193 Stephen Martin <smartin@canada.com>, 3-nov-98.
194
195 Thanks to Tom Kelly for suggesting a modular approach to the sensor
196 amoung other things.
197
198 Thomas Bahls <thommy@cs.tu-berlin.de> hacked the "ttl" option, 12-jul-98.
199
200 Better subnet support and command-line processing by Jamie Zawinski, 17-Jul-00.