Remove unused files. Update snomask.html documentation.
[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 DNS lookup will be done only for the real hostname, and
189 the server will not try to resolve clients that connect to
190 "localhost."  Note that other DNS lookups are still done for outbound
191 connections.
192
193 RANDOM_SEED
194  * Type: string
195  * Default: none
196
197 When a client connects, the server sends the client a "cookie,"
198 consisting of a random number.  The client must return the cookie to
199 the server verbatim.  This is done to prevent IP spoofing.  The cookie
200 is generated by a pseudorandom number generator included in ircd.
201 This generator must be seeded with a phrase that is kept secret, to
202 ensure that the numbers it generates are not easily guessed.  The
203 value given to RANDOM_SEED may be a string of any length.  It should
204 not contain any characters that are considered special by the
205 configuration file system, such as ":" or "#"; the string should be at
206 least 8 characters long, but longer strings are better.  The
207 RANDOM_SEED may not be retrieved online.
208
209 DEFAULT_LIST_PARAM
210  * Type: string
211  * Default: none
212
213 The LIST command takes a single optional argument.  If given, that
214 argument is either a channel or a filter.  If that argument is not
215 given, then by default, /LIST will list all channels on the network.
216 Needless to say, this can generate a large amount of data on large
217 networks with many channels, as well as chewing up a lot of CPU time.
218 Server administrators can therefore set a default filter to be applied
219 to the channel list if the optional argument to LIST is omitted.
220
221 NICKNAMEHISTORYLENGTH
222  * Type: integer
223  * Default: 800
224
225 This value specifies the length of the nick name history list, which
226 is used for /WHOWAS and some nickname chasing in /KILL and /KICK.  It
227 uses about 300 to 400 bytes per entry.  Note that at a net break, so
228 many client disappear that the whole "whowas" list is refreshed a few
229 times (unless you make it rather large).  A reasonable value is "total
230 number of clients" / 25.
231
232 HOST_HIDING
233  * Type: boolean
234  * Default: TRUE
235
236 This selects whether local users can set umode +x, thus allowing them
237 to hide their hostname if they have also registered with a channel
238 service (i.e. they have the ACCOUNT flag set).
239
240 HIDDEN_HOST
241  * Type: string
242  * Default: users.undernet.org
243
244 This selects the suffix for the hidden hostmask (see HOST_HIDING).
245
246 HIDDEN_IP
247  * Type: string
248  * Default: 127.0.0.1
249
250 This selects a fake IP to be shown on /USERIP and /WHO %i when the
251 target has a hidden host (see HOST_HIDING).
252
253 CONNEXIT_NOTICES
254  * Type: boolean
255  * Default: FALSE
256
257 This feature controls the generation of server notices when a user
258 connects to or disconnects from the server.  Enabling this feature may
259 have a performance impact.
260
261 KILLCHASETIMELIMIT
262  * Type: integer
263  * Default: 30
264
265 If a user changes his or her nickname just before an operator issues a
266 /KILL, the /KILL will be changed to follow the user the operator
267 intended to get.  This option specifies the time limit, in seconds,
268 for this nickname change; if the user changed his or her nickname more
269 than this many seconds ago, the /KILL will not be changed.  Don't
270 change this unless you really need to.
271
272 MAXCHANNELSPERUSER
273  * Type: integer
274  * Default: 10
275
276 This is the maximum number of channels a user can be in at a time.
277 The "mandatory" value on Undernet is currently 10.  Since it only
278 influences the local server when you decrease it, its up to you to
279 decide if you want to use a smaller value.  Do not use a larger value
280 however, because it DOES cost more memory and bandwidth on all other
281 servers when you allow users to join more channels simultaneously.
282 One of the most important reasons to choose a smaller value is the
283 fact that the "GUI" clients tend to stay on every channel they join
284 (they aren't bothered by flooding in other channels).  It DOES take
285 your bandwidth however to send all those messages for 10 different
286 channels to all your users.
287
288 AVBANLEN
289  * Type: integer
290  * Default: 40
291
292 This is the expected average ban mask length.  Leave it at 40.
293
294 MAXBANS
295  * Type: integer
296  * Default: 30
297
298 This is the maximum number of bans a user may set on a given channel.
299
300 MAXSILES
301  * Type: integer
302  * Default: 15
303
304 This is the maximum number of masks a user can silence at a time.  The
305 silence command allows users to filter messages directed at them from
306 certain users or domains, at the source server.  Increasing this
307 number allows users to use up more memory with inefficient use of the
308 command.  If you're not sure, don't change this.
309
310 HANGONGOODLINK
311  * Type: integer
312  * Default: 300
313
314 Often the net breaks for a short time and it is useful to try to
315 reestablish the same connection faster than CONNECTFREQUENCY would
316 allow, but to keep from trying again on a bad connection, we require
317 that the connection be open for a certain minimum time. The
318 recommended value is 300 seconds.
319
320 HANGONRETRYDELAY
321  * Type: integer
322  * Default: 10
323
324 When attempting to quickly reestablish a connection to a good link, we
325 give the net a few seconds to calm down. This time must be long enough
326 for the other end to also notice that the connection is broken. The
327 recommended value is 10 seconds.
328
329 CONNECTTIMEOUT
330  * Type: integer
331  * Default: 90
332
333 Number of seconds to wait for a connect(2) call to complete.  NOTE:
334 this must be at *LEAST* 10.  When a client connects, it has
335 CONNECTTIMEOUT - 10 seconds for its host to respond to an ident lookup
336 query and for a DNS lookup to complete. It is recommended that you not
337 change this value, but if you do, consider the fact that users whose
338 clients do not support NOSPOOF will have to type /QUOTE PING <big
339 number> before registration.
340
341 MAXIMUM_LINKS
342  * Type: integer
343  * Default: 1
344
345 This is the maximum number of links for the built-in client class 0.
346 Leave this value at 1.
347
348 PINGFREQUENCY
349  * Type: integer
350  * Default: 120
351
352 If the daemon doesn't receive anything from any of its links within
353 PINGFREQUENCY seconds, then the it will attempt to check for an active
354 link with a PING message.  If no reply is received within
355 (PINGFREQUENCY * 2) seconds, then the connection will be closed.  This
356 value may be overridden by a Class block in "ircd.conf" if the
357 connection's Client or Connect block in "ircd.conf" assigns a specific
358 class to the connection (recommended).
359
360 CONNECTFREQUENCY
361  * Type: integer
362  * Default: 600
363
364 This is the default frequency that the server attempts to reconnect
365 with its uplink server if it is set to auto connect to it. Note that
366 this value is overridden by a Class block in ircd.conf if the C-lines
367 in ircd.conf assign a specific class to the connection (recommended).
368
369 DEFAULTMAXSENDQLENGTH
370  * Type: integer
371  * Default: 40000
372
373 This is the default value of the maximum sendQ length of connection
374 classes (see doc/example.conf for details on Class blocks).  You will
375 probably always override this value in your "ircd.conf" with the
376 Y-lines.  The given value used to be an often used value for client
377 sendQs.
378
379 GLINEMAXUSERCOUNT
380  * Type: integer
381  * Default: 20
382
383 G-lines that affect too many users have to be set with a special
384 command, to prevent accidental G-lines of large blocks of users.  This
385 feature sets that particular threshold.
386
387 MPATH
388  * Type: string
389  * Default: "ircd.motd"
390
391 MPATH is the filename (relative to DPATH) or the full path of the
392 "Message of the Day" file.  The contents of this file will be sent to
393 every client that connects to the server, after registration.
394
395 RPATH
396  * Type: string
397  * Default: "remote.motd"
398
399 RPATH is the filename (relative to DPATH) or the full path of the
400 "Remote Message of the Day" file.  The contents of this file will be
401 sent to every remote client that issues a /MOTD <your server name>.
402 Only the first three lines are sent, so you might want to keep that in
403 mind while writing the file.
404
405 PPATH
406  * Type: string
407  * Default: "ircd.pid"
408
409 PPATH is the filename (relative to DPATH) or the full path of the
410 "PID" file.  It is used for storing the server's process ID so that a
411 ps(1) isn't necessary.
412
413 TOS_SERVER
414  * Type: integer
415  * Default: 0x08
416
417 This option is used to specify the type of service that will be
418 requested for connections to other servers.  The value may be given as
419 a hexadecimal integer.
420
421 TOS_CLIENT
422  * Type: integer
423  * Default: 0x08
424
425 This option is used to specify the type of service that will be
426 requested for connections to users.  The value may be given as a
427 hexadecimal integer.
428
429 POLLS_PER_LOOP
430  * Type: integer
431  * Default: 200
432
433 Some of the engines used by the event interface get a number of events
434 from the kernel at once.  Since the number retrieved can impact
435 performance, it can be tuned by modifying this value.  The engines
436 enforce a lower limit of 20.
437
438 CONFIG_OPERCMDS
439  * Type: boolean
440  * Default: FALSE
441
442 For u2.10.11, several new oper-only features have been added that
443 involve changes to the server<->server protocol.  Until the entire
444 network is running the new version, these features cannot be enabled.
445 This configuration option provides a single switch to prevent the use
446 of these features until the entire network has been upgraded.  It is
447 not required that all servers set this to "TRUE" in order for the
448 features to be used.
449
450 HIS_MAP
451  * Type: boolean
452  * Default: TRUE
453
454 As per UnderNet CFV-165, this removes /MAP from users.
455
456 HIS_SNOTICES
457  * Type: boolean
458  * Default: TRUE
459
460 As per UnderNet CFV-165, this removes server notices from users.
461
462 HIS_SNOTICES_OPER_ONLY
463  * Type: boolean
464  * Default: TRUE
465
466 As per UnderNet CFV-165, this removes server notices from users.
467
468 HIS_DEBUG_OPER_ONLY
469  * Type: boolean
470  * Default: TRUE
471
472 As per UnderNet CFV-165, this removes server wallops from users.
473
474 HIS_WALLOPS
475  * Type: boolean
476  * Default: TRUE
477
478 As per UnderNet CFV-165, this removes operator wallops from users.
479
480 HIS_LINKS
481  * Type: boolean
482  * Default: TRUE
483
484 As per UnderNet CFV-165, this removes /LINKS from users.
485
486 HIS_TRACE
487  * Type: boolean
488  * Default: TRUE
489
490 As per UnderNet CFV-165, this removes /TRACE from users.
491
492 HIS_STATS_a
493  * Type: boolean
494  * Default: TRUE
495
496 As per UnderNet CFV-165, this removes /STATS a from users.
497
498 HIS_STATS_l
499  * Type: boolean
500  * Default: TRUE
501
502 As per UnderNet CFV-165, this removes /STATS l from users.
503
504 HIS_STATS_L
505  * Type: boolean
506  * Default: TRUE
507
508 As per UnderNet CFV-165, this removes /STATS L from users.
509
510 HIS_STATS_c
511  * Type: boolean
512  * Default: TRUE
513
514 As per UnderNet CFV-165, this removes /STATS c from users.
515
516 HIS_STATS_g
517  * Type: boolean
518  * Default: TRUE
519
520 As per UnderNet CFV-165, this removes /STATS g from users.
521
522 HIS_STATS_h
523  * Type: boolean
524  * Default: TRUE
525
526 As per UnderNet CFV-165, this removes /STATS h from users.
527
528 HIS_STATS_k
529  * Type: boolean
530  * Default: TRUE
531
532 As per UnderNet CFV-165, this removes /STATS k from users.
533
534 HIS_STATS_f
535  * Type: boolean
536  * Default: TRUE
537
538 As per UnderNet CFV-165, this removes /STATS f from users.
539
540 HIS_STATS_i
541  * Type: boolean
542  * Default: TRUE
543
544 As per UnderNet CFV-165, this removes /STATS i from users.
545
546 HIS_STATS_j
547  * Type: boolean
548  * Default: TRUE
549
550 As per UnderNet CFV-165, this removes /STATS j from users.
551
552 HIS_STATS_M
553  * Type: boolean
554  * Default: TRUE
555
556 As per UnderNet CFV-165, this removes /STATS M from users.
557
558 HIS_STATS_m
559  * Type: boolean
560  * Default: TRUE
561
562 As per UnderNet CFV-165, this removes /STATS m from users.
563
564 HIS_STATS_o
565  * Type: boolean
566  * Default: TRUE
567
568 As per UnderNet CFV-165, this removes /STATS o from users.
569
570 HIS_STATS_p
571  * Type: boolean
572  * Default: TRUE
573
574 As per UnderNet CFV-165, this removes /STATS p from users.
575
576 HIS_STATS_q
577  * Type: boolean
578  * Default: TRUE
579
580 As per UnderNet CFV-165, this removes /STATS q from users.
581
582 HIS_STATS_r
583  * Type: boolean
584  * Default: TRUE
585
586 As per UnderNet CFV-165, this removes /STATS r from users.
587
588 HIS_STATS_R
589  * Type: boolean
590  * Default: TRUE
591
592 As per UnderNet CFV-165, this removes /STATS R from users.
593
594 HIS_STATS_d
595  * Type: boolean
596  * Default: TRUE
597
598 As per UnderNet CFV-165, this removes /STATS d from users.
599
600 HIS_STATS_e
601  * Type: boolean
602  * Default: TRUE
603
604 As per UnderNet CFV-165, this removes /STATS e from users.
605
606 HIS_STATS_t
607  * Type: boolean
608  * Default: TRUE
609
610 As per UnderNet CFV-165, this removes /STATS t from users.
611
612 HIS_STATS_T
613  * Type: boolean
614  * Default: TRUE
615
616 As per UnderNet CFV-165, this removes /STATS T from users.
617
618 HIS_STATS_u
619  * Type: boolean
620  * Default: FALSE
621
622 As per UnderNet CFV-165, this allows users to perform /STATS u.
623
624 HIS_STATS_U
625  * Type: boolean
626  * Default: TRUE
627
628 As per UnderNet CFV-165, this removes /STATS U from users.
629
630 HIS_STATS_v
631  * Type: boolean
632  * Default: TRUE
633
634 As per UnderNet CFV-165, this removes /STATS v from users.
635
636 HIS_STATS_w
637  * Type: boolean
638  * Default: FALSE
639
640 As per UnderNet CFV-165, this allows users to perform /STATS w.
641
642 HIS_STATS_x
643  * Type: boolean
644  * Default: TRUE
645
646 As per UnderNet CFV-165, this removes /STATS x from users.
647
648 HIS_STATS_y
649  * Type: boolean
650  * Default: TRUE
651
652 As per UnderNet CFV-165, this removes /STATS y from users.
653
654 HIS_STATS_z
655  * Type: boolean
656  * Default: TRUE
657
658 As per UnderNet CFV-165, this removes /STATS z from users.
659
660 HIS_WHOIS_SERVERNAME
661  * Type: boolean
662  * Default: TRUE
663
664 As per UnderNet CFV-165, this removes server names in replies to /WHOIS.
665
666 HIS_WHOIS_IDLETIME
667  * Type: boolean
668  * Default: TRUE
669
670 As per UnderNet CFV-165, this removes idle time in replies to /WHOIS.
671
672 HIS_WHO_SERVERNAME
673  * Type: boolean
674  * Default: TRUE
675
676 As per UnderNet CFV-165, this removes server names in replies to /WHO.
677
678 HIS_WHO_HOPCOUNT
679  * Type: boolean
680  * Default: TRUE
681
682 As per UnderNet CFV-165, this replaces hopcount to a static 3 in
683 replies to /WHO.
684
685 HIS_BANWHO
686  * Type: boolean
687  * Default: TRUE
688
689 As per UnderNet CFV-165, this doesn't show which server set a ban.
690
691 HIS_KILLWHO
692  * Type: boolean
693  * Default: TRUE
694
695 As per UnderNet CFV-165, this doesn't show which server or oper performed a
696 kill.
697
698 HIS_REWRITE
699  * Type: boolean
700  * Default: TRUE
701
702 As per UnderNet CFV-165, this remaps remote numerics to come from the local
703 server.
704
705 HIS_REMOTE
706  * Type: integer
707  * Default: 1
708
709 As per UnderNet CFV-165, this disallows remote queries. (*sob!*)
710
711 HIS_NETSPLIT
712  * Type: boolean
713  * Default: TRUE
714
715 As per UnderNet CFV-165, this removes server names in net break sign-offs.
716
717 HIS_WHOIS_LOCALCHAN
718  * Type: boolean
719  * Default: TRUE
720
721 As per UnderNet CFV-165, this removes local channels in replies to /WHOIS.
722
723 HIS_SERVERNAME
724  * Type: string
725  * Default: "*.undernet.org"
726
727 As per UnderNet CFV-165, this is the "name" of the server shown to users on a
728 /WHOIS of another user.
729
730 HIS_SERVERINFO
731  * Type: string
732  * Default: "The Undernet Underworld"
733
734 As per UnderNet CFV-165, this is the "info" of the server shown to users on a
735 /WHOIS of another user.
736
737 HIS_URLSERVERS
738  * Type: string
739  * Default: "http://www.undernet.org/servers.php"
740
741 As per UnderNet CFV-165, this is the URL shown to users when they do a /MAP or
742 /LINKS.
743
744 NETWORK
745  * Type: string
746  * Default: "UnderNet"
747
748 This defines the network name as reported in the 005 "supported features"
749 numeric, and as used by the "Failed to deliver" message.
750
751 URL_CLIENTS
752  * Type: string
753  * Default: "ftp://ftp.undernet.org/pub/irc/clients"
754
755 This defines a URL that users may visit to find compatible IRC clients.
756
757 NICKLEN
758  * Type: integer
759  * Default: 9
760
761 This is the allowed length of the nickname length.  It may not be
762 larger than the NICKLEN #define, and should usually be the same
763 length.  The real purpose of this feature is to permit easy increases
764 in nickname length for a network.
765
766 IRCD_RES_RETRIES
767  * Type: integer
768  * Default: 2
769
770 This is the number of attempts the irc daemon's resolver will have at
771 trying to solicit a response from the DNS server.
772
773 IRCD_RES_TIMEOUT
774  * Type: integer
775  * Default: 4
776
777 When a DNS query is sent, the irc daemon's resolver will wait this many
778 seconds for a reply.  After this timeout has expired, it will retry again,
779 for as many retries as IRCD_RES_RETRIES allows.  This can be cut short by
780 AUTH_TIMEOUT expiring.
781 NOTE: Has no effect when using the adns resolver.
782
783 AUTH_TIMEOUT
784  * Type: integer
785  * Default: 9
786
787 This is the maximum number of seconds to wait for the ident lookup and
788 the DNS query to succeed.  On older (pre 2.10.11.06) servers this was
789 hard coded to 60 seconds.
790
791 IPCHECK_CLONE_LIMIT
792  * Type: integer
793  * Default: 4
794
795 The number of times you are allowed to connect within IPCHECK_CLONE_PERIOD
796 seconds before you are considered abusing the server and throttled.
797
798 IPCHECK_CLONE_PERIOD
799  * Type: integer
800  * Default: 40
801
802 The number of seconds you are allowed to connect IPCHECK_CLONE_LIMIT times
803 within before you are considered abusing the server and throttled.
804 For instance if you set IPCHECK_CLONE_LIMIT to 1, and IPCHECK_CLONE_PERIOD
805 to 10, then a user is only allowed to connect once in 10s, if they connect
806 again within 10s, then they are considered to be connecting too fast and
807 they are throttled.
808
809 IPCHECK_CLONE_DELAY
810  * Type: integer
811  * Default: 600
812
813 The number of seconds grace after restarting the server before the throttle
814 code kicks in.  Even if a user connects repetitively during this period,
815 they will never get throttled.  This is so after a restart users on a
816 multiuser box can all connect to a server simultaniously without being
817 considered an attack.
818
819 SOCKSENDBUF
820  * Type: integer
821  * Default: 61440
822
823 The send window size used for connections to other servers.
824
825 SOCKRECVBUF
826  * Type: integer
827  * Default: 61440
828
829 The receive window size used for connections to other servers.
830
831 ANNOUNCE_INVITES
832  * Type: boolean
833  * Default: FALSE
834
835 If set, send RPL_ISSUEDINVITE (345) to a channel's operators to
836 announce when someone is invited to the channel.
837
838 LOCAL_CHANNELS
839  * Type: boolean
840  * Default: TRUE
841
842 If set, allow users to create local channels.
843
844 TOPIC_BURST
845  * Type: boolean
846  * Default: FALSE
847
848 If set, send the current topic value and timestamp for channels during
849 burst.  This generally only makes sense for hubs to use, and it causes
850 a large increase in net.burst size.