Add new feature FEAT_HIS_WHOIS_LOCALCHAN.
[ircu2.10.12-pk.git] / doc / readme.features
1 Many of the old compile-time options are now configured through the
2 server configuration file, ircd.conf.  This file is intended to
3 document each of these features.  Logging, although also configured
4 through the use of F-lines, is documented in doc/readme.log.  NOTE
5 THAT THESE NAMES ARE CASE SENSITIVE!  Values are not case sensitive
6 unless stated otherwise in the documentation for that feature.
7
8 DOMAINNAME
9  * Type: string
10  * Default: picked by ./configure from /etc/resolv.conf
11
12 This option allows you to specify what you consider to be "local."  It
13 is only used for statistics.  When you issue the IRC command /STATS w,
14 the server will respond with statistics of how many clients have been
15 connecting to your server in the last minute, hour and day.  It will
16 give these statistics for all connections (including the servers), all
17 clients (from anywhere) and also for clients whose hostname ends on
18 the domain you specify here.  So if you are an ISP and you want to
19 know what the client load from your own domain is, specify that domain
20 here.  If you are unsure what to do, then it isn't really important
21 what you give here, just don't give an empty string.  A good guess is
22 the last two parts of your own hostname (i.e., if your hostname is
23 foo.bar.nowhere.org, specify "nowhere.org").  Note that the string you
24 give should NOT start with a "." and you should not use quotes.
25
26 RELIABLE_CLOCK
27  * Type: boolean
28  * Default: FALSE
29
30 You should really ONLY specify "TRUE" here when your system clock is
31 stable and accurate at all times (within a few seconds).  If you are
32 running ntpdate on a regular basis, or an equivalent like xntpd, to
33 keep your system clock synchronized over the network, then you might
34 have an accurate clock.  However, this is not guaranteed; for example,
35 it is known that xntpd gives unstable results on Linux in some cases.
36 Note that an unstable clock is worse then an clock that has a constant
37 offset, because the servers attempt to correct for a constant offset,
38 but do not correct jumps of your system clock!  In general you SHOULD
39 be running ntpdate or equivalent AND make sure it works when you run a
40 production server on Undernet.  Otherwise leave your clock alone and
41 specify "FALSE" here.  If unsure specify "FALSE"!
42
43 BUFFERPOOL
44  * Type: integer
45  * Default: 27000000
46
47 This specifies the maximum amount of RAM that your server will
48 allocate for buffering sendQs.  Small leafs can use a value as little
49 as 1000000, while large HUBs need to specify a value as high as
50 20000000.  If you run out of memory, clients and/or servers are
51 dropped with the error "Buffer allocation error"; then you will have
52 to increase this number (and install more RAM if appropriate).  If you
53 want a more educated guess for this value then realize that any value
54 is good if you _really_ would rather drop servers and clients than
55 allocate more memory; this will be the case when there is the danger
56 you may run out of memory for other allocations.  Even if you run the
57 daemon on a dedicated machine, specifying all of the RAM you have is a
58 bad thing, because running out of memory is a lot worse than dropping
59 clients in a controlled way; if possible you should have memory left
60 for all the internal structures (channels, clients, ban lists, receive
61 buffers) at all times.  On average, clients seem to use 150 bytes of
62 sendQ, but at peak moments this can easily increase to 2032 bytes per
63 client (sendQs are allocated in chunks of 2032 bytes).  The maximum
64 possible amount that can be allocated for sendQs is the number of
65 connected clients times whatever you specified as the maximum sendQ in
66 your Class blocks in the ircd.conf file.  That value will likely be larger
67 then the amount of RAM you have.  The educated guess I talked about
68 earlier would be "number of clients" times * 2048 bytes + "size of
69 net.burst" * n, where "n" is 1 for leafs and up to 5 for HUBs.  The
70 "size of net.burst" is about 125 bytes per online client (on the whole
71 network).  For large HUBs with 4000 clients on a network with 30,000
72 users, this results in 27 Mb.  Leafs could use 12 Mb.  Of course you
73 can use less when you have less than 4000 local clients.  This value
74 is in bytes.
75
76 HAS_FERGUSON_FLUSHER
77  * Type: boolean
78  * Default: FALSE
79
80 If you have a server with a lot of resources available, this option
81 will cause the server to attempt to flush its internal buffers before
82 dropping clients during a net break.  Don't define this if you don't
83 know for certain; if you're not careful this can end up rebooting
84 FreeBSD boxes.  For more information, refer to freebsd.txt, also in
85 this directory.
86
87 CLIENT_FLOOD
88  * Type: integer
89  * Default: 1024
90
91 Currently, everything that a client sends to a server is read by the
92 server and stored in a buffer (the clients receive queue).  The server
93 will process messages from this queue one by one (running over all
94 clients each time).  When a client sends new messages faster they get
95 processed, and the size of its receive buffer reaches this value, the
96 client is dropped with the error "Excess flood."  A reasonable value
97 is 1024 bytes.  The maximum size is 8000 bytes.
98
99 SERVER_PORT
100  * Type: integer
101  * Default: 4400
102
103 When an IRC operator attempts a connect to another server, he or she
104 may not know which port the connect should go to.  In this server
105 version, that operator may use the special port 0, in which case the
106 server will take the port from the Connect block.  If no port is
107 specified in the Connect block, however, the port specified by this
108 option will be used instead.
109
110 NODEFAULTMOTD
111  * Type: boolean
112  * Default: TRUE
113
114 Every time a client connects to your server, the full Message of the
115 Day (as specified by the Motd blocks or by the file specified by the MPATH
116 option) is sent to the client.  The server sends the Message of the
117 Day even though many clients permit the user to ignore it.  Many users
118 never read the message of the day anyway, making it a huge waste of
119 bandwidth.  If you specify "TRUE" here, then the server won't send the
120 MOTD to the client by default; instead, it will only tell the client
121 when the MOTD was last changed, and give instructions on how to obtain
122 it by typing /MOTD.
123
124 MOTD_BANNER
125  * Type: string
126  * Default: NULL
127
128 If you enable NODEFAULTMOTD, this specifies a one-line banner to be sent
129 to the client in addition to the instructions mentioned above.
130
131 PROVIDER
132  * Type: string
133  * Default: NULL
134
135 This string as added to the 001 numeric prefixed with "via" before the nick.
136 It's used for providing promotional space to providers as per CFV-202
137
138 KILL_IPMISMATCH
139  * Type: boolean
140  * Default: FALSE
141
142 When a client connects to your server, the IP address of the client is
143 reverse-resolved to obtain a hostname.  Then that hostname is resolved
144 to an IP address and compared with the IP address of the client.  If
145 they don't match, the client will appear with the IP address instead
146 of the hostname, unless KILL_IPMISMATCH is "TRUE," in which case the
147 client is simply disconnected.
148
149 IDLE_FROM_MSG
150  * Type: boolean
151  * Default: TRUE
152
153 The IRC command WHOIS gives an idle time for clients.  If you want
154 this idle time to be set to zero only when the client sends a PRIVMSG,
155 then you should specify "TRUE" here.  If you specify "FALSE," then the
156 idle time will be nullified on all messages except the server
157 PING/PONG.
158
159 HUB
160  * Type: boolean
161  * Default: FALSE
162
163 All servers of an IRC "network" are connected in a "tree" (no loops).
164 Servers that are only connected to one other server (called the
165 "uplink") are called "leafs"; servers that are connected to more than
166 one other server are called HUBs.  If you specify "FALSE" here then
167 your server will prevent itself from accidentally connecting to two
168 servers at once, thus keeping servers in poor network locations from
169 routing traffic.  Note that on Undernet, all newly linked servers are
170 linked as leafs during their test phase, and should specify "FALSE"
171 here.
172
173 WALLOPS_OPER_ONLY
174  * Type: boolean
175  * Default: FALSE
176
177 Setting this option removes the ability for clients that are not IRC
178 operators to see wallops messages.
179
180 NODNS
181  * Type: boolean
182  * Default: FALSE
183
184 If you are playing with the server off-line, and no DNS is available,
185 then long delays occur before the server starts up because it tries to
186 resolve the name given in the General block (which usually isn't given
187 in /etc/hosts) and for each connecting client.  If you specify "TRUE"
188 here, then a call to gethostbyname() will be done only for the real
189 hostname, and the server will not try to resolve clients that connect
190 to "localhost."  Note that other calls to gethostbyname() are still
191 done if you use VIRTUAL_HOST; also note that the server still tries to
192 resolve clients that connect to the real IP address of the server.
193
194 RANDOM_SEED
195  * Type: string
196  * Default: none
197
198 When a client connects, the server sends the client a "cookie,"
199 consisting of a random number.  The client must return the cookie to
200 the server verbatim.  This is done to prevent IP spoofing.  The cookie
201 is generated by a pseudorandom number generator included in ircd.
202 This generator must be seeded with a phrase that is kept secret, to
203 ensure that the numbers it generates are not easily guessed.  The
204 value given to RANDOM_SEED may be a string of any length.  It should
205 not contain any characters that are considered special by the
206 configuration file system, such as ":" or "#"; the string should be at
207 least 8 characters long, but longer strings are better.  The
208 RANDOM_SEED may not be retrieved online.
209
210 DEFAULT_LIST_PARAM
211  * Type: string
212  * Default: none
213
214 The LIST command takes a single optional argument.  If given, that
215 argument is either a channel or a filter.  If that argument is not
216 given, then by default, /LIST will list all channels on the network.
217 Needless to say, this can generate a large amount of data on large
218 networks with many channels, as well as chewing up a lot of CPU time.
219 Server administrators can therefore set a default filter to be applied
220 to the channel list if the optional argument to LIST is omitted.
221
222 NICKNAMEHISTORYLENGTH
223  * Type: integer
224  * Default: 800
225
226 This value specifies the length of the nick name history list, which
227 is used for /WHOWAS and some nickname chasing in /KILL and /KICK.  It
228 uses about 300 to 400 bytes per entry.  Note that at a net break, so
229 many client disappear that the whole "whowas" list is refreshed a few
230 times (unless you make it rather large).  A reasonable value is "total
231 number of clients" / 25.
232
233 HOST_HIDING
234  * Type: boolean
235  * Default: TRUE
236
237 This selects whether local users can set umode +x, thus allowing them
238 to hide their hostname if they have also registered with a channel
239 service (i.e. they have the ACCOUNT flag set).
240
241 HIDDEN_HOST
242  * Type: string
243  * Default: users.undernet.org
244
245 This selects the suffix for the hidden hostmask (see HOST_HIDING).
246
247 HIDDEN_IP
248  * Type: string
249  * Default: 127.0.0.1
250
251 This selects a fake IP to be shown on /USERIP and /WHO %i when the
252 target has a hidden host (see HOST_HIDING).
253
254 CONNEXIT_NOTICES
255  * Type: boolean
256  * Default: FALSE
257
258 This feature controls the generation of server notices when a user
259 connects to or disconnects from the server.  Enabling this feature may
260 have a performance impact.
261
262 KILLCHASETIMELIMIT
263  * Type: integer
264  * Default: 30
265
266 If a user changes his or her nickname just before an operator issues a
267 /KILL, the /KILL will be changed to follow the user the operator
268 intended to get.  This option specifies the time limit, in seconds,
269 for this nickname change; if the user changed his or her nickname more
270 than this many seconds ago, the /KILL will not be changed.  Don't
271 change this unless you really need to.
272
273 MAXCHANNELSPERUSER
274  * Type: integer
275  * Default: 10
276
277 This is the maximum number of channels a user can be in at a time.
278 The "mandatory" value on Undernet is currently 10.  Since it only
279 influences the local server when you decrease it, its up to you to
280 decide if you want to use a smaller value.  Do not use a larger value
281 however, because it DOES cost more memory and bandwidth on all other
282 servers when you allow users to join more channels simultaneously.
283 One of the most important reasons to choose a smaller value is the
284 fact that the "GUI" clients tend to stay on every channel they join
285 (they aren't bothered by flooding in other channels).  It DOES take
286 your bandwidth however to send all those messages for 10 different
287 channels to all your users.
288
289 AVBANLEN
290  * Type: integer
291  * Default: 40
292
293 This is the expected average ban mask length.  Leave it at 40.
294
295 MAXBANS
296  * Type: integer
297  * Default: 30
298
299 This is the maximum number of bans a user may set on a given channel.
300
301 MAXSILES
302  * Type: integer
303  * Default: 15
304
305 This is the maximum number of masks a user can silence at a time.  The
306 silence command allows users to filter messages directed at them from
307 certain users or domains, at the source server.  Increasing this
308 number allows users to use up more memory with inefficient use of the
309 command.  If you're not sure, don't change this.
310
311 HANGONGOODLINK
312  * Type: integer
313  * Default: 300
314
315 Often the net breaks for a short time and it is useful to try to
316 reestablish the same connection faster than CONNECTFREQUENCY would
317 allow, but to keep from trying again on a bad connection, we require
318 that the connection be open for a certain minimum time. The
319 recommended value is 300 seconds.
320
321 HANGONRETRYDELAY
322  * Type: integer
323  * Default: 10
324
325 When attempting to quickly reestablish a connection to a good link, we
326 give the net a few seconds to calm down. This time must be long enough
327 for the other end to also notice that the connection is broken. The
328 recommended value is 10 seconds.
329
330 CONNECTTIMEOUT
331  * Type: integer
332  * Default: 90
333
334 Number of seconds to wait for a connect(2) call to complete.  NOTE:
335 this must be at *LEAST* 10.  When a client connects, it has
336 CONNECTTIMEOUT - 10 seconds for its host to respond to an ident lookup
337 query and for a DNS lookup to complete. It is recommended that you not
338 change this value, but if you do, consider the fact that users whose
339 clients do not support NOSPOOF will have to type /QUOTE PING <big
340 number> before registration.
341
342 MAXIMUM_LINKS
343  * Type: integer
344  * Default: 1
345
346 This is the maximum number of links for the built-in client class 0.
347 Leave this value at 1.
348
349 PINGFREQUENCY
350  * Type: integer
351  * Default: 120
352
353 If the daemon doesn't receive anything from any of its links within
354 PINGFREQUENCY seconds, then the it will attempt to check for an active
355 link with a PING message.  If no reply is received within
356 (PINGFREQUENCY * 2) seconds, then the connection will be closed.  This
357 value may be overridden by a Class block in "ircd.conf" if the
358 connection's Client or Connect block in "ircd.conf" assigns a specific
359 class to the connection (recommended).
360
361 CONNECTFREQUENCY
362  * Type: integer
363  * Default: 600
364
365 This is the default frequency that the server attempts to reconnect
366 with its uplink server if it is set to auto connect to it. Note that
367 this value is overridden by a Class block in ircd.conf if the C-lines
368 in ircd.conf assign a specific class to the connection (recommended).
369
370 DEFAULTMAXSENDQLENGTH
371  * Type: integer
372  * Default: 40000
373
374 This is the default value of the maximum sendQ length of connection
375 classes (see doc/example.conf for details on Class blocks).  You will
376 probably always override this value in your "ircd.conf" with the
377 Y-lines.  The given value used to be an often used value for client
378 sendQs.
379
380 GLINEMAXUSERCOUNT
381  * Type: integer
382  * Default: 20
383
384 G-lines that affect too many users have to be set with a special
385 command, to prevent accidental G-lines of large blocks of users.  This
386 feature sets that particular threshold.
387
388 MPATH
389  * Type: string
390  * Default: "ircd.motd"
391
392 MPATH is the filename (relative to DPATH) or the full path of the
393 "Message of the Day" file.  The contents of this file will be sent to
394 every client that connects to the server, after registration.
395
396 RPATH
397  * Type: string
398  * Default: "remote.motd"
399
400 RPATH is the filename (relative to DPATH) or the full path of the
401 "Remote Message of the Day" file.  The contents of this file will be
402 sent to every remote client that issues a /MOTD <your server name>.
403 Only the first three lines are sent, so you might want to keep that in
404 mind while writing the file.
405
406 PPATH
407  * Type: string
408  * Default: "ircd.pid"
409
410 PPATH is the filename (relative to DPATH) or the full path of the
411 "PID" file.  It is used for storing the server's process ID so that a
412 ps(1) isn't necessary.
413
414 VIRTUAL_HOST
415  * Type: boolean
416  * Default: FALSE
417
418 This option is only needed when you wish to run multiple IRC servers
419 on the same machine, and they must share at least one port.  This will
420 require having multiple IP addresses for the machine that will be
421 hosting the servers.  If you specify "TRUE" here, you can cause the
422 server to bind to one of these IP addresses.  Use the vhost field of
423 the General block to specify the IP address.  If you are unsure, stick
424 with "FALSE."
425
426 TOS_SERVER
427  * Type: integer
428  * Default: 0x08
429
430 This option is used to specify the type of service that will be
431 requested for connections to other servers.  The value may be given as
432 a hexadecimal integer.
433
434 TOS_CLIENT
435  * Type: integer
436  * Default: 0x08
437
438 This option is used to specify the type of service that will be
439 requested for connections to users.  The value may be given as a
440 hexadecimal integer.
441
442 POLLS_PER_LOOP
443  * Type: integer
444  * Default: 200
445
446 Some of the engines used by the event interface get a number of events
447 from the kernel at once.  Since the number retrieved can impact
448 performance, it can be tuned by modifying this value.  The engines
449 enforce a lower limit of 20.
450
451 CONFIG_OPERCMDS
452  * Type: boolean
453  * Default: FALSE
454
455 For u2.10.11, several new oper-only features have been added that
456 involve changes to the server<->server protocol.  Until the entire
457 network is running the new version, these features cannot be enabled.
458 This configuration option provides a single switch to prevent the use
459 of these features until the entire network has been upgraded.  It is
460 not required that all servers set this to "TRUE" in order for the
461 features to be used.
462
463 HIS_MAP
464  * Type: boolean
465  * Default: TRUE
466
467 As per UnderNet CFV-165, this removes /MAP from users.
468
469 HIS_SNOTICES
470  * Type: boolean
471  * Default: TRUE
472
473 As per UnderNet CFV-165, this removes server notices from users.
474
475 HIS_SNOTICES_OPER_ONLY
476  * Type: boolean
477  * Default: TRUE
478
479 As per UnderNet CFV-165, this removes server notices from users.
480
481 HIS_DEBUG_OPER_ONLY
482  * Type: boolean
483  * Default: TRUE
484
485 As per UnderNet CFV-165, this removes server wallops from users.
486
487 HIS_WALLOPS
488  * Type: boolean
489  * Default: TRUE
490
491 As per UnderNet CFV-165, this removes operator wallops from users.
492
493 HIS_LINKS
494  * Type: boolean
495  * Default: TRUE
496
497 As per UnderNet CFV-165, this removes /LINKS from users.
498
499 HIS_TRACE
500  * Type: boolean
501  * Default: TRUE
502
503 As per UnderNet CFV-165, this removes /TRACE from users.
504
505 HIS_STATS_l
506  * Type: boolean
507  * Default: TRUE
508
509 As per UnderNet CFV-165, this removes /STATS l from users.
510
511 HIS_STATS_c
512  * Type: boolean
513  * Default: TRUE
514
515 As per UnderNet CFV-165, this removes /STATS c from users.
516
517 HIS_STATS_g
518  * Type: boolean
519  * Default: TRUE
520
521 As per UnderNet CFV-165, this removes /STATS g from users.
522
523 HIS_STATS_h
524  * Type: boolean
525  * Default: TRUE
526
527 As per UnderNet CFV-165, this removes /STATS h from users.
528
529 HIS_STATS_k
530  * Type: boolean
531  * Default: TRUE
532
533 As per UnderNet CFV-165, this removes /STATS k from users.
534
535 HIS_STATS_f
536  * Type: boolean
537  * Default: TRUE
538
539 As per UnderNet CFV-165, this removes /STATS f from users.
540
541 HIS_STATS_i
542  * Type: boolean
543  * Default: TRUE
544
545 As per UnderNet CFV-165, this removes /STATS i from users.
546
547 HIS_STATS_j
548  * Type: boolean
549  * Default: TRUE
550
551 As per UnderNet CFV-165, this removes /STATS j from users.
552
553 HIS_STATS_M
554  * Type: boolean
555  * Default: TRUE
556
557 As per UnderNet CFV-165, this removes /STATS M from users.
558
559 HIS_STATS_m
560  * Type: boolean
561  * Default: TRUE
562
563 As per UnderNet CFV-165, this removes /STATS m from users.
564
565 HIS_STATS_o
566  * Type: boolean
567  * Default: TRUE
568
569 As per UnderNet CFV-165, this removes /STATS o from users.
570
571 HIS_STATS_p
572  * Type: boolean
573  * Default: TRUE
574
575 As per UnderNet CFV-165, this removes /STATS p from users.
576
577 HIS_STATS_q
578  * Type: boolean
579  * Default: TRUE
580
581 As per UnderNet CFV-165, this removes /STATS q from users.
582
583 HIS_STATS_r
584  * Type: boolean
585  * Default: TRUE
586
587 As per UnderNet CFV-165, this removes /STATS r from users.
588
589 HIS_STATS_d
590  * Type: boolean
591  * Default: TRUE
592
593 As per UnderNet CFV-165, this removes /STATS d from users.
594
595 HIS_STATS_e
596  * Type: boolean
597  * Default: TRUE
598
599 As per UnderNet CFV-165, this removes /STATS e from users.
600
601 HIS_STATS_t
602  * Type: boolean
603  * Default: TRUE
604
605 As per UnderNet CFV-165, this removes /STATS t from users.
606
607 HIS_STATS_T
608  * Type: boolean
609  * Default: TRUE
610
611 As per UnderNet CFV-165, this removes /STATS T from users.
612
613 HIS_STATS_u
614  * Type: boolean
615  * Default: FALSE
616
617 As per UnderNet CFV-165, this allows users to perform /STATS u.
618
619 HIS_STATS_U
620  * Type: boolean
621  * Default: TRUE
622
623 As per UnderNet CFV-165, this removes /STATS U from users.
624
625 HIS_STATS_v
626  * Type: boolean
627  * Default: TRUE
628
629 As per UnderNet CFV-165, this removes /STATS v from users.
630
631 HIS_STATS_w
632  * Type: boolean
633  * Default: FALSE
634
635 As per UnderNet CFV-165, this allows users to perform /STATS w.
636
637 HIS_STATS_x
638  * Type: boolean
639  * Default: TRUE
640
641 As per UnderNet CFV-165, this removes /STATS x from users.
642
643 HIS_STATS_y
644  * Type: boolean
645  * Default: TRUE
646
647 As per UnderNet CFV-165, this removes /STATS y from users.
648
649 HIS_STATS_z
650  * Type: boolean
651  * Default: TRUE
652
653 As per UnderNet CFV-165, this removes /STATS z from users.
654
655 HIS_WHOIS_SERVERNAME
656  * Type: boolean
657  * Default: TRUE
658
659 As per UnderNet CFV-165, this removes server names in replies to /WHOIS.
660
661 HIS_WHOIS_IDLETIME
662  * Type: boolean
663  * Default: TRUE
664
665 As per UnderNet CFV-165, this removes idle time in replies to /WHOIS.
666
667 HIS_WHO_SERVERNAME
668  * Type: boolean
669  * Default: TRUE
670
671 As per UnderNet CFV-165, this removes server names in replies to /WHO.
672
673 HIS_WHO_HOPCOUNT
674  * Type: boolean
675  * Default: TRUE
676
677 As per UnderNet CFV-165, this replaces hopcount to a static 3 in
678 replies to /WHO.
679
680 HIS_BANWHO
681  * Type: boolean
682  * Default: TRUE
683
684 As per UnderNet CFV-165, this doesn't show which server set a ban.
685
686 HIS_KILLWHO
687  * Type: boolean
688  * Default: TRUE
689
690 As per UnderNet CFV-165, this doesn't show which server or oper performed a
691 kill.
692
693 HIS_REWRITE
694  * Type: boolean
695  * Default: TRUE
696
697 As per UnderNet CFV-165, this remaps remote numerics to come from the local
698 server.
699
700 HIS_REMOTE
701  * Type: integer
702  * Default: 1
703
704 As per UnderNet CFV-165, this disallows remote queries. (*sob!*)
705
706 HIS_NETSPLIT
707  * Type: boolean
708  * Default: TRUE
709
710 As per UnderNet CFV-165, this removes server names in net break sign-offs.
711
712 HIS_WHOIS_LOCALCHAN
713  * Type: boolean
714  * Default: TRUE
715
716 As per UnderNet CFV-165, this removes local channels in replies to /WHOIS.
717
718 HIS_SERVERNAME
719  * Type: string
720  * Default: "*.undernet.org"
721
722 As per UnderNet CFV-165, this is the "name" of the server shown to users on a
723 /WHOIS of another user.
724
725 HIS_SERVERINFO
726  * Type: string
727  * Default: "The Undernet Underworld"
728
729 As per UnderNet CFV-165, this is the "info" of the server shown to users on a
730 /WHOIS of another user.
731
732 HIS_URLSERVERS
733  * Type: string
734  * Default: "http://www.undernet.org/servers.php"
735
736 As per UnderNet CFV-165, this is the URL shown to users when they do a /MAP or
737 /LINKS.
738
739 NETWORK
740  * Type: string
741  * Default: "UnderNet"
742
743 This defines the network name as reported in the 005 "supported features"
744 numeric, and as used by the "Failed to deliver" message.
745
746 URL_CLIENTS
747  * Type: string
748  * Default: "ftp://ftp.undernet.org/pub/irc/clients"
749
750 This defines a URL that users may visit to find compatible IRC clients.
751
752 NICKLEN
753  * Type: integer
754  * Default: 9
755
756 This is the allowed length of the nickname length.  It may not be
757 larger than the NICKLEN #define, and should usually be the same
758 length.  The real purpose of this feature is to permit easy increases
759 in nickname length for a network.
760
761 IRCD_RES_RETRIES
762  * Type: integer
763  * Default: 2
764
765 This is the number of attempts the irc daemon's resolver will have at
766 trying to solicit a response from the DNS server.
767
768 IRCD_RES_TIMEOUT
769  * Type: integer
770  * Default: 4
771
772 When a DNS query is sent, the irc daemon's resolver will wait this many
773 seconds for a reply.  After this timeout has expired, it will retry again,
774 for as many retries as IRCD_RES_RETRIES allows.  This can be cut short by
775 AUTH_TIMEOUT expiring.
776 NOTE: Has no effect when using the adns resolver.
777
778 AUTH_TIMEOUT
779  * Type: integer
780  * Default: 9
781
782 This is the maximum number of seconds to wait for the ident lookup and
783 the DNS query to succeed.  On older (pre 2.10.11.06) servers this was
784 hard coded to 60 seconds.
785
786 IPCHECK_CLONE_LIMIT
787  * Type: integer
788  * Default: 4
789
790 The number of times you are allowed to connect within IPCHECK_CLONE_PERIOD
791 seconds before you are considered abusing the server and throttled.
792
793 IPCHECK_CLONE_PERIOD
794  * Type: integer
795  * Default: 40
796
797 The number of seconds you are allowed to connect IPCHECK_CLONE_LIMIT times
798 within before you are considered abusing the server and throttled.
799 For instance if you set IPCHECK_CLONE_LIMIT to 1, and IPCHECK_CLONE_PERIOD
800 to 10, then a user is only allowed to connect once in 10s, if they connect
801 again within 10s, then they are considered to be connecting too fast and
802 they are throttled.
803
804 IPCHECK_CLONE_DELAY
805  * Type: integer
806  * Default: 600
807
808 The number of seconds grace after restarting the server before the throttle
809 code kicks in.  Even if a user connects repetitively during this period,
810 they will never get throttled.  This is so after a restart users on a
811 multiuser box can all connect to a server simultaniously without being
812 considered an attack.
813
814 SOCKSENDBUF
815  * Type: integer
816  * Default: 61440
817
818 The send window size used for connections to other servers.
819
820 SOCKRECVBUF
821  * Type: integer
822  * Default: 61440
823
824 The receive window size used for connections to other servers.
825
826 ANNOUNCE_INVITES
827  * Type: boolean
828  * Default: FALSE
829
830 If set, send RPL_ISSUEDINVITE (345) to a channel's operators to
831 announce when someone is invited to the channel.