1INN.CONF(5)               InterNetNews Documentation               INN.CONF(5)
2
3
4

NAME

6       inn.conf - Configuration data for InterNetNews programs
7

DESCRIPTION

9       inn.conf in pathetc is the primary general configuration file for all
10       InterNetNews programs.  Settings which control the general operation of
11       various programs, as well as the paths to all portions of the news
12       installation, are found here.  The INNCONF environment variable, if
13       set, specifies an alternate path to inn.conf.
14
15       This file is intended to be fairly static.  Any changes made to it will
16       generally not affect any running programs until they restart.  Unlike
17       nearly every other configuration file, inn.conf cannot be reloaded
18       dynamically using ctlinnd(8); innd(8) must be stopped and restarted for
19       relevant changes to inn.conf to take effect ("ctlinnd xexec innd" is
20       the fastest way to do this.)
21
22       Blank lines and lines starting with a number sign ("#") are ignored.
23       All other lines specify parameters, and should be of the following
24       form:
25
26           <name>: <value>
27
28       (Any amount of whitespace can be put after the colon and is optional.)
29       If the value contains embedded whitespace or any of the characters
30       "[]<""\:>, it must be enclosed in double quotes ("").  A backslash
31       ("\") can be used to escape quotes and backslashes inside double
32       quotes.  <name> is case-sensitive; "server" is not the same as "Server"
33       or "SERVER".  (inn.conf parameters are generally all in lowercase.)
34
35       If <name> occurs more than once in the file, the first value is used.
36       Some parameters specified in the file may be overridden by environment
37       variables.  Most parameters have default values if not specified in
38       inn.conf; those defaults are noted in the description of each
39       parameter.
40
41       Many parameters take a boolean value.  For all such parameters, the
42       value may be specified as "true", "yes", or "on" to turn it on and may
43       be any of "false", "no", or "off" to turn it off.  The case of these
44       values is significant.
45
46       This documentation is extremely long and organized as a reference
47       manual rather than as a tutorial.  If this is your first exposure to
48       INN and these parameters, it would be better to start by reading other
49       man pages and referring to this one only when an inn.conf parameter is
50       explicitly mentioned.  Those parameters which need to be changed when
51       setting up a new server are discussed in INSTALL.
52

PARAMETERS

54   General Settings
55       These parameters are used by a wide variety of different components of
56       INN.
57
58       domain
59           This should be the domain name of the local host.  It should not
60           have a leading period, and it should not be a full host address.
61           It is used only if the inn_getfqdn() routine in libinn(3) cannot
62           get the fully qualified domain name by using either the
63           gethostname(3) or getaddrinfo(3) calls.  The check is very simple;
64           if either routine returns a name with a period in it, then it is
65           assumed to have the full domain name.  As this parameter is rarely
66           used, do not use it to affect the righthand side of autogenerated
67           Message-IDs; see instead virtualhost and domain in readers.conf(5).
68           The default value is unset.
69
70       innflags
71           The flags to pass to innd on startup.  See innd(8) for details on
72           the possible flags.  The default value is unset.
73
74           Note that these flags are only used when innd is started from
75           rc.news or nntpsend.
76
77       mailcmd
78           The path to the program to be used for mailing reports and control
79           messages.  The default is pathbin/innmail.  This should not
80           normally need to be changed.
81
82       mta The command to use when mailing postings to moderators and for the
83           use of innmail(1).  The message, with headers and an added To:
84           header, will be piped into this program.  The string %s, if
85           present, will be replaced by the e-mail address of the moderator.
86           It's strongly recommended for this command to include %s on the
87           command line rather than use the addresses in the To: and Cc:
88           headers of the message, since the latter approach allows the news
89           server to be abused as a mechanism to send mail to arbitrary
90           addresses and will result in unexpected behavior.  There is no
91           default value for this parameter; it must be set in inn.conf or a
92           fatal error message will be logged via syslog.
93
94           For most systems, "/usr/lib/sendmail -oi -oem %s" (adjusted for the
95           correct path to sendmail, and between double quotes) is a good
96           choice.
97
98       pathhost
99           What to put into the Path: header to represent the local site.
100           This is added to the Path: header of all articles that pass through
101           the system, including locally posted articles, and is also used
102           when processing some control messages and when naming the server in
103           status reports.  There is no default value; this parameter must be
104           set in inn.conf or INN will not start.  A good value to use is the
105           fully qualified hostname of the system.
106
107       runasgroup
108           The group under which the news server will run.  The default is
109           "news" (or the group specified at configure time) and should not
110           normally need to be changed.
111
112       runasuser
113           The user under which the news server will run.  The default is
114           "news" (or the user specified at configure time) and should not
115           normally need to be changed.
116
117       server
118           The name of the default NNTP server.  If nnrpdposthost is not set
119           and UNIX domain sockets are not supported, nnrpd(8) tries to hand
120           off locally-posted articles through an INET domain socket to this
121           server.  actsync(8), nntpget(8), and getlist(8) also use this value
122           as the default server to connect to.  In the latter cases, the
123           value of the NNTPSERVER environment variable, if it exists,
124           overrides this.  The default value is unset.
125
126       syntaxchecks
127           A list of values controlling the level of checks performed by innd
128           and nnrpd.  For instance:
129
130               syntaxchecks: [ no-laxmid ]
131
132           The last occurrence of a given value takes precedence, that is to
133           say if "no-laxmid laxmid" is listed, laxmid takes precedence.
134
135           Only one check can currently be enabled/disabled:
136
137           laxmid / no-laxmid
138               When laxmid is set, Message-IDs containing ".." in the left
139               part are accepted, as well as Message-IDs with two "@".  Some
140               non-compliant news posters generate such syntactically invalid
141               Message-IDs, especially in binary newsgroups.  The default is
142               no-laxmid, that is to say INN strictly follows the standard
143               regarding syntax checks.
144
145   Feed Configuration
146       These parameters govern incoming and outgoing feeds:  what size of
147       articles are accepted, what filtering and verification is performed on
148       them, whether articles in groups not carried by the server are still
149       stored and propagated, and other similar settings.
150
151       artcutoff
152           Articles older than this number of days are dropped.  The default
153           value is 10, which means that an incoming article will be rejected
154           if its posting date is farther in the past than ten days.
155
156           In order to disable that check on date, you can set this parameter
157           to 0.
158
159           The number on the "/remember/" line in expire.ctl should probably
160           be one more than that number in order to take into account articles
161           whose posting date is one day into the future.
162
163       bindaddress
164           Which IP address innd(8) should bind itself to.  This must be in
165           dotted-quad format (nnn.nnn.nnn.nnn).  If set to "all" or not set,
166           innd defaults to listening on all interfaces.  The value of the
167           INND_BIND_ADDRESS environment variable, if set, overrides this
168           setting.  The default value is unset.
169
170       bindaddress6
171           Like bindaddress but for IPv6 sockets. If only one of the
172           bindaddress and bindaddress6 parameters is used, then only the
173           socket for the corresponding address family is created. If both
174           parameters are used then two sockets are created. If neither of
175           them is used, the list of sockets to listen on will be determined
176           by the system library getaddrinfo(3) function.  The value of the
177           INND_BIND_ADDRESS6, if set, overrides this setting.  The default
178           value is unset.
179
180           Note that you will generally need to put double quotes ("") around
181           this value if you set it, since IPv6 addresses contain colons.
182
183       dontrejectfiltered
184           Normally innd(8) rejects incoming articles when directed to do so
185           by any enabled article filters (Perl or Python).  However, this
186           parameter causes such articles not to be rejected; instead
187           filtering can be applied on outbound articles.  If this parameter
188           is set, all articles will be accepted on the local machine, but
189           articles rejected by the filter will not be fed to any peers
190           specified in newsfeeds with the "Af" flag.  The default value is
191           false.
192
193       hiscachesize
194           If set to a value other than 0, a hash of recently received
195           Message-IDs is kept in memory to speed history lookups.  The value
196           is the amount of memory to devote to the cache in kilobytes.  The
197           cache is only used for incoming feeds and a small cache can hold
198           quite a few Message-IDs, so large values aren't necessarily useful
199           unless you have incoming feeds that are badly delayed.  innreport
200           can provide useful statistics regarding the use of the history
201           cache, especially when it misses.  A good value for a system with
202           more than one incoming feed is 256; systems with only one incoming
203           feed should probably set this to 0.  The default value is 256.
204
205       ignorenewsgroups
206           Whether newsgroup creation control messages (newgroup and rmgroup)
207           should be fed as if they were posted to the newsgroup they are
208           creating or deleting rather than to the newsgroups listed in the
209           Newsgroups: header.  If this parameter is set, the newsgroup
210           affected by the control message will be extracted from the Control:
211           header and the article will be fed as if its Newsgroups: header
212           contained solely that newsgroup.  This is useful for routing
213           control messages to peers when they are posted to irrelevant
214           newsgroups that shouldn't be matched against the peer's desired
215           newsgroups in newsfeeds.  This is a boolean value and the default
216           is false.
217
218       immediatecancel
219           When using the timecaf storage method, article cancels are normally
220           just cached to be cancelled, not cancelled immediately.  If this is
221           set to true, they will instead by cancelled as soon as the cancel
222           is processed.  This is a boolean value and the default is false.
223
224           This setting is ignored unless the timecaf storage method is used.
225
226       linecountfuzz
227           If set to something other than 0, the line count of the article is
228           checked against the Lines: header of the article (if present) and
229           the article is rejected if the values differ by more than this
230           amount.  A reasonable setting is 5, which is the standard maximum
231           signature length plus one (some injection software calculates the
232           Lines: header before adding the signature).  The default value is
233           0, which tells INN not to check the Lines: header of incoming
234           articles.
235
236       maxartsize
237           The maximum size of article (headers and body) that will be
238           accepted by the server, in bytes.  A value of 0 allows any size of
239           article, but note that innd will crash if system memory is
240           exceeded.  The default value is 1000000 (approximately 1 MB).  This
241           is checked against the article in wire format (CRLF at the end of
242           each line, leading periods protected, and with the trailing
243           "\r\n.\r\n" at the end).  See also localmaxartsize.
244
245       maxconnections
246           The maximum number of incoming NNTP connections innd(8) will
247           accept.  The default value is 50.
248
249       pathalias
250           If set, this value is prepended to the Path: header of accepted
251           posts (before pathhost) if it doesn't already appear in the Path:
252           header.  The main purpose of this parameter is to configure all
253           news servers within a particular organization to add a common
254           identity string to the Path: header.  The default value is unset.
255
256       pathcluster
257           If set, this value is appended to the Path: header of accepted
258           posts (after pathhost) if it isn't already present as the last
259           element of the Path: header.  The main purpose of this parameter is
260           to make several news servers appear as one server.  The default
261           value is unset.
262
263           Note that the Path: header reads right to left, so appended means
264           inserted at the leftmost side of the Path: header.
265
266       pgpverify
267           Whether to enable PGP verification of control messages other than
268           cancel.  This is a boolean value and the default in the inn.conf
269           sample file is based on whether configure found pgp, pgpv, pgpgpg,
270           gpgv, gpgv1, gpgv2, gpg, gpg1 or gpg2.  Note that if the parameter
271           is not present in the configuration file, it defaults to false.
272
273       port
274           What TCP port innd(8) should listen on.  The default value is 119,
275           the standard NNTP port.
276
277       refusecybercancels
278           Whether to refuse all articles whose message IDs start with
279           "<cancel.".  This message ID convention is widely followed by spam
280           cancellers, so the vast majority of such articles will be cancels
281           of spam.  This check, if enabled, is done before the history check
282           and the message ID is not written to the history file.  This is a
283           boolean value and the default is false.
284
285           This is a somewhat messy, inefficient, and inexact way of refusing
286           spam cancels.  A much better way is to ask all of your upstream
287           peers to not send to you any articles with "cyberspam" in the Path:
288           header (usually accomplished by having them mark "cyberspam" as an
289           alias for your machine in their feed configuration).  The filtering
290           enabled by this parameter is hard-coded; general filtering of
291           message IDs can be done via the embedded filtering support.
292
293       remembertrash
294           By default, innd(8) records rejected articles in history so that,
295           if offered the same article again, it can be refused before it is
296           sent.  If you wish to disable this behavior, set this to false.
297           This can cause a substantial increase in the amount of bandwidth
298           consumed by incoming news if you have several peers and reject a
299           lot of articles, so be careful with it.  Even if this is set to
300           true, INN won't log some rejected articles to history if there's
301           reason to believe the article might be accepted if offered by a
302           different peer, so there is usually no reason to set this to false
303           (although doing so can decrease the size of the history file).
304           This is a boolean value and the default is true.
305
306       sourceaddress
307           Which local IP address to bind to for outgoing NNTP sockets (used
308           by innxmit(8) among other programs, as well as innfeed(8) as long
309           as not overridden by bindaddress in innfeed.conf(5)).  This must be
310           in dotted-quad format (nnn.nnn.nnn.nnn).  If set to "all", the
311           operating system will choose the source IP address for outgoing
312           connections.  The default value is unset.
313
314       sourceaddress6
315           Like sourceaddress but for IPv6 sockets.  Note that you will
316           generally need to put double quotes ("") around this value if you
317           set it, since IPv6 addresses contain colons.
318
319       verifycancels
320           Set this to true to enable a simplistic check on all cancel
321           messages, attempting to verify (by simple header comparison) that
322           at least one newsgroup in the cancel message can be found in the
323           article to be cancelled.  This check can't be done if the cancel
324           arrives before the article does.  This is a boolean value, and the
325           default is false.
326
327           Note that RFC 5537 (USEPRO) mentions that "cancel control messages
328           are not required to contain From: and Sender: header fields
329           matching the target message.  This requirement only encouraged
330           cancel issuers to conceal their identity and provided no security".
331           This check is therefore not done as it is extremely easy to spoof.
332
333       verifygroups
334           Set this to true to reject incoming articles which contain an
335           unknown newsgroup in the whole list of newsgroups to which they are
336           posted.  In case wanttrash is set to true, such articles will still
337           be rejected.  This is a boolean value, and the default is false.
338
339       wanttrash
340           Set this to true if you want to file articles posted to unknown
341           newsgroups (newsgroups not in the active file) into the "junk"
342           newsgroup rather than rejecting them.  This is sometimes useful for
343           a transit news server that needs to propagate articles (according
344           to the setting of "Aj" in the newsfeeds feed pattern) in all
345           newsgroups regardless if they're carried locally.  This is a
346           boolean value and the default is false.
347
348           The logtrash parameter specifies whether such articles should be
349           logged as posted to unwanted newsgroups in the news log file.
350
351       wipcheck
352           If INN is offered an article by a peer on one channel, it will
353           return deferral responses (code 436) to all other offers of that
354           article for this many seconds.  (After this long, if the peer that
355           offered the article still hasn't sent it, it will be accepted from
356           other channels.)  The default value is 5 and probably doesn't need
357           to be changed.
358
359       wipexpire
360           How long, in seconds, to keep track of message IDs offered on a
361           channel before expiring articles that still haven't been sent.  The
362           default value is 10 and probably doesn't need to be changed.
363
364   History Settings
365       The following parameter affect the history database.
366
367       hismethod
368           Which history storage method to use.  The only currently supported
369           value is "hisv6".  There is no default value; this parameter must
370           be set.
371
372           "hisv6"
373               Stores history data in the INN history v6 format:  history(5)
374               text file and a number of dbz(3) database files; this may be in
375               true history v6 format, or tagged hash format, depending on the
376               build options.  Separation of these two is a project which has
377               not yet been undertaken.
378
379   Article Storage
380       These parameters affect how articles are stored on disk.
381
382       cnfscheckfudgesize
383           If set to a value other than 0, the claimed size of articles in
384           CNFS cycbuffs is checked against maxartsize plus this value, and if
385           larger, the CNFS cycbuff is considered corrupt.  This can be useful
386           as a sanity check after a system crash, but be careful using this
387           parameter if you have changed maxartsize recently.  The default
388           value is 0.
389
390       enableoverview
391           Whether to write out overview data for articles.  If set to false,
392           INN will run much faster, but reading news from the system will be
393           impossible (the server will be for news transit only).  If this
394           option is set to true, ovmethod must also be set.  This is a
395           boolean value and the default is true.
396
397       extraoverviewadvertised
398           Besides the seven standard overview fields (which are in order
399           "Subject:", "From:", "Date:", "Message-ID:", "References:",
400           ":bytes" and ":lines") and the eighth "Xref:full" field required by
401           INN in order to handle crossposts, it is possible to add other
402           fields in the overview database.  This parameter expects a list of
403           such header names.  Overview data for these additional headers will
404           be generated for each new article at the time of arrival.  For
405           instance, if you specify:
406
407               extraoverviewadvertised: [ Path Injection-Info ]
408
409           it implies that nnrpd will advertise "Path:full" and
410           "Injection-Info:full" as the ninth and tenth fields in response to
411           LIST OVERVIEW.FMT and that these two headers will be stored in the
412           overview database for each new article.
413
414           The default value is an empty list (no additional fields are
415           stored).  Owing to optimizations when innd parses the articles it
416           receives, it is possible that all the values in the list are not
417           recognized by innd as standard headers.  In such cases, innd will
418           log an error in news.err at startup and the unrecognized fields
419           will be discarded.
420
421           You should advertise only fields for which the overview database is
422           consistent, that is to say it records the content or absence of
423           these fields for all articles, including those already existing in
424           the news spool.  Consequently, if you decide to add or remove a
425           field from your overview database, you should either modify
426           extraoverviewadvertised and rebuild your overview database with
427           makehistory(8) after removing all existing overview files, or
428           implement a transition period by first using extraoverviewhidden as
429           described below.
430
431           Use of a transition period can accommodate most overview
432           reconfigurations, but certain drastic changes may still require a
433           complete overview rebuild.
434
435           If for instance you want to store the content of the To: header in
436           addition to the fields already stored above, you should use:
437
438               extraoverviewadvertised: [ Path Injection-Info ]
439               extraoverviewhidden:     [ To ]
440
441           This way, "To:full" will not be advertised by nnrpd but will be
442           stored for each new article.  Once you know that all articles in
443           your overview database record the content or absence of that new
444           field (if expire.ctl(5) is parametered so that all your articles
445           expire within 30 days, you can assume the database is in such a
446           state after 30 days -- however, note that time to expiration can be
447           unpredictable with CNFS and you then have to use "cnfsstat -a" for
448           checking on when buffers have rolled over), you should put:
449
450               extraoverviewadvertised: [ Path Injection-Info To ]
451               extraoverviewhidden:     [ ]
452
453           The "To" value must be added at the end of the list because order
454           matters and fields mentioned in extraoverviewhidden are generated
455           after those mentioned in extraoverviewadvertised.  nnrpd will now
456           advertise "To:full" in response to the LIST OVERVIEW.FMT command
457           ("full" indicates that the header appears followed by its value).
458
459           Now suppose you want to remove the content of the Injection-Info:
460           header from the overview.  As order matters, the overview database
461           will no longer be consistent for the To: header.  Therefore, you
462           need to specify:
463
464               extraoverviewadvertised: [ Path ]
465               extraoverviewhidden:     [ To ]
466
467           And once overview data is accurate for all articles, you should
468           use:
469
470               extraoverviewadvertised: [ Path To ]
471               extraoverviewhidden:     [ ]
472
473           Note that you have to restart nnrpd if it runs as a daemon whenever
474           you change the value of extraoverviewadvertised; a mere "ctlinnd
475           xexec innd" is not enough.
476
477       extraoverviewhidden
478           This parameter should be used in conjunction with
479           extraoverviewadvertised (see above for more details).  It expects a
480           list of headers names.  Overview data for these headers will be
481           generated for each new article at the time of arrival but, contrary
482           to the fields mentioned in extraoverviewadvertised, nnrpd will not
483           advertise them in response to the LIST OVERVIEW.FMT command.  It
484           also implies that nnrpd will not look in the overview database for
485           fields mentioned in extraoverviewhidden when it handles HDR, XHDR
486           and XPAT requests; nnrpd will have to parse the headers of the
487           requested articles in the news spool, which is slower than directly
488           querying the overview database.
489
490           The default value is an empty list (no additional fields are
491           stored).  Owing to optimizations when innd parses the articles it
492           receives, it is possible that all the values in the list are not
493           recognized by innd as standard headers.  In such cases, innd will
494           log an error in news.err at startup and the unrecognized fields
495           will be discarded.
496
497       groupbaseexpiry
498           Whether to enable newsgroup-based expiry.  If set to false, article
499           expiry is done based on storage class of storing method.  If set to
500           true (and overview information is available), expiry is done by
501           newsgroup name.  This affects the format of expire.ctl.  This is a
502           boolean value and the default is true.
503
504       mergetogroups
505           Whether to file all postings to "to.*" groups in the
506           pseudonewsgroup "to".  If this is set to true, the newsgroup "to"
507           must exist in the active file or INN will not start.  (See the
508           discussion of "to."  groups in innd(8) under CONTROL MESSAGES.)
509           This is a boolean value and the default is false.
510
511       nfswriter
512           For servers writing articles, determine whether the article spool
513           is on NFS storage.  If set, INN attempts to flush articles to the
514           spool in a more timely manner, rather than relying on the operating
515           system to flush things such as the CNFS article bitmaps.  You
516           should only set this parameter if you are attempting to use a
517           shared NFS spool on a machine acting as a single writer within a
518           cluster.  This is a boolean value and the default is false.
519
520       overcachesize
521           How many cache slots to reserve for open overview files.  If INN is
522           writing overview files (see enableoverview), ovmethod is set to
523           "tradindexed", and this is set to a value other than 0, INN will
524           keep around and open that many recently written-to overview files
525           in case more articles come in for those newsgroups.  Every overview
526           cache slot consumes two file descriptors, so be careful not to set
527           this value too high.  You may be able to use the "limit" command to
528           see how many open file descriptors your operating system allows.
529           innd(8) also uses an open file descriptor for each incoming feed
530           and outgoing channel or batch file, and if it runs out of open file
531           descriptors, it may throttle and stop accepting new news.  The
532           default value is 128 (which is probably still too low if you have a
533           large number of file descriptors available).
534
535           This setting is ignored unless ovmethod is set to "tradindexed".
536
537       ovgrouppat
538           If set, restricts the overview data stored by INN to only the
539           newsgroups matching this comma-separated list of uwildmat(3)
540           expressions.  Newsgroups not matching this setting may not be
541           readable, and if groupbaseexpiry is set to true and the storage
542           method for these newsgroups does not have self-expire
543           functionality, storing overview data will fail.  The default is
544           unset.
545
546       ovmethod
547           Which overview storage method to use.  Currently supported values
548           are "tradindexed", "buffindexed", and "ovdb".  There is no default
549           value; this parameter must be set if enableoverview is true (the
550           default).
551
552           "buffindexed"
553               Stores overview data and index information into buffers, which
554               are preconfigured files defined in buffindexed.conf.
555               "buffindexed" never consumes additional disk space beyond that
556               allocated to these buffers.
557
558           "tradindexed"
559               Uses two files per newsgroup, one containing the overview data
560               and one containing the index.  Fast for readers, but slow to
561               write to.
562
563           "ovdb"
564               Stores data into a Berkeley DB database.  See the ovdb(5) man
565               page.
566
567       storeonxref
568           If set to true, articles will be stored based on the newsgroup
569           names in the Xref: header rather than in the Newsgroups: header.
570           This affects what the patterns in storage.conf apply to.  The
571           primary interesting effect of setting this to true is to enable
572           filing of all control messages according to what storage class the
573           control pseudogroups are filed in rather than according to the
574           newsgroups the control messages are posted to.  This is a boolean
575           value and the default is true.
576
577           If the tradspool article storage method is used, storeonxref must
578           be true.
579
580       useoverchan
581           Whether to innd(8) should create overview data internally through
582           libstorage(3).  If set to false, innd creates overview data by
583           itself.  If set to true, innd does not create; instead overview
584           data must be created by overchan(8) from an appropriate entry in
585           newsfeeds.  Setting to true may be useful, if innd cannot keep up
586           with incoming feed and the bottleneck is creation of overview data
587           within innd.  This is a boolean value and the default is false.
588
589       wireformat
590           Only used with the tradspool storage method, this says whether to
591           write articles in wire format.  Wire format means storing articles
592           with "\r\n" at the end of each line and with periods at the
593           beginning of lines doubled, the article format required by the NNTP
594           protocol.  Articles stored in this format are suitable for sending
595           directly to a network connection without requiring conversion, and
596           therefore setting this to true can make the server more efficient.
597           The primary reason not to set this is if you have old existing
598           software that looks around in the spool and doesn't understand how
599           to read wire format.  Storage methods other than tradspool always
600           store articles in wire format.  This is a boolean value and the
601           default is true.
602
603       xrefslave
604           Whether to act as the slave of another server.  If set, INN
605           attempts to duplicate exactly the article numbering of the server
606           feeding it by looking at the Xref: header of incoming articles and
607           assigning the same article numbers to articles as was noted in the
608           Xref: header from the upstream server.  The result is that clients
609           should be able to point at either server interchangeably (using
610           some load balancing scheme, for example) and see the same internal
611           article numbering.  Servers with this parameter set should
612           generally only have one upstream feed, and should always have
613           nnrpdposthost set to hand locally posted articles off to the master
614           server.  The upstream should be careful to always feed articles in
615           order (innfeed(8) can have problems with this in the event of a
616           backlog).  This is a boolean value and the default is false.
617
618   Reading
619       These parameters affect the behavior of INN for readers.  Most of them
620       are used by nnrpd(8).  There are some special sets of settings that are
621       broken out separately after the initial alphabetized list.
622
623       Note that the two parameters nnrpperlauth and nnrppythonauth are now
624       obsolete; see "Changes to Perl Authentication Support for nnrpd" in
625       doc/hook-perl and "Changes to Python Authentication and Access Control
626       Support for nnrpd" in doc/hook-python for more information.
627
628       allownewnews
629           Whether to allow use of the NEWNEWS command by clients.  This
630           command used to put a heavy load on the server in older versions of
631           INN, but is now reasonably efficient, at least if only one
632           newsgroup is specified by the client.  This is a boolean value and
633           the default is true.  If you use the access parameter in
634           readers.conf, be sure to read about the way it overrides
635           allownewnews.
636
637       articlemmap
638           Whether to attempt to mmap() articles.  Setting this to true will
639           give better performance on most systems, but some systems have
640           problems with mmap().  If this is set to false, articles will be
641           read into memory before being sent to readers.  This is a boolean
642           value and the default is true.
643
644       clienttimeout
645           How long (in seconds) a client connection can be idle before it
646           exits.  When setting this parameter, be aware that some newsreaders
647           use the same connection for reading and posting and don't deal well
648           with the connection timing out while a post is being composed.  If
649           the system isn't having a problem with too many long-lived
650           connections, it may be a good idea to increase this value to 3600
651           (an hour).  The default value is 1800 (thirty minutes).
652
653       initialtimeout
654           How long (in seconds) nnrpd will wait for the first command from a
655           reader connection before dropping the connection.  This is a
656           defensive timeout intended to protect the news server from badly
657           behaved reader clients that open and abandon a multitude of
658           connections without every closing them.  The default value is 10
659           (ten seconds), which may need to be increased if many clients
660           connect via slow network links.
661
662       msgidcachesize
663           How many cache slots to reserve for message-IDs to storage token
664           translations.  When serving overview data to clients (NEWNEWS,
665           OVER, etc.), nnrpd(8) can cache the storage token associated with a
666           message-ID and save the cost of looking it up in the history file;
667           for some configurations, setting this parameter can save more than
668           90% of the wall clock time for a session.  The default value is
669           64000.
670
671       nfsreader
672           For servers reading articles, determine whether the article spool
673           is on NFS storage.  If set, INN will attempt to force articles and
674           overviews to be read directly from the NFS spool rather than from
675           cached copies.  You should only set this parameter if you are
676           attempting to use a shared NFS spool on a machine acting as a
677           reader within a cluster.  This is a boolean value and the default
678           is false.
679
680       nfsreaderdelay
681           If nfsreader is set, INN will use the value of nfsreaderdelay to
682           delay the apparent arrival time of articles to clients by this
683           amount.  Note that only answers to GROUP and NEWNEWS commands are
684           affected.  This value should be tuned based on the NFS cache
685           timeouts locally.  The default is 60, that is to say one minute.
686
687       nnrpdcheckart
688           Whether nnrpd should check the existence of an article before
689           listing it as present in response to an NNTP command.  The primary
690           use of this setting is to prevent nnrpd from returning information
691           about articles which are no longer present on the server but which
692           still have overview data available.  Checking the existence of
693           articles before returning overview information slows down the
694           overview commands, but reduces the number of "article is missing"
695           errors seen by the client.  This is a boolean value and the default
696           is true.
697
698       nnrpdflags
699           When nnrpd(8) is spawned from innd(8), these flags are passed as
700           arguments to the nnrpd process.  This setting does not affect
701           instances of nnrpd that are started in daemon mode, or instances
702           that are started via another listener process such as inetd(8) or
703           xinetd(8).  Shell quoting and metacharacters are not supported.
704           This is a string value and the default is unset.
705
706       nnrpdloadlimit
707           If set to a value other than 0, connections to nnrpd will be
708           refused if the system load average is higher than this value.  The
709           default value is 16.
710
711       noreader
712           Normally, innd(8) will fork a copy of nnrpd(8) for all incoming
713           connections from hosts not listed in incoming.conf.  If this
714           parameter is set to true, those connections will instead be
715           rejected with a 502 error code.  This should be set to true for a
716           transit-only server that doesn't support readers, or if nnrpd is
717           running in daemon mode or being started out of inetd.  This is a
718           boolean value and the default is false.
719
720       readerswhenstopped
721           Whether to allow readers to connect even if the server is paused or
722           throttled.  This is only applicable if nnrpd(8) is spawned from
723           innd(8) rather than run out of inetd or in daemon mode.  This is a
724           boolean value and the default is false.
725
726       readertrack
727           Whether to enable the tracking system for client behavior.  Tracked
728           information is recorded to pathlog/tracklogs/log-ID, where ID is
729           determined by nnrpd's PID and launch time.  Currently the
730           information recorded includes initial connection and posting; only
731           information about clients listed in nnrpd.track is recorded.  In
732           addition, every posted article will be saved in
733           pathlog/trackposts/track.message-id, where message-id is the
734           message ID of the post.  This is a boolean value and the default is
735           false.
736
737       tradindexedmmap
738           Whether to attempt to mmap() tradindexed overviews articles.
739           Setting this to true will give better performance on most systems,
740           but some systems have problems with mmap().  If this is set to
741           false, overviews will be read into memory before being sent to
742           readers.  This is a boolean value and the default is true.
743
744       INN has optional support for generating keyword information
745       automatically from article body text and putting that information in
746       overview for the use of clients that know to look for it (HDR, OVER and
747       XPAT commands).  The following parameters control that feature.
748
749       This may be too slow if you're taking a substantial feed, and probably
750       will not be useful for the average news reader; enabling this is not
751       recommended unless you have some specific intention to take advantage
752       of it.
753
754       keywords
755           Whether the keyword generation support should be enabled.  This is
756           a boolean value and the default is false.
757
758           If an article already contains a Keywords: header, no keyword
759           generation is done and the original Keywords: header is kept
760           untouched.
761
762           In order to use this feature, the regex library should be available
763           and INN configured with the --enable-keywords flag.  Otherwise, no
764           keywords will be generated, even though this boolean value is set
765           to true.  You also have to add the integration of the Keywords:
766           header into the overview with extraoverviewadvertised or
767           extraoverviewhidden.
768
769       keyartlimit
770           Articles larger than this value in bytes will not have keywords
771           generated for them (since it would take too long to do so).  The
772           default value is 100000 (approximately 100 KB).
773
774       keylimit
775           Maximum number of bytes allocated for keyword data.  If there are
776           more keywords than will fit into this many bytes when separated by
777           commas, the rest are discarded.  The default value is 512.
778
779       keymaxwords
780           Maximum number of keywords that will be generated for an article.
781           (The keyword generation code will attempt to discard "noise" words,
782           so the number of keywords actually written into the overview will
783           usually be smaller than this even if the maximum number of keywords
784           is found.)  The default value is 250.
785
786   Posting
787       These parameters are only used by nnrpd(8), inews(1), and other
788       programs that accept or generate postings.  There are some special sets
789       of settings that are broken out separately after the initial
790       alphabetized list.
791
792       addinjectiondate
793           Whether to add an Injection-Date: header field to all local posts.
794           This is a boolean value and the default is true.
795
796           Note that no Injection-Date: header fields will be added to local
797           posts already containing both a Message-ID: header field and a
798           Date: header field.  This is done in conformance with standards, to
799           help minimize the possibility of a loop in e-mail gatewaying and
800           ensure that a newly injected article is not treated as a new,
801           separate article in case of multiple injection of the same article
802           to different injecting agents.
803
804       addinjectionpostingaccount
805           Whether to add a posting-account attribute to the Injection-Info:
806           header to all local posts giving the username assigned to the user
807           at connection time or after authentication.  This is a boolean
808           value and the default is false.  There is no intrinsic support for
809           obfuscating the value.  That has to be done with a user-written
810           Perl filter, if desired.
811
812       addinjectionpostinghost
813           Whether to add a posting-host attribute to the Injection-Info:
814           header to all local posts giving an FQDN (when known, by reverse
815           lookup of the client IP address) and IP address of the system from
816           which the post was received.  This is a boolean value and the
817           default is true.  Note that INN either does not add this attribute
818           or adds the name (when known) and IP address of the client.  There
819           is no intrinsic support for obfuscating the name of the client.
820           That has to be done with a user-written Perl filter, if desired.
821
822           When this parameter is set to true, an FQDN (obtained by reverse
823           lookup of the client IP address or, if unknown, the IP address
824           itself) of the client is also added to the Path: header, after the
825           "!.POSTED" diagnostic.
826
827       checkincludedtext
828           Whether to check local postings for the ratio of new to quoted text
829           and reject them if that ratio is under 50%.  Included text is
830           recognized by looking for lines beginning with ">", "|", or ":".
831           This is a boolean value and the default is false.
832
833       complaints
834           The value of the mail-complaints-to attribute of the Injection-
835           Info: header added to all local posts.  The default is the
836           newsmaster's e-mail address.  (If the newsmaster, selected at
837           configure time and defaulting to "usenet", doesn't contain "@", the
838           address will consist of the newsmaster, a "@", and the value of
839           fromhost.)
840
841       fromhost
842           Contains a domain used to construct e-mail addresses.  The address
843           of the local news administrator will be given as <user>@fromhost,
844           where <user> is the newsmaster user set at compile time ("usenet"
845           by default).  This setting will also be used by mailpost(8) to
846           fully qualify addresses and by inews(1) to generate the Sender:
847           header (and From: header if missing).  The value of the FROMHOST
848           environment variable, if set, overrides this setting.  The default
849           is the fully qualified domain name of the local host.
850
851       localmaxartsize
852           The maximum article size (in bytes) for locally posted articles.
853           Articles larger than this will be rejected.  A value of 0 allows
854           any size of article, but note that nnrpd and innd will crash if
855           system memory is exceeded.  See also maxartsize, which applies to
856           all articles including those posted locally.  The default value is
857           1000000 (approximately 1 MB).
858
859       moderatormailer
860           The address to which to send submissions for moderated groups.  It
861           is only used if the moderators file doesn't exist, or if the
862           moderated group to which an article is posted is not matched by any
863           entry in that file, and takes the same form as an entry in the
864           moderators file.  In most cases, "%s@moderators.isc.org" is a good
865           value for this parameter (%s is expanded into a form of the
866           newsgroup name).  See moderators(5) for more details about the
867           syntax.  The default is unset.  If this parameter isn't set and an
868           article is posted to a moderated group that does not have a
869           matching entry in the moderators file, the posting will be rejected
870           with an error.
871
872       nnrpdauthsender
873           Whether to generate a Sender: header based on reader
874           authentication.  If this parameter is set, a Sender: header will be
875           added to local posts containing the identity assigned by
876           readers.conf.  If the assigned identity does not include an "@",
877           the reader's hostname is used.  If this parameter is set but no
878           identity is assigned, the Sender: header will be removed from all
879           posts even if the poster includes one.  This is a boolean value and
880           the default is false.
881
882       nnrpdposthost
883           If set, nnrpd(8) and rnews(1) will pass all locally posted articles
884           to the specified host rather than trying to inject them locally.
885           See also nnrpdpostport.  This should always be set if xrefslave is
886           true.  The default value is unset.
887
888       nnrpdpostport
889           The port on the remote server to connect to to post when
890           nnrpdposthost is used.  The default value is 119.
891
892       organization
893           What to put in the Organization: header if it is left blank by the
894           poster.  The value of the ORGANIZATION environment variable, if
895           set, overrides this setting.  The default is unset, which tells INN
896           not to insert an Organization: header.
897
898       spoolfirst
899           If true, nnrpd(8) will spool new articles rather than attempting to
900           send them to innd(8).  If false, nnrpd will spool articles only if
901           it receives an error trying to send them to innd.  Setting this to
902           true can be useful if nnrpd must respond as fast as possible to the
903           client; however, when set, articles will not appear to readers
904           until they are given to innd.  nnrpd won't do this; "rnews -U" must
905           be run periodically to take the spooled articles and post them.
906           This is a boolean value and the default is false.
907
908       strippostcc
909           Whether to strip To:, Cc:, and Bcc: headers out of all local posts
910           via nnrpd(8).  The primary purpose of this setting is to prevent
911           abuse of the news server by posting to a moderated group and
912           including To: or Cc: headers in the post so that the news server
913           will send the article to arbitrary addresses.  INN now protects
914           against this abuse in other ways provided mta is set to a command
915           that includes %s and honors it, so this is generally no longer
916           needed.  This is a boolean value and the default is false.
917
918       nnrpd(8) has support for controlling high-volume posters via an
919       exponential backoff algorithm, as configured by the following
920       parameters.
921
922       Exponential posting backoff works as follows:  news clients are indexed
923       by IP address (or username, see backoffauth below).  Each time a post
924       is received from an IP address, the time of posting is stored (along
925       with the previous sleep time, see below).  After a configurable number
926       of posts in a configurable period of time, nnrpd(8) will begin to sleep
927       for increasing periods of time before actually posting anything
928       (posting backoff is therefore activated).  Posts will still be
929       accepted, but at an increasingly reduced rate.
930
931       After backoff has been activated, the length of time to sleep is
932       computed based on the difference in time between the last posting and
933       the current posting.  If this difference is less than backoffpostfast,
934       the new sleep time will be 1 + (previous sleep time * backoffk).  If
935       this difference is less than backoffpostslow but greater than
936       backoffpostfast, then the new sleep time will equal the previous sleep
937       time.  If this difference is greater than backoffpostslow, the new
938       sleep time is zero and posting backoff is deactivated for this poster.
939       (Note that this does not mean posting backoff cannot be reactivated
940       later in the session.)
941
942       Exponential posting backoff will not be enabled unless backoffdb is set
943       and backoffpostfast and backoffpostslow are set to something other than
944       their default values.
945
946       Here are the parameters that control exponential posting backoff:
947
948       backoffauth
949           Whether to index posting backoffs by user rather than by source IP
950           address.  You must be using authentication in nnrpd(8) for a value
951           of true to have any meaning.  This is a boolean value and the
952           default is false.
953
954       backoffdb
955           The path to a directory, writeable by the news user, that will
956           contain the backoff database.  There is no default for this
957           parameter; you must provide a path to a creatable or writeable
958           directory to enable exponential backoff.
959
960       backoffk
961           The amount to multiply the previous sleep time by if the user is
962           still posting too quickly.  A value of 2 will double the sleep time
963           for each excessive post.  The default value is 1.
964
965       backoffpostfast
966           Postings from the same identity that arrive in less than this
967           amount of time (in seconds) will trigger increasing sleep time in
968           the backoff algorithm.  The default value is 0.
969
970       backoffpostslow
971           Postings from the same identity that arrive in greater than this
972           amount of time (in seconds) will reset the backoff algorithm.
973           Another way to look at this constant is to realize that posters
974           will be allowed to generate at most 86400/backoffpostslow posts per
975           day.  The default value is 1.
976
977       backofftrigger
978           This many postings are allowed before the backoff algorithm is
979           triggered.  The default value is 10000.
980
981   TLS/SSL Support for Reading and Posting
982       Here are the parameters used by nnrpd(8) to provide TLS/SSL support.
983
984       The parameters related to certificates are:
985
986       tlscafile
987           The path to a file containing certificate authority root
988           certificates, used to present a trust chain to a TLS client.  This
989           parameter is only used if nnrpd is built with TLS/SSL support.  The
990           default value is an empty string.
991
992       tlscapath
993           The path to a directory containing certificate authority root
994           certificates.  Each file in the directory should contain one CA
995           certificate, and the name of the file should be the CA subject name
996           hash value.  See the OpenSSL documentation for more information.
997           This parameter is only used if nnrpd is built with TLS/SSL support.
998           The default value is pathetc.
999
1000       tlscertfile
1001           The path to a file containing the server certificate to present to
1002           TLS clients.  This parameter is only used if nnrpd is built with
1003           TLS/SSL support.  The default value is pathetc/cert.pem.
1004
1005       tlskeyfile
1006           The path to a file containing the encryption key for the server
1007           certificate named in tlscertfile.  This may be the same as
1008           tlscertfile if, when you created the certificate, you put the key
1009           in the same file (if, for example, you gave the same file name to
1010           both the -out and -keyout options to "openssl req").  This
1011           parameter is only used if nnrpd is built with TLS/SSL support.  The
1012           default value is pathetc/key.pem.
1013
1014           This file must only be readable by the news user or nnrpd will
1015           refuse to use it.
1016
1017       Finally, here are the parameters that can be used to tighten the level
1018       of security provided by TLS/SSL in case new attacks exploitable in NNTP
1019       on the TLS protocol or some supported cipher suite are discovered:
1020
1021       tlsciphers
1022           The string describing the cipher suites OpenSSL will support for
1023           TLS 1.2 and below.  See OpenSSL's ciphers(1) command documentation
1024           for details.  The default is unset, which uses OpenSSL's default
1025           cipher suite list.
1026
1027       tlsciphers13
1028           The string describing the cipher suites OpenSSL will support for
1029           TLS 1.3.  See OpenSSL's ciphers(1) command documentation for
1030           details.  The default is unset, which uses OpenSSL's default cipher
1031           suite list.
1032
1033           Note that a separate cipher suite configuration parameter is needed
1034           for TLS 1.3 because TLS 1.3 cipher suites are not compatible with
1035           TLS 1.2, and vice-versa.  In order to avoid issues where legacy
1036           TLS 1.2 cipher suite configuration configured in the tlsciphers
1037           parameter would inadvertently disable all TLS 1.3 cipher suites,
1038           the inn.conf configuration has been separated out.
1039
1040       tlscompression
1041           Whether to enable or disable TLS/SSL-level compression support, if
1042           the negotiated protocol supports it (notably, TLS 1.3 no longer
1043           supports it).  This is a boolean and the default is false, that is
1044           to say compression is disabled, so as to follow the best current
1045           practices for a secure use of TLS in application protocols (see
1046           RFC 8143 for NNTP).
1047
1048           Note that enabling TLS/SSL-level compression will be possible only
1049           if the OpenSSL library INN has been built with, supports that
1050           feature.
1051
1052       tlseccurve
1053           The name of the elliptic curve to use for ephemeral key exchanges.
1054           To see the list of curves supported by OpenSSL, use "openssl
1055           ecparam -list_curves".
1056
1057           The default is unset, which means an appropriate curve is auto-
1058           selected (if your OpenSSL version is at least 1.0.2) or the NIST
1059           P-256 curve is used.
1060
1061           This option is only effective if your OpenSSL version has ECDH
1062           support.
1063
1064       tlspreferserverciphers
1065           Whether to let the client or the server decide the preferred cipher
1066           suite, signature algorithm or elliptic curve to use for an incoming
1067           connection.  This is a boolean and the default is true, that is to
1068           say the server will choose following its own preferences.
1069
1070       tlsprotocols
1071           The list of TLS/SSL protocol versions to support.  Valid protocols
1072           are SSLv2, SSLv3, TLSv1, TLSv1.1, TLSv1.2 and TLSv1.3.  The default
1073           value is to only allow TLS protocols:
1074
1075               tlsprotocols: [ TLSv1 TLSv1.1 TLSv1.2 TLSv1.3 ]
1076
1077           Note that the listed protocols will be enabled only if the OpenSSL
1078           library INN has been built with, supports them.  In case OpenSSL
1079           supports protocols more recent than TLSv1.3, they will be
1080           automatically enabled (which anyway is fine regarding security, as
1081           newer protocols are supposed to be more secure).
1082
1083   Monitoring
1084       These parameters control the behavior of innwatch(8), the program that
1085       monitors INN and informs the news administrator if anything goes wrong
1086       with it.
1087
1088       doinnwatch
1089           Whether to start innwatch(8) from rc.news.  This is a boolean
1090           value, and the default is true.
1091
1092       innwatchbatchspace
1093           Free space in pathoutgoing, in inndf(8) output units (normally
1094           kilobytes), at which innd(8) will be throttled by innwatch(8),
1095           assuming a default innwatch.ctl.  The default value is 4000.
1096
1097       innwatchlibspace
1098           Free space in pathdb, in inndf(8) output units (normally
1099           kilobytes), at which innd(8) will be throttled by innwatch(8),
1100           assuming a default innwatch.ctl.  The default value is 25000.
1101
1102       innwatchloload
1103           Load average times 100 at which innd(8) will be restarted by
1104           innwatch(8) (undoing a previous pause or throttle), assuming a
1105           default innwatch.ctl.  The default value is 1000 (that is, a load
1106           average of 10.00).
1107
1108       innwatchhiload
1109           Load average times 100 at which innd(8) will be throttled by
1110           innwatch(8), assuming a default innwatch.ctl.  The default value is
1111           2000 (that is, a load average of 20.00).
1112
1113       innwatchpauseload
1114           Load average times 100 at which innd(8) will be paused by
1115           innwatch(8), assuming a default innwatch.ctl.  The default value is
1116           1500 (that is, a load average of 15.00).
1117
1118       innwatchsleeptime
1119           How long (in seconds) innwatch(8) will sleep between each check of
1120           INN.  The default value is 600.
1121
1122       innwatchspoolnodes
1123           Free inodes in patharticles at which innd(8) will be throttled by
1124           innwatch(8), assuming a default innwatch.ctl.  The default value is
1125           200.
1126
1127       innwatchspoolspace
1128           Free space in patharticles and pathoverview, in inndf(8) output
1129           units (normally kilobytes), at which innd(8) will be throttled by
1130           innwatch(8), assuming a default innwatch.ctl.  The default value is
1131           25000.
1132
1133   Logging
1134       These parameters control what information INN logs.
1135
1136       docnfsstat
1137           Whether to start cnfsstat(8) when innd(8) is started.  cnfsstat
1138           will log the status of all CNFS cycbuffs to syslog on a periodic
1139           basis (frequency is the default for "cnfsstat -l", currently 600
1140           seconds).  This is a boolean value and the default is false.
1141
1142       htmlstatus
1143           Whether innd should write the status report as HTML file or in
1144           plain text.  The HTML status file goes to pathhttp/inn_status.html,
1145           while the plain text status file is written to pathlog/inn.status.
1146           This is a boolean value and the default is true (an HTML status
1147           file is written).  Also see the status parameter.
1148
1149       incominglogfrequency
1150           How many articles to process on an incoming channel before logging
1151           the activity.  The default value is 200.
1152
1153       logartsize
1154           Whether the size of accepted articles (in bytes) should be written
1155           to the article log file.  This is useful for flow rate statistics
1156           and is recommended.  This is a boolean value and the default is
1157           true.
1158
1159       logcancelcomm
1160           Set this to true to log "ctlinnd cancel" commands to syslog.  This
1161           is a boolean value and the default is false.
1162
1163       logcycles
1164           How many old logs scanlogs(8) keeps.  scanlogs(8) is generally run
1165           by news.daily(8) and will archive compressed copies of this many
1166           days worth of old logs.  The default value is 3.
1167
1168       logipaddr
1169           Whether the verified name of the remote feeding host should be
1170           logged to the article log for incoming articles rather than the
1171           last entry in the Path: header.  The only reason to ever set this
1172           to false is due to some interactions with newsfeeds flags; see
1173           newsfeeds(5) for more information.  This is a boolean value and the
1174           default is true.
1175
1176       logsitename
1177           Whether the names of the sites to which accepted articles will be
1178           sent should be put into the article log file.  This is useful for
1179           debugging and statistics.  This is a boolean value and the default
1180           is true.
1181
1182       logstatus
1183           Whether innd should write a shortened version of its status report
1184           to syslog every status seconds.  This is a boolean value and the
1185           default is true.  If set to true, see the status parameter for more
1186           details on how to enable status reporting.
1187
1188       logtrash
1189           Whether innd should add a line in the news log file to report
1190           unwanted newsgroups (that is to say newsgroups not locally carried
1191           by the news server).  This is a boolean value and the default is
1192           true.  It may be useful to set it to false when wanttrash is set to
1193           true.
1194
1195       nnrpdoverstats
1196           Whether nnrpd overview statistics should be logged via syslog.
1197           This can be useful for measuring overview performance.  This is a
1198           boolean value and the default is true.
1199
1200       nntplinklog
1201           Whether to put the storage API token for accepted articles (used by
1202           nntplink) in the article log.  This is a boolean value and the
1203           default is false.
1204
1205       stathist
1206           Where to write history statistics for analysis with
1207           contrib/stathist.pl; this can be modified with ctlinnd(8) while
1208           innd is running.  Logging does not occur unless a path is given,
1209           and there is no default value.
1210
1211       status
1212           How frequently (in seconds) innd(8) should write out a status
1213           report.  The report is written to pathhttp/inn_status.html or
1214           pathlog/inn.status depending on the value of htmlstatus.  If this
1215           is set to 0 or "false", status reporting is disabled.  The default
1216           value is 600 (that is to say reports are written every 10 minutes).
1217
1218       timer
1219           How frequently (in seconds) innd(8) should report performance
1220           timings to syslog.  If this is set to 0, performance timing is
1221           disabled.  Enabling this is highly recommended, and innreport(8)
1222           can produce a nice summary of the timings.  If set to 0,
1223           performance timings in nnrpd(8) are also disabled, although nnrpd
1224           always reports statistics on exit and therefore any non-zero value
1225           is equivalent for it.  The default value is 600 (that is to say
1226           performance timings are reported every 10 minutes).
1227
1228   System Tuning
1229       The following parameters can be modified to tune the low-level
1230       operation of INN.  In general, you shouldn't need to modify any of them
1231       except possibly rlimitnofile unless the server is having difficulty.
1232
1233       badiocount
1234           How many read or write failures until a channel is put to sleep or
1235           closed.  The default value is 5.
1236
1237       blockbackoff
1238           Each time an attempted write returns EAGAIN or EWOULDBLOCK, innd(8)
1239           will wait for an increasing number of seconds before trying it
1240           again.  This is the multiplier for the sleep time.  If you're
1241           having trouble with channel feeds not keeping up, it may be good to
1242           change this value to 2 or 3, since then when the channel fills INN
1243           will try again in a couple of seconds rather than waiting two
1244           minutes.  The default value is 120.
1245
1246       chaninacttime
1247           The time (in seconds) to wait between noticing inactive channels.
1248           The default value is 600.
1249
1250       chanretrytime
1251           How many seconds to wait before a channel restarts.  The default
1252           value is 300.
1253
1254       datamovethreshold
1255           The threshold for deciding whether to move already-read data to the
1256           top of buffer or extend the buffer.  The buffer described here is
1257           used for reading NNTP data.  Increasing this value may improve
1258           performance, but it should not be increased on Systems with
1259           insufficient memory.  Permitted values are between 0 and 1048576
1260           (out of range values are treated as 1048576) and the default value
1261           is 16384.
1262
1263       icdsynccount
1264           How many article writes between updating the active and history
1265           files.  The default value is 10.
1266
1267       keepmmappedthreshold
1268           When using buffindexed, retrieving overview data (that is,
1269           responding to OVER or running expireover) causes mmapping of all
1270           overview data blocks which include requested overview data for
1271           newsgroup.  But for high volume newsgroups like control.cancel,
1272           this may cause too much mmapping at once leading to system resource
1273           problems.  To avoid this, if the amount to be mmapped exceeds
1274           keepmmappedthreshold (in KB), buffindexed mmap's just one overview
1275           block (8 KB).  This parameter is specific to buffindexed overview
1276           storage method.  The default value is 1024 (1 MB).
1277
1278       maxcmdreadsize
1279           If set to anything other than 0, maximum buffer size (in bytes) for
1280           reading NNTP command will have this value.  It should not be large
1281           on systems which are slow to process and store articles, as that
1282           would lead to innd(8) spending a long time on each channel and
1283           keeping other channels waiting.  The default value is BUFSIZ
1284           defined in stdio.h (1024 in most environments, see setbuf(3)).
1285
1286       maxforks
1287           How many times to attempt a fork(2) before giving up.  The default
1288           value is 10.
1289
1290       nicekids
1291           If set to anything other than 0, all child processes of innd(8)
1292           will have this nice(2) value.  This is usually used to give all
1293           child processes of innd(8) a lower priority (higher nice value) so
1294           that innd(8) can get the lion's share of the CPU when it needs it.
1295           The default value is 4.
1296
1297       nicenewnews
1298           If set to anything greater than 0, all nnrpd(8) processes that
1299           receive and process a NEWNEWS command will nice(2) themselves to
1300           this value (giving other nnrpd processes a higher priority).  The
1301           default value is 0.  Note that this value will be ignored if set to
1302           a lower value than nicennrpd (or nicekids if nnrpd(8) is spawned
1303           from innd(8)).
1304
1305       nicennrpd
1306           If set to anything greater than 0, all nnrpd(8) processes will
1307           nice(1) themselves to this value.  This gives other news processes
1308           a higher priority and can help overchan(8) keep up with incoming
1309           news (if that's the object, be sure overchan(8) isn't also set to a
1310           lower priority via nicekids).  The default value is 0, which will
1311           cause nnrpd(8) processes spawned from innd(8) to use the value of
1312           nicekids, while nnrpd(8) run as a daemon will use the system
1313           default priority.  Note that for nnrpd(8) processes spawned from
1314           innd(8), this value will be ignored if set to a value lower than
1315           nicekids.
1316
1317       pauseretrytime
1318           Wait for this many seconds before noticing inactive channels.  Wait
1319           for this many seconds before innd processes articles when it's
1320           paused or the number of channel write failures exceeds badiocount.
1321           The default value is 300.
1322
1323       peertimeout
1324           How long (in seconds) an innd(8) incoming channel may be inactive
1325           before innd closes it.  The default value is 3600 (an hour).
1326
1327       rlimitnofile
1328           The maximum number of file descriptors that innd(8) or innfeed(8)
1329           can have open at once.  If innd(8) or innfeed(8) attempts to open
1330           more file descriptors than this value, it is possible the program
1331           may throttle or otherwise suffer reduced functionality.  The number
1332           of open file descriptors is roughly the maximum number of incoming
1333           feeds and outgoing batches for innd(8) and the number of outgoing
1334           streams for innfeed(8).  If this parameter is set to a negative
1335           value, the default limit of the operating system will be used; this
1336           will normally be adequate on systems other than Solaris.  Nearly
1337           all operating systems have some hard maximum limit beyond which
1338           this value cannot be raised, usually either 128, 256, or 1024.  The
1339           default value of this parameter is "-1".  Setting it to 256 on
1340           Solaris systems is highly recommended.
1341
1342   Paths Names
1343       patharchive
1344           Where to store archived news.  The default value is
1345           pathspool/archive.
1346
1347       patharticles
1348           The path to where the news articles are stored (for storage methods
1349           other than CNFS).  The default value is pathspool/articles.
1350
1351       pathbin
1352           The path to the news binaries.  The default value is pathnews/bin.
1353
1354       pathcontrol
1355           The path to the files that handle control messages.  The code for
1356           handling each separate type of control message is located here.  Be
1357           very careful what you put in this directory with a name ending in
1358           ".pl", as it can potentially be a severe security risk.  The
1359           default value is pathbin/control.
1360
1361       pathdb
1362           The path to the database files used and updated by the server
1363           (currently, active, active.times, history and its indices, and
1364           newsgroups).  The default value is pathnews/db.
1365
1366       pathetc
1367           The path to the news configuration files.  The default value is
1368           pathnews/etc.
1369
1370       pathfilter
1371           The path to the Perl and Python filters.  The default value is
1372           pathbin/filter.
1373
1374       pathhttp
1375           Where any HTML files (such as periodic status reports) are placed.
1376           If the news reports should be available in real-time on the web,
1377           the files in this directory should be served by a web server.  The
1378           default value is the value of pathnews/http.
1379
1380       pathincoming
1381           Location where incoming batched news is stored.  The default value
1382           is pathspool/incoming.
1383
1384       pathlog
1385           Where the news log files are written.  The default value is
1386           pathnews/log.
1387
1388       pathnews
1389           The home directory of the news user and usually the root of the
1390           news hierarchy.  There is no default; this parameter must be set in
1391           inn.conf or INN will refuse to start.
1392
1393       pathoutgoing
1394           Default location for outgoing feed files.  The default value is
1395           pathspool/outgoing.
1396
1397       pathoverview
1398           The path to news overview files.  The default value is
1399           pathspool/overview.
1400
1401       pathrun
1402           The path to files required while the server is running and run-time
1403           state information.  This includes lock files and the sockets for
1404           communicating with innd(8).  This directory and the control sockets
1405           in it should be protected from unprivileged users other than the
1406           news user.  The default value is pathnews/run.
1407
1408       pathspool
1409           The root of the news spool hierarchy.  This used mostly to set the
1410           defaults for other parameters, and to determine the path to the
1411           backlog directory for innfeed(8).  The default value is
1412           pathnews/spool.
1413
1414       pathtmp
1415           Where INN puts temporary files.  For security reasons, this is not
1416           the same as the system temporary files directory (INN creates a lot
1417           of temporary files with predictable names and does not go to
1418           particularly great lengths to protect against symlink attacks and
1419           the like; this is safe provided that normal users can't write into
1420           its temporary directory).  The default value is set at configure
1421           time and defaults to pathnews/tmp.
1422

EXAMPLE

1424       Here is a very minimalist example that only sets those parameters that
1425       are required.
1426
1427           mta:                "/usr/lib/sendmail -oi -oem %s"
1428           ovmethod:           tradindexed
1429           pathhost:           news.example.com
1430           pathnews:           /usr/local/news
1431           hismethod:          hisv6
1432
1433       For a more comprehensive example, see the sample inn.conf distributed
1434       with INN and installed as a starting point; it contains all of the
1435       default values for reference.
1436

HISTORY

1438       Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews and since
1439       modified, updated, and reorganized by innumerable other people.
1440
1441       $Id: inn.conf.pod 10304 2018-12-02 14:05:50Z iulius $
1442

SEE ALSO

1444       inews(1), innd(8), innwatch(8), makehistory(8), nnrpd(8), rnews(1).
1445
1446       Nearly every program in INN uses this file to one degree or another.
1447       The above are just the major and most frequently mentioned ones.
1448
1449
1450
1451INN 2.6.3                         2018-12-02                       INN.CONF(5)
Impressum