]> jfr.im git - irc/rqf/shadowircd.git/blame - doc/sgml/oper-guide/commands.sgml
Updating File.
[irc/rqf/shadowircd.git] / doc / sgml / oper-guide / commands.sgml
CommitLineData
212380e3 1 <chapter id="commands">
2 <title>Operator Commands</title>
3 <sect1>
4 <title>Network management commands</title>
5 <note>
6 <para>
b29e40b7
JT
7 All commands and names are case insensitive.
8 Parameters consisting of one or more separate letters,
9 such as in MODE, STATS and WHO, are case sensitive.
212380e3 10 </para>
11 </note>
12 <sect2>
13 <title>CONNECT</title>
14 <cmdsynopsis><command>CONNECT</command>
15 <arg choice=plain><replaceable>target</replaceable></arg>
16 <arg><replaceable>port</replaceable></arg>
17 <arg><replaceable>source</replaceable></arg>
18 </cmdsynopsis>
19 <para>
20 Initiate a connection attempt to server <replaceable class=parameter>target</replaceable>. If a port is
21 given, connect to that port on the target, otherwise use the one given in <filename>ircd.conf</filename>. If
22 <replaceable class=parameter>source</replaceable> is given, tell that server to initiate the connection
23 attempt, otherwise it will be made from the server you are attached to.
24 </para>
e129e2af
JT
25 <para>
26 To use the default port with <replaceable class=parameter>source</replaceable>,
27 specify 0 for <replaceable class=parameter>port</replaceable>.
28 </para>
212380e3 29 </sect2>
30 <sect2>
31 <title>SQUIT</title>
32 <cmdsynopsis>
33 <command>SQUIT</command>
34 <arg choice=plain><replaceable>server</replaceable></arg>
35 <arg><replaceable>reason</replaceable></arg>
36 </cmdsynopsis>
37 <para>
38 Closes down the link to <replaceable>server</replaceable> from this side of the network. If a reason is
39 given, it will be sent out in the server notices on both sides of the link.
40 </para>
41 </sect2>
42 <sect2>
43 <title>REHASH</title>
44 <cmdsynopsis>
45 <command>REHASH</command>
46 <group>
47 <arg>BANS</arg>
48 <arg>DNS</arg>
49 <arg>MOTD</arg>
50 <arg>OMOTD</arg>
212380e3 51 <arg>TKLINES</arg>
52 <arg>TDLINES</arg>
53 <arg>TXLINES</arg>
54 <arg>TRESVS</arg>
55 <arg>REJECTCACHE</arg>
56 <arg>HELP</arg>
57 </group>
58 <arg><replaceable>server</replaceable></arg>
59 </cmdsynopsis>
60 <para>
61 With no parameter given, <filename>ircd.conf</filename> will be reread and parsed.
62 The server argument is a wildcard match of server names.
63 </para>
64 <variablelist>
65 <title>Parameters</title>
66 <varlistentry>
67 <term>BANS</term>
68 <listitem>
69 <para>Rereads <filename>kline.conf</filename>, <filename>dline.conf</filename>, <filename>xline.conf</filename>, <filename>resv.conf</filename> and their .perm variants</para>
70 </listitem>
71 </varlistentry>
72 <varlistentry>
73 <term>DNS</term>
74 <listitem>
75 <para>Reread <filename>/etc/resolv.conf</filename>.</para>
76 </listitem>
77 </varlistentry>
78 <varlistentry>
79 <term>MOTD</term>
80 <listitem>
81 <para>Reload the MOTD file</para>
82 </listitem>
83 </varlistentry>
84 <varlistentry>
85 <term>OMOTD</term>
86 <listitem>
87 <para>Reload the operator MOTD file</para>
88 </listitem>
89 </varlistentry>
212380e3 90 <varlistentry>
91 <term>TKLINES</term>
92 <listitem>
93 <para>Clears temporary K:lines.</para>
94 </listitem>
95 </varlistentry>
96 <varlistentry>
97 <term>TDLINES</term>
98 <listitem>
99 <para>Clears temporary D:lines.</para>
100 </listitem>
101 </varlistentry>
102 <varlistentry>
103 <term>TXLINES</term>
104 <listitem>
105 <para>Clears temporary X:lines.</para>
106 </listitem>
107 </varlistentry>
108 <varlistentry>
109 <term>TRESVS</term>
110 <listitem>
111 <para>Clears temporary reservations.</para>
112 </listitem>
113 </varlistentry>
114 <varlistentry>
115 <term>REJECTCACHE</term>
116 <listitem>
117 <para>Clears the client rejection cache.</para>
118 </listitem>
119 </varlistentry>
120 <varlistentry>
121 <term>HELP</term>
122 <listitem>
123 <para>Refreshes the help system cache.</para>
124 </listitem>
125 </varlistentry>
126 </variablelist>
127 </sect2>
128 <sect2>
129 <title>RESTART</title>
130 <cmdsynopsis>
131 <command>RESTART</command>
132 <arg choice=plain><replaceable>server</replaceable></arg>
133 </cmdsynopsis>
134 <para>
135 Cause an immediate total shutdown of the IRC server, and restart from scratch as if it had just been executed.
136 </para>
137 <para>
138 This reexecutes the ircd using the compiled-in path, visible
139 as SPATH in INFO.
140 </para>
141 <note>
142 <para>This command cannot be used remotely. The server name is used only as a safety measure.</para>
143 </note>
144 </sect2>
145 <sect2>
146 <title>DIE</title>
147 <cmdsynopsis>
148 <command>DIE</command>
149 <arg choice=plain><replaceable>server</replaceable></arg>
150 </cmdsynopsis>
151 <para>Immediately terminate the IRC server, after sending notices to all connected clients and servers</para>
152 <note>
153 <para>This command cannot be used remotely. The server name is used only as a safety measure.</para>
154 </note>
155 </sect2>
156 <sect2>
157 <title>SET</title>
158 <cmdsynopsis>
159 <command>SET</command>
160 <group>
89a38579
JT
161 <arg>ADMINSTRING</arg>
162 <arg>AUTOCONN</arg>
163 <arg>AUTOCONNALL</arg>
164 <arg>FLOODCOUNT</arg>
165 <arg>IDENTTIMEOUT</arg>
212380e3 166 <arg>MAX</arg>
89a38579 167 <arg>OPERSTRING</arg>
212380e3 168 <arg>SPAMNUM</arg>
169 <arg>SPAMTIME</arg>
89a38579
JT
170 <arg>SPLITMODE</arg>
171 <arg>SPLITNUM</arg>
172 <arg>SPLITUSERS</arg>
212380e3 173 </group>
174 <arg choice=plain><replaceable>value</replaceable></arg>
175 </cmdsynopsis>
89a38579
JT
176 <para>The SET command sets a runtime-configurable value.</para>
177 <para>
178 Most of the <filename>ircd.conf</filename> equivalents have
179 a default_ prefix and are only read on startup. SET is the only
180 way to change these at run time.
181 </para>
182 <para>
183 Most of the values can be queried by omitting
184 <replaceable>value</replaceable>.
185 </para>
212380e3 186 <variablelist>
187 <varlistentry>
89a38579
JT
188 <term>ADMINSTRING</term>
189 <listitem><para>
190 Sets string shown in WHOIS for admins.
191 (umodes +o and +a set, umode +S not set).
192 </para></listitem>
212380e3 193 </varlistentry>
212380e3 194 <varlistentry>
89a38579
JT
195 <term>AUTOCONN</term>
196 <listitem><para>
197 Sets auto-connect on or off for a particular server.
198 Takes two parameters, server name and new state.
199 </para><para>
200 To see these values, use /stats c.
201 Changes to this are lost on a rehash.
202 </para></listitem>
212380e3 203 </varlistentry>
204 <varlistentry>
89a38579
JT
205 <term>AUTOCONNALL</term>
206 <listitem><para>
207 Globally sets auto-connect on or off. If disabled, no automatic
208 connections are done; if enabled, automatic connections are done
209 following the rules for them.
210 </para></listitem>
212380e3 211 </varlistentry>
212 <varlistentry>
89a38579
JT
213 <term>FLOODCOUNT</term>
214 <listitem><para>
215 The number of lines allowed to be sent to a connection before
216 throttling it due to flooding.
217 Note that this variable is used for both
218 channels and clients.
219 </para><para>
220 For channels, op or voice overrides this; for users, IRC
221 operator status or op or voice on a common channel overrides
222 this.
223 </para></listitem>
212380e3 224 </varlistentry>
225 <varlistentry>
89a38579
JT
226 <term>IDENTTIMEOUT</term>
227 <listitem><para>
228 Timeout for requesting ident from a client.
229 </para></listitem>
212380e3 230 </varlistentry>
231 <varlistentry>
89a38579
JT
232 <term>MAX</term>
233 <listitem><para>
234 Sets the maximum number of connections
235 to <replaceable>value</replaceable>.
236 </para><para>
237 This number cannot exceed maxconnections - MAX_BUFFER.
238 maxconnections is the rlimit for number of open files.
239 MAX_BUFFER is defined in config.h, normally 60.
240 </para><para>
241 MAXCLIENTS is an alias for this.
242 </para></listitem>
243 </varlistentry>
244 <varlistentry>
245 <term>OPERSTRING</term>
246 <listitem><para>
247 Sets string shown in WHOIS for opers
248 (umode +o set, umodes +a and +S not set).
249 </para></listitem>
212380e3 250 </varlistentry>
251 <varlistentry>
252 <term>SPAMNUM</term>
89a38579
JT
253 <listitem><para>
254 Sets how many join/parts to channels
255 constitutes a possible spambot.
256 </para></listitem>
212380e3 257 </varlistentry>
258 <varlistentry>
259 <term>SPAMTIME</term>
89a38579
JT
260 <listitem><para>
261 Below this time on a channel
262 counts as a join/part as above.
263 </para></listitem>
264 </varlistentry>
265 <varlistentry>
266 <term>SPLITMODE</term>
267 <listitem><para>
268 Sets splitmode to <replaceable>value</replaceable>:
269 <variablelist>
270 <varlistentry>
271 <term>ON</term>
272 <listitem><para>splitmode is permanently on</para></listitem>
273 </varlistentry>
274 <varlistentry>
275 <term>OFF</term>
276 <listitem><para>splitmode is permanently off (default if no_create_on_split and no_join_on_split are disabled)</para></listitem>
277 </varlistentry>
278 <varlistentry>
279 <term>AUTO</term>
280 <listitem><para>ircd chooses splitmode based on SPLITUSERS and SPLITNUM (default if no_create_on_split or no_join_on_split are enabled)</para></listitem>
281 </varlistentry>
282 </variablelist>
283 </para></listitem>
284 </varlistentry>
285 <varlistentry>
286 <term>SPLITUSERS</term>
287 <listitem><para>
288 Sets the minimum amount of users needed to
289 deactivate automatic splitmode.
290 </para></listitem>
291 </varlistentry>
292 <varlistentry>
293 <term>SPLITNUM</term>
294 <listitem><para>
295 Sets the minimum amount of servers needed to
296 deactivate automatic splitmode.
297 Only servers that have finished bursting count for this.
298 </para></listitem>
212380e3 299 </varlistentry>
300 </variablelist>
301 </sect2>
302 </sect1>
303 <sect1 id="usercommands">
304 <title>User management commands</title>
305 <sect2>
306 <title>KILL</title>
307 <cmdsynopsis>
308 <command>KILL</command>
309 <arg choice=plain><replaceable>nick</replaceable></arg>
310 <arg><replaceable>reason</replaceable></arg>
311 </cmdsynopsis>
312 <para>
313 Disconnects the user with the given nick from the server they are connected to,
314 with the reason given, if present, and broadcast a server notice announcing this.
315 </para>
316 <para>
317 Your nick and the reason will appear on channels.
318 </para>
319 </sect2>
320 <sect2>
321 <title>CLOSE</title>
322 <para>
323 Closes all connections from and to clients and servers who have not completed registering.
324 </para>
325 </sect2>
326 <sect2>
327 <title>KLINE</title>
328 <cmdsynopsis>
329 <command>KLINE</command>
330 <arg><replaceable>length</replaceable></arg>
331 <group>
332 <arg choice=plain><replaceable>user</replaceable>@<replaceable>host</replaceable></arg>
333 <arg choice=plain><replaceable>user</replaceable>@<replaceable>a</replaceable>.<replaceable>b</replaceable>.<replaceable>c</replaceable>.<replaceable>d</replaceable></arg>
334 </group>
335 <arg>ON <replaceable>servername</replaceable></arg>
336 <arg>:<replaceable>reason</replaceable></arg>
337 </cmdsynopsis>
338 <para>
339 Adds a K:line to <filename>kline.conf</filename> to ban the given user@host from using that
340 server.
341 </para>
342 <para>
343 If the optional parameter <replaceable>length</replaceable> is given, the K:line will
344 be temporary (i.e. it will not be stored on disk) and last that
345 long in minutes.
346 </para>
347 <para>
348 If an IP address is given, the ban will be against all hosts matching that IP regardless
349 of DNS. The IP address can be given as a full address (192.168.0.1), as a CIDR mask
350 (192.168.0.0/24), or as a glob (192.168.0.*).
351 </para>
352 <para>
353 All clients matching the K:line will be disconnected from the server immediately.
354 </para>
355 <para>
356 If a reason is specified, it will be sent to the client when they are disconnected, and
357 whenever a connection is attempted which is banned.
358 </para>
359 <para>
360 If the ON part is specified, the K:line is set on servers matching
361 the given mask (provided a matching shared{} block exists there).
362 Otherwise, if specified in a cluster{} block, the K:Line will be
363 propagated across the network accordingly.
364 </para>
365 </sect2>
366 <sect2>
367 <title>UNKLINE</title>
368 <cmdsynopsis>
369 <command>UNKLINE</command>
370 <arg choice=plain><replaceable>user</replaceable>@<replaceable>host</replaceable></arg>
371 <arg>ON <replaceable>servername</replaceable></arg>
372 </cmdsynopsis>
373 <para>
374 Will attempt to remove a K:line matching user@host from <filename>kline.conf</filename>, and will flush
375 a temporary K:line.
376 </para>
377 </sect2>
378 <sect2>
379 <title>XLINE</title>
380 <cmdsynopsis>
381 <command>XLINE</command>
382 <arg><replaceable>length</replaceable></arg>
383 <arg choice=plain><replaceable>mask</replaceable></arg>
384 <arg>ON <replaceable>servername</replaceable></arg>
385 <arg>:<replaceable>reason</replaceable></arg>
386 </cmdsynopsis>
387 <para>
388 Works similarly to KLINE, but matches against the real name field.
389 The wildcards are * (any sequence), ? (any character),
390 # (a digit) and @ (a letter); wildcard characters can be
957765c3 391 escaped with a backslash. The sequence \s matches a space.
212380e3 392 </para>
393 <para>
394 All clients matching the X:line will be disconnected from the server immediately.
395 </para>
396 <para>
397 The reason is never sent to users. Instead, they will be exited
398 with <quote>Bad user info</quote>.
399 </para>
400 <para>
401 If the ON part is specified, the X:line is set on servers matching
402 the given mask (provided a matching shared{} block exists there).
403 Otherwise, if specified in a cluster{} block, the X:line will be
404 propagated across the network accordingly.
405 </para>
406 </sect2>
407 <sect2>
408 <title>UNXLINE</title>
409 <cmdsynopsis>
410 <command>UNXLINE</command>
411 <arg choice=plain><replaceable>mask</replaceable></arg>
412 <arg>ON <replaceable>servername</replaceable></arg>
413 </cmdsynopsis>
414 <para>
415 Will attempt to remove an X:line from <filename>xline.conf</filename>, and will flush
416 a temporary X:line.
417 </para>
418 </sect2>
419 <sect2>
420 <title>RESV</title>
421 <cmdsynopsis>
422 <command>RESV</command>
423 <arg><replaceable>length</replaceable></arg>
424 <group>
425 <arg choice=plain><replaceable>channel</replaceable></arg>
426 <arg choice=plain><replaceable>mask</replaceable></arg>
427 </group>
428 <arg>ON <replaceable>servername</replaceable></arg>
429 <arg>:<replaceable>reason</replaceable></arg>
430 </cmdsynopsis>
431 <para>
432 If used on a channel, <quote>jupes</quote> the channel locally. Joins to the
433 channel will be disallowed and generate a server notice on +y, and
434 users will not be able to send to the channel. Channel jupes cannot
435 contain wildcards.
436 </para>
437 <para>
438 If used on a nickname mask, prevents local users from using a nick
439 matching the mask (the same wildcard characters as xlines). There
440 is no way to exempt the initial nick from this.
441 </para>
442 <para>
443 In neither case will current users of the nick or channel be
444 kicked or disconnected.
445 </para>
446 <para>
447 This facility is not designed to make certain nicks
448 or channels oper-only.
449 </para>
450 <para>
451 The reason is never sent to users.
452 </para>
453 <para>
454 If the ON part is specified, the resv is set on servers matching
455 the given mask (provided a matching shared{} block exists there).
456 Otherwise, if specified in a cluster{} block, the resv will be
457 propagated across the network accordingly.
458 </para>
459 </sect2>
460 <sect2>
461 <title>UNRESV</title>
462 <cmdsynopsis>
463 <command>UNRESV</command>
464 <group>
465 <arg choice=plain><replaceable>channel</replaceable></arg>
466 <arg choice=plain><replaceable>mask</replaceable></arg>
467 </group>
468 <arg>ON <replaceable>servername</replaceable></arg>
469 </cmdsynopsis>
470 <para>
471 Will attempt to remove a resv from <filename>resv.conf</filename>, and will flush
472 a temporary resv.
473 </para>
474 </sect2>
475 <sect2>
476 <title>DLINE</title>
477 <cmdsynopsis>
478 <command>DLINE</command>
479 <arg><replaceable>length</replaceable></arg>
480 <arg choice=plain><replaceable>a</replaceable>.<replaceable>b</replaceable>.<replaceable>c</replaceable>.<replaceable>d</replaceable></arg>
66a13527 481 <arg>ON <replaceable>servername</replaceable></arg>
212380e3 482 <arg>:<replaceable>reason</replaceable></arg>
483 </cmdsynopsis>
484 <para>
485 Adds a D:line to <filename>dline.conf</filename>, which will deny any connections
486 from the given IP address.
5366977b 487 The IP address can be given as a full address (192.168.0.1) or
488 as a CIDR mask (192.168.0.0/24).
212380e3 489 </para>
490 <para>
491 If the optional parameter <replaceable>length</replaceable> is given, the D:line will
492 be temporary (i.e. it will not be stored on disk) and last that
493 long in minutes.
494 </para>
f3d2fceb
JT
495 <para>
496 All clients matching the D:line will be disconnected from the server immediately.
497 </para>
212380e3 498 <para>
499 If a reason is specified, it will be sent to the client when they are disconnected, and,
500 if dline_reason is enabled,
501 whenever a connection is attempted which is banned.
502 </para>
503 <para>
504 D:lines are less load on a server, and may be more appropriate if somebody is flooding
505 connections.
506 </para>
507 <para>
66a13527
JT
508 If the ON part is specified, the D:line is set on servers matching
509 the given mask (provided a matching shared{} block exists there,
510 which is not the case by default).
511 Otherwise, the D:Line will be set on the local server only.
212380e3 512 </para>
513 <para>
f3d2fceb 514 Only exempt{} blocks exempt from D:lines.
212380e3 515 Being a server or having kline_exempt in auth{} does
516 <emphasis>not</emphasis> exempt (different from K/G/X:lines).
517 </para>
518 </sect2>
519 <sect2>
520 <title>UNDLINE</title>
521 <cmdsynopsis>
522 <command>UNDLINE</command>
523 <arg choice=plain><replaceable>a.b.c.d</replaceable></arg>
66a13527 524 <arg>ON <replaceable>servername</replaceable></arg>
212380e3 525 </cmdsynopsis>
526 <para>
527 Will attempt to remove a D:line from <filename>dline.conf</filename>, and will flush
528 a temporary D:line.
529 </para>
530 </sect2>
212380e3 531 <sect2>
532 <title>TESTGECOS</title>
533 <cmdsynopsis>
534 <command>TESTGECOS</command>
535 <arg choice=plain><replaceable>gecos</replaceable></arg>
536 </cmdsynopsis>
537 <para>
538 Looks up X:Lines matching the given gecos.
539 </para>
540 </sect2>
541 <sect2>
542 <title>TESTLINE</title>
543 <cmdsynopsis>
544 <command>TESTLINE</command>
545 <arg><replaceable>nick</replaceable>!</arg>
546 <group>
547 <arg choice=plain><replaceable>user</replaceable>@<replaceable>host</replaceable></arg>
548 <arg choice=plain><replaceable>a</replaceable>.<replaceable>b</replaceable>.<replaceable>c</replaceable>.<replaceable>d</replaceable></arg>
549 </group>
550 </cmdsynopsis>
551 <para>
bfb327ee 552 Looks up the given hostmask or IP address and reports back on any auth{} blocks, D: or K: lines found.
212380e3 553 If <replaceable>nick</replaceable> is given, also searches for
554 nick resvs.
555 </para>
556 <para>
557 For temporary items the number of minutes until the item expires
558 is shown (as opposed to the hit count in STATS q/Q/x/X).
559 </para>
560 <para>
561 This command will not perform DNS lookups; for best
562 results you must testline a host and its IP form.
563 </para>
564 <para>
565 The given username should begin with a tilde (~) if identd is not
566 in use. As of charybdis 2.1.1, no_tilde and username truncation will
567 be taken into account like in the normal client access check.
568 </para>
add9f99d 569 <para>
570 As of charybdis 2.2.0, a channel name can be specified and the
571 RESV will be returned, if there is one.
572 </para>
212380e3 573 </sect2>
574 <sect2>
575 <title>TESTMASK</title>
576 <cmdsynopsis>
577 <command>TESTMASK</command>
578 <arg choice=plain><replaceable>hostmask</replaceable></arg>
579 <arg><replaceable>gecos</replaceable></arg>
580 </cmdsynopsis>
581 <para>
582 Searches the network for users that match the hostmask and gecos given,
583 returning the number of matching users on this server and other servers.
584 </para>
585 <para>
586 The <replaceable>hostmask</replaceable> is of the form user@host
587 or user@ip/cidr with * and ? wildcards, optionally preceded by
588 nick!.
589 </para>
590 <para>
591 The <replaceable>gecos</replaceable> field accepts the same wildcards
592 as xlines.
593 </para>
594 <para>
595 The IP address checked against is 255.255.255.255 if the IP address
596 is unknown (remote client on a TS5 server) or 0 if the IP address
597 is hidden (auth{} spoof).
598 </para>
599 </sect2>
600 <sect2>
601 <title>LUSERS</title>
602 <cmdsynopsis>
603 <command>LUSERS</command>
604 <arg><replaceable>mask</replaceable></arg>
605 <group>
606 <arg><replaceable>nick</replaceable></arg>
607 <arg><replaceable>server</replaceable></arg>
608 </group>
609 </cmdsynopsis>
610 <para>
611 Shows various user and channel counts.
612 </para>
613 <para>
614 The <replaceable>mask</replaceable> parameter is obsolete
615 but must be used when querying a remote server.
616 </para>
617 </sect2>
618 <sect2>
619 <title>TRACE</title>
620 <cmdsynopsis>
621 <command>TRACE</command>
622 <group>
623 <arg><replaceable>server</replaceable></arg>
624 <arg><replaceable>nick</replaceable></arg>
625 </group>
626 <arg><replaceable>location</replaceable></arg>
627 </cmdsynopsis>
628 <para>
629 With no argument or one argument which is the current server,
630 TRACE gives a list of all connections to the current server
631 and a summary of connection classes.
632 </para>
633 <para>
634 With one argument which is another server, TRACE displays the path
635 to the specified server, and all servers, opers and -i users
636 on that server, along with a summary of connection classes.
637 </para>
638 <para>
639 With one argument which is a client, TRACE displays the
640 path to that client, and that client's information.
641 </para>
642 <para>
643 If location is given, the command is executed on that server;
644 no path is displayed.
645 </para>
646 <para>
647 When listing connections, type, name and class is shown
648 in addition to information depending on the type:
649 </para>
650 <variablelist>
651 <title>TRACE types</title>
652 <varlistentry>
653 <term>Try.</term>
654 <listitem><para>
655 A server we are trying to make a TCP connection to.
656 </para></listitem>
657 </varlistentry>
658 <varlistentry>
659 <term>H.S.</term>
660 <listitem><para>
661 A server we have established a TCP connection to, but is not
662 yet registered.
663 </para></listitem>
664 </varlistentry>
665 <varlistentry>
666 <term>????</term>
667 <listitem><para>
668 An incoming connection that has not yet registered as
669 a user or a server (<quote>unknown</quote>).
670 Shows the username, hostname, IP address
671 and the time the connection has been open. It is possible
672 that the ident or DNS lookups have not completed yet, and in
673 any case no tildes are shown here.
674 Unknown connections may not have a name yet.
675 </para></listitem>
676 </varlistentry>
677 <varlistentry>
678 <term>User</term>
679 <listitem><para>
680 A registered unopered user.
681 Shows the username, hostname, IP address, the time the client
682 has not sent anything (as in STATS l) and the time the user has
683 been idle (from PRIVMSG only, as in WHOIS).
684 </para></listitem>
685 </varlistentry>
686 <varlistentry>
687 <term>Oper</term>
688 <listitem><para>
689 Like User, but opered.
690 </para></listitem>
691 </varlistentry>
692 <varlistentry>
693 <term>Serv</term>
694 <listitem><para>
695 A registered server.
696 Shows the number of servers and users reached via this link,
697 who made this connection and the time the server has not sent
698 anything.
699 </para></listitem>
700 </varlistentry>
701 </variablelist>
702 </sect2>
703 <sect2>
704 <title>ETRACE</title>
705 <cmdsynopsis>
706 <command>ETRACE</command>
707 <arg><replaceable>nick</replaceable></arg>
708 </cmdsynopsis>
709 <para>
710 Shows client information about the given target, or about all local clients if
711 no target is specified.
712 </para>
713 </sect2>
e2435f22
JT
714 <sect2>
715 <title>PRIVS</title>
716 <cmdsynopsis>
717 <command>PRIVS</command>
718 <arg><replaceable>nick</replaceable></arg>
719 </cmdsynopsis>
720 <para>
721 Displays effective operator privileges for
722 the specified nick, or for yourself if no nick is
723 given. This includes all privileges from the operator
724 block, the name of the operator block and those
725 privileges from the auth block that have an effect
726 after the initial connection.
727 </para>
728 <para>
729 The exact output depends on the server the nick is on,
730 see the matching version of this document.
731 If the remote server does not support this extension, you will not
732 receive a reply.
733 </para>
734 </sect2>
212380e3 735 <sect2>
736 <title>MASKTRACE</title>
737 <cmdsynopsis>
738 <command>MASKTRACE</command>
739 <arg choice=plain><replaceable>hostmask</replaceable></arg>
740 <arg><replaceable>gecos</replaceable></arg>
741 </cmdsynopsis>
742 <para>
743 Searches the local server or network for users that match the hostmask and gecos given.
744 Network searches require the oper_spy privilege and an '!'
745 before the hostmask.
746 The matching works the same way as TESTMASK.
747 </para>
748 <para>
749 The <replaceable>hostmask</replaceable> is of the form user@host
750 or user@ip/cidr with * and ? wildcards, optionally preceded by
751 nick!.
752 </para>
753 <para>
754 The <replaceable>gecos</replaceable> field accepts the same wildcards
755 as xlines.
756 </para>
757 <para>
758 The IP address field contains 255.255.255.255 if the IP address
759 is unknown (remote client on a TS5 server) or 0 if the IP address
760 is hidden (auth{} spoof).
761 </para>
762 </sect2>
763 <sect2>
764 <title>CHANTRACE</title>
765 <cmdsynopsis>
766 <command>CHANTRACE</command>
767 <arg choice=plain><replaceable>channel</replaceable></arg>
768 </cmdsynopsis>
769 <para>
770 Displays information about users in a channel.
771 Opers with the oper_spy privilege
772 can get the information without being on the channel,
773 by prefixing the channel name with an '!'.
774 </para>
775 <para>
776 The IP address field contains 255.255.255.255 if the IP address
777 is unknown (remote client on a TS5 server) or 0 if the IP address
778 is hidden (auth{} spoof).
779 </para>
780 </sect2>
781 <sect2>
782 <title>SCAN</title>
783 <cmdsynopsis>
784 <command>SCAN UMODES</command>
785 <arg choice=plain>+<replaceable>modes</replaceable>-<replaceable>modes</replaceable></arg>
786 <arg>no-list</arg>
787 <arg>list</arg>
788 <arg>global</arg>
789 <arg>list-max <replaceable>number</replaceable></arg>
790 <arg>mask <replaceable>nick!user@host</replaceable></arg>
791 </cmdsynopsis>
792 <para>
793 Searches the local server or network for users that have the umodes given with + and do not have the umodes given with -.
794 no-list disables the listing of matching users and only shows the count.
795 list enables the listing (default).
796 global extends the search to the entire network instead of local users only.
797 list-max limits the listing of matching users to the given amount.
798 mask causes only users matching the given nick!user@host mask
799 to be selected. Only the displayed host is considered, not the
800 IP address or real host behind dynamic spoofs.
801 </para>
802 <para>
803 The IP address field contains 255.255.255.255 if the IP address
804 is unknown (remote client on a TS5 server) or 0 if the IP address
805 is hidden (auth{} spoof).
806 </para>
807 <para>
c80b76f0 808 Network searches where a listing is given
212380e3 809 are operspy commands.
810 </para>
811 </sect2>
812 <sect2>
813 <title>CHGHOST</title>
814 <cmdsynopsis>
815 <command>CHGHOST</command>
816 <arg choice=plain><replaceable>nick</replaceable></arg>
817 <arg choice=plain><replaceable>value</replaceable></arg>
818 </cmdsynopsis>
819 <para>
820 Set the hostname associated with a particular nick for the duration of this session.
821 This command is disabled by default because of the abuse potential
822 and little practical use.
823 </para>
824 </sect2>
825 </sect1>
826 <sect1 id="misccommands">
827 <title>Miscellaneous commands</title>
828 <sect2>
829 <title>ADMIN</title>
830 <cmdsynopsis>
831 <command>ADMIN</command>
832 <group>
833 <arg><replaceable>nick</replaceable></arg>
834 <arg><replaceable>server</replaceable></arg>
835 </group>
836 </cmdsynopsis>
837 <para>
838 Shows the information in the admin{} block.
839 </para>
840 </sect2>
841 <sect2>
842 <title>INFO</title>
843 <cmdsynopsis>
844 <command>INFO</command>
845 <group>
846 <arg><replaceable>nick</replaceable></arg>
847 <arg><replaceable>server</replaceable></arg>
848 </group>
849 </cmdsynopsis>
850 <para>
851 Shows information about the authors of the IRC server, and
852 some information about this server instance.
853 Opers also get a list of configuration options.
854 </para>
855 </sect2>
856 <sect2>
857 <title>TIME</title>
858 <cmdsynopsis>
859 <command>TIME</command>
860 <group>
861 <arg><replaceable>nick</replaceable></arg>
862 <arg><replaceable>server</replaceable></arg>
863 </group>
864 </cmdsynopsis>
865 <para>
866 Shows the local time on the given server, in a human-readable format.
867 </para>
868 </sect2>
869 <sect2>
870 <title>VERSION</title>
871 <cmdsynopsis>
872 <command>VERSION</command>
873 <group>
874 <arg><replaceable>nick</replaceable></arg>
875 <arg><replaceable>server</replaceable></arg>
876 </group>
877 </cmdsynopsis>
878 <para>
879 Shows version information, a few compile/config options,
880 the SID and the 005 numerics.
881 The 005 numeric will be remapped to 105 for remote requests.
882 </para>
883 </sect2>
884 <sect2>
885 <title>STATS</title>
886 <cmdsynopsis>
887 <command>STATS</command>
888 <arg><replaceable>type</replaceable></arg>
889 <group>
890 <arg><replaceable>nick</replaceable></arg>
891 <arg><replaceable>server</replaceable></arg>
892 </group>
893 </cmdsynopsis>
894 <para>
895 Display various statistics and configuration information.
896 </para>
897 <variablelist>
898 <title>Values for <replaceable>type</replaceable></title>
899 <varlistentry>
900 <term>A</term>
901 <listitem>
902 <para>Show DNS servers</para>
903 </listitem>
904 </varlistentry>
905 <varlistentry>
906 <term>b</term>
907 <listitem>
908 <para>Show active nick delays</para>
909 </listitem>
910 </varlistentry>
911 <varlistentry>
912 <term>B</term>
913 <listitem>
914 <para>Show hash statistics</para>
915 </listitem>
916 </varlistentry>
917 <varlistentry>
918 <term>c</term>
919 <listitem>
920 <para>Show connect blocks</para>
921 </listitem>
922 </varlistentry>
923 <varlistentry>
924 <term>d</term>
925 <listitem>
926 <para>Show temporary D:lines</para>
927 </listitem>
928 </varlistentry>
929 <varlistentry>
930 <term>D</term>
931 <listitem>
932 <para>Show permanent D:lines</para>
933 </listitem>
934 </varlistentry>
935 <varlistentry>
936 <term>e</term>
937 <listitem>
938 <para>Show exempt blocks (exceptions to D:lines)</para>
939 </listitem>
940 </varlistentry>
941 <varlistentry>
942 <term>E</term>
943 <listitem>
944 <para>Show events</para>
945 </listitem>
946 </varlistentry>
947 <varlistentry>
948 <term>f</term>
949 <listitem>
950 <para>Show file descriptors</para>
951 </listitem>
952 </varlistentry>
212380e3 953 <varlistentry>
954 <term>h</term>
955 <listitem>
956 <para>Show hub_mask/leaf_mask</para>
957 </listitem>
958 </varlistentry>
959 <varlistentry>
960 <term>i</term>
961 <listitem>
962 <para>Show auth blocks, or matched auth blocks</para>
963 </listitem>
964 </varlistentry>
965 <varlistentry>
966 <term>k</term>
967 <listitem>
181578b2 968 <para>Show temporary K:lines, or matched K:lines</para>
212380e3 969 </listitem>
970 </varlistentry>
971 <varlistentry>
972 <term>K</term>
973 <listitem>
181578b2 974 <para>Show permanent K:lines, or matched K:lines</para>
212380e3 975 </listitem>
976 </varlistentry>
977 <varlistentry>
978 <term>l</term>
979 <listitem>
980 <para>
981 Show hostname and link information about the given nick.
982 With a server name, show information about opers and servers
7c0590f7
JT
983 on that server; opers get information about all local
984 connections if they query their own server.
985 No hostname is shown for server connections.
212380e3 986 </para>
987 </listitem>
988 </varlistentry>
989 <varlistentry>
990 <term>L</term>
991 <listitem>
992 <para>Like l, but show IP address instead of hostname</para>
993 </listitem>
994 </varlistentry>
995 <varlistentry>
996 <term>m</term>
997 <listitem>
998 <para>Show commands and their usage statistics (total counts, total bytes, counts from server connections)</para>
999 </listitem>
1000 </varlistentry>
1001 <varlistentry>
1002 <term>n</term>
1003 <listitem>
7c0590f7 1004 <para>Show blacklist blocks (DNS blacklists) with hit counts since last rehash and (parenthesized) reference counts. The reference count shows how many clients are waiting on a lookup of this blacklist or have been found and are waiting on registration to complete.</para>
212380e3 1005 </listitem>
1006 </varlistentry>
1007 <varlistentry>
1008 <term>o</term>
1009 <listitem>
1010 <para>Show operator blocks</para>
1011 </listitem>
1012 </varlistentry>
3619e299
JT
1013 <varlistentry>
1014 <term>O</term>
1015 <listitem>
1016 <para>Show privset blocks</para>
1017 </listitem>
1018 </varlistentry>
212380e3 1019 <varlistentry>
1020 <term>p</term>
1021 <listitem>
1022 <para>Show logged on network operators which are not set AWAY.</para>
1023 </listitem>
1024 </varlistentry>
1025 <varlistentry>
1026 <term>P</term>
1027 <listitem>
7c0590f7 1028 <para>Show listen blocks (ports)</para>
212380e3 1029 </listitem>
1030 </varlistentry>
1031 <varlistentry>
1032 <term>q</term>
1033 <listitem>
7c0590f7 1034 <para>Show temporarily resv'ed nicks and channels with hit counts</para>
212380e3 1035 </listitem>
1036 </varlistentry>
1037 <varlistentry>
1038 <term>Q</term>
1039 <listitem>
7c0590f7 1040 <para>Show permanently resv'ed nicks and channels with hit counts since last rehash bans</para>
212380e3 1041 </listitem>
1042 </varlistentry>
1043 <varlistentry>
1044 <term>r</term>
1045 <listitem>
1046 <para>Show resource usage by the ircd</para>
1047 </listitem>
1048 </varlistentry>
1049 <varlistentry>
1050 <term>t</term>
1051 <listitem>
7c0590f7 1052 <para>Show generic server statistics about local connections</para>
212380e3 1053 </listitem>
1054 </varlistentry>
1055 <varlistentry>
1056 <term>u</term>
1057 <listitem>
1058 <para>Show server uptime</para>
1059 </listitem>
1060 </varlistentry>
1061 <varlistentry>
1062 <term>U</term>
1063 <listitem>
1064 <para>Show shared (c), cluster (C) and service (s) blocks</para>
1065 </listitem>
1066 </varlistentry>
1067 <varlistentry>
1068 <term>v</term>
1069 <listitem>
1070 <para>Show connected servers and brief status</para>
1071 </listitem>
1072 </varlistentry>
1073 <varlistentry>
1074 <term>x</term>
1075 <listitem>
7c0590f7 1076 <para>Show temporary X:lines with hit counts</para>
212380e3 1077 </listitem>
1078 </varlistentry>
1079 <varlistentry>
1080 <term>X</term>
1081 <listitem>
7c0590f7 1082 <para>Show permanent X:lines with hit counts since last rehash bans</para>
212380e3 1083 </listitem>
1084 </varlistentry>
1085 <varlistentry>
1086 <term>y</term>
1087 <listitem>
1088 <para>Show class blocks</para>
1089 </listitem>
1090 </varlistentry>
1091 <varlistentry>
1092 <term>z</term>
1093 <listitem>
1094 <para>Show memory usage statistics</para>
1095 </listitem>
1096 </varlistentry>
1097 <varlistentry>
1098 <term>Z</term>
1099 <listitem>
1100 <para>Show ziplinks statistics</para>
1101 </listitem>
1102 </varlistentry>
1103 <varlistentry>
1104 <term>?</term>
1105 <listitem>
7c0590f7 1106 <para>Show connected servers and link information about them</para>
212380e3 1107 </listitem>
1108 </varlistentry>
1109 </variablelist>
1110 </sect2>
1111 <sect2>
1112 <title>WALLOPS</title>
1113 <cmdsynopsis>
1114 <command>WALLOPS</command>
1115 <arg choice=plain>:<replaceable>message</replaceable></arg>
1116 </cmdsynopsis>
1117 <para>
1118 Sends a WALLOPS message to all users who have the +w umode set. This is for
1119 things you don't mind the whole network knowing about.
1120 </para>
1121 </sect2>
1122 <sect2>
1123 <title>OPERWALL</title>
1124 <cmdsynopsis>
1125 <command>OPERWALL</command>
1126 <arg choice=plain>:<replaceable>message</replaceable></arg>
1127 </cmdsynopsis>
1128 <para>
1129 Sends an OPERWALL message to all opers who have the +z umode set. +z is restricted,
1130 OPERWALL should be considered private communications.
1131 </para>
1132 </sect2>
1133 </sect1>
1134 </chapter>
1135<!-- Keep this comment at the end of the file
1136Local variables:
1137mode: sgml
1138sgml-omittag:t
1139sgml-shorttag:t
1140sgml-namecase-general:t
1141sgml-general-insert-case:lower
1142sgml-minimize-attributes:nil
1143sgml-always-quote-attributes:t
1144sgml-indent-step:2
1145sgml-indent-data:t
1146sgml-parent-document: ("charybdis-oper-guide.sgml" "book")
1147sgml-exposed-tags:nil
1148sgml-local-ecat-files:nil
1149fill-column:105
1150End:
1151-->