1innfeed.conf(5) File Formats Manual innfeed.conf(5)
2
3
4
6 innfeed.conf - configuration file for innfeed
7
9 This man page describes the configuration file for version 1.0 of inn‐
10 feed. This format has changed dramatically since version 0.9.3.
11
12 The file innfeed.conf is used to control the innfeed(1) program. It is
13 a fairly free-format file that consists of three types of entries:
14 key/value, peer and group. Comments are from the hash character ``#''
15 to the end of the line.
16
17 Key/value entries are a keyword and a value separated by a colon (which
18 can itself be surrounded by whitespace). For example:
19
20 max-connections: 10
21
22 A legal key starts with a letter and contains only letters, digits, and
23 ``_'', ``-''.
24
25 There are 5 different type of values: integers, floating-point numbers,
26 characters, booleans, and strings. Integer and floating point numbers
27 are as to be expected except that exponents in floating point numbers
28 are not supported. A boolean value is either ``true'' or ``false''
29 (case is not significant). A character value is a single-quoted charac‐
30 ter as defined by the C-language. A string value is any other sequence
31 of characters. If the string needs to contain whitespace, then it must
32 be quoted with double quotes, and uses the same format for embedding
33 non-printing characters as normal C-language string.
34
35 Peer entries look like:
36
37 peer <name> {
38 # body ...
39 }
40
41 The word ``peer'' is required. The ``<name>'' is the same as the site
42 name in INN's newsfeeds file. The body of a peer entry contains some
43 number (possibly zero) of key/value entries.
44
45 Group entries look like:
46
47 group <name> {
48 # body
49 }
50
51 The word ``group'' is required. The ``<name>'' is any string valid as a
52 key. The body of a group entry contains any number of the three types
53 of entries. So key/value pairs can be defined inside a group, and peers
54 can be nested inside a group, and other groups can be nested inside a
55 group.
56
57 Key/value entries that are defined outside of all peer and group
58 entries are said to be at ``global scope''. There are global key/value
59 entries that apply to the process as a whole (for example the location
60 of the backlog file directory), and there are global key/value entries
61 that act as defaults for peers. When innfeed looks for a specific value
62 in a peer entry (for example, the maximum number of connections to set
63 up), if the value is not defined in the peer entry, then the enclosing
64 groups are examined for the entry (starting at the closest enclosing
65 group). If there are no enclosing groups, or the enclosing groups don't
66 define the key/value, then the value at global scope is used.
67
68 A small example could be:
69
70 # Global value applied to all peers that have
71 # no value of their own.
72 max-connections: 5
73
74 # A peer definition. ``uunet'' is the name used by innd in
75 # the newsfeeds file.
76 peer uunet {
77 ip-name: usenet1.uu.net
78 }
79
80 peer vixie {
81 ip-name: gw.home.vix.com
82 max-connections: 10 # override global value.
83 }
84
85 # A group of two peers who can handle more connections
86 # than normal
87 group fast-sites {
88 max-connections: 15
89
90 # Another peer. The ``max-connections'' value from the
91 # ``fast-sites'' group scope is used. The ``ip-name'' value
92 # defaults to the peer's name.
93 peer data.ramona.vix.com {
94 }
95
96 peer bb.home.vix.com {
97 max-connections: 20 # he can really cook.
98 }
99 }
100
101 Given the above configuration file, the defined peers would have the
102 following values for the ``max-connections'' key.
103
104 uunet 5
105 vixie 10
106 data.ramona.vix.com 15
107 bb.home.vix.com 20
108
109 Innfeed ignores key/value pairs it is not interested in. Some config
110 file values can be set via a command line option, in which case that
111 setting overrides the settings in the file.
112
113 Config files can be included in other config files via the syntax:
114
115 $INCLUDE filename
116
117 There is a maximum nesting depth of 10.
118
119 For a fuller example config file, see the supplied innfeed.conf.
120
122 The following listing show all the keys that apply to the process as
123 whole. These are not required (compiled-in defaults are used where
124 needed).
125
126 news-spool
127 This key requires a pathname value. It specifies where the top
128 of the article spool is. This corresponds to the ``-a'' command-
129 line option.
130
131 input-file
132 This key requires a pathname value. It specifies the pathname
133 (relative to the backlog-directory) that should be read in fun‐
134 nel-file mode. This corresponds to giving a filename as an argu‐
135 ment on the command-line (i.e. its presence also implies that
136 funnel-file mode should be used).
137
138 pid-file
139 This key requires a pathname value. It specifies the pathname
140 (relative to the backlog-directory) where the pid of the innfeed
141 process should be stored. This corresponds to the ``-p'' com‐
142 mand-line option.
143
144 debug-level
145 This key defines the debug level for the process. A non-zero
146 number generates a lot of messages to stderr, or to the config-
147 defined ``log-file''. This corresponds to the ``-d'' command-
148 line option.
149
150 use-mmap
151 This key requires a boolean value. It specifies whether mmaping
152 should be used if innfeed has been built with mmap support. If
153 article data on disk is not in NNTP-ready format (CR/LF at the
154 end of each line), then after mmaping the article is read into
155 memory and fixed up, so mmaping has no positive effect (and pos‐
156 sibly some negative effect depending on your system), and so in
157 such a case this value should be false. This corresponds to the
158 ``-M'' command-line option.
159
160 log-file
161 This key requires a pathname value. It specifies where any log‐
162 ging messages that couldn't be sent via syslog(3) should go
163 (such as those generated when a positive value for ``debug-
164 value'', is used). This corresponds to the ``-l'' command-line
165 option. A relative pathname is relative to the ``backlog-direc‐
166 tory'' value.
167
168 log-time-format
169 This key requires a format string suitable for strftime(3). It
170 is used for messages sent via syslog(3) and to the status-file.
171 Default value is "%a %b %d %H:%M:%S %Y".
172
173 backlog-directory
174 This key requires a pathname value. It specifies where the cur‐
175 rent innfeed process should store backlog files. This corre‐
176 sponds to the ``-b'' command-line option.
177
178 backlog-highwater
179 This key requires a positive integer value. It specifies how
180 many articles should be kept on the backlog file queue before
181 starting to write new entries to disk.
182
183 backlog-ckpt-period
184 This key requires a positive integer value. It specifies how
185 many seconds between checkpoints of the input backlog file. Too
186 small a number will mean frequent disk accesses, too large a
187 number will mean after a crash innfeed will re-offer more
188 already-processed articles than necessary.
189
190 backlog-newfile-period
191 This key requires a positive integer value. It specifies how
192 many seconds before each checks for externally generated backlog
193 files that are to be picked up and processed.
194
195 backlog-rotate-period
196 This key requires a positive integer value. It specifies how
197 many seconds elapse before innfeed checks for a manually created
198 backlog file and moves the output backlog file to the input
199 backlog file.
200
201 dns-retry
202 This key requires a positive integer value. It defines the num‐
203 ber of seconds between attempts to re-lookup host information
204 that previous failed to be resolved.
205
206 dns-expire
207 This key requires a positive integer value. It defines the num‐
208 ber of seconds between refreshes of name to address DNS transla‐
209 tion. This is so long-running processes don't get stuck with
210 stale data, should peer ip addresses change.
211
212 close-period
213 This key requires a positive integer value. It is the maximum
214 number of seconds a connection should be kept open. Some NNTP
215 servers don't deal well with connections being held open for
216 long periods.
217
218 gen-html
219 This key requires a boolean value. It specifies whether the sta‐
220 tus-file should be HTML-ified.
221
222 status-file
223 This key requires a pathname value. It specifies the pathname
224 (relative to the backlog-directory) where the periodic status of
225 the innfeed process should be stored. This corresponds to the
226 ``-S'' command-line option.
227
228 connection-stats
229 This key requires a boolean value. If the value is true, then
230 whenever the transmission statistics for a peer are logged, then
231 each active connection logs its own statistics. This corresponds
232 to the ``-z'' command-line option.
233
234 host-queue-highwater
235 This key requires a positive integer value. It defines how many
236 articles will be held internally for a peer before new arrivals
237 cause article information to be spooled to the backlog file.
238
239 stats-period
240 This key requires a positive integer value. It defines how many
241 seconds innfeed waits between generating statistics on transfer
242 rates.
243
244 stats-reset
245 This key requires a positive integer value. It defines how many
246 seconds innfeed waits before resetting all internal transfer
247 counters back to zero (after logging one final time). This is so
248 a innfeed-process running more than a day will generate
249 ``final'' stats that will be picked up by logfile processing
250 scripts.
251
252 initial-reconnect-time
253 This key requires a positive integer value. It defines how many
254 seconds to first wait before retrying to reconnect after a con‐
255 nection failure. If the next attempt fails too, then the recon‐
256 nect time is approximately doubled until the connection suc‐
257 ceeds, or max-reconnection-time is reached.
258
259 max-reconnect-time
260 This key requires an integer value. It defines the maximum num‐
261 ber of seconds to wait between attempt to reconnect to a peer.
262 The initial value for reconnection attempts is defined by ini‐
263 tial-reconnect-time, and it is doubled after each failure, up to
264 this value.
265
266 stdio-fdmax
267 This key requires a non-negative integer value. If the value is
268 greater than zero, then whenever a network socket file descrip‐
269 tor is created and it has a value less than this, the file
270 descriptor will be dup'ed to bring the value up greater than
271 this. This is to leave lower numbered file descriptors free for
272 stdio. Certain systems, Sun's in particular, require this. SunOS
273 4.1.x usually requires a value of 128 and Solaris requires a
274 value of 256. The default if this is not specified, is 0.
275
277 All the key/value pairs mentioned in this section must be specified at
278 global scope. They may also be specified inside a group or peer defini‐
279 tion. Note that when peers are added dynamically (i.e. when innfeed
280 receives an article for an unspecified peer), it will add the peer site
281 using the parameters specified at global scope.
282
283 article-timeout
284 This key requires a non-negative integer value. If no articles
285 need to be sent to the peer for this many seconds, then the peer
286 is considered idle and all its active connections are torn down.
287
288 response-timeout
289 This key requires a non-negative integer value. It defines the
290 maximum amount of time to wait for a response from the peer
291 after issuing a command.
292
293 initial-connections
294 This key requires a non-negative integer value. It defines the
295 number of connections to be opened immediately when setting up a
296 peer binding. A value of 0 means no connections will be created
297 until an article needs to be sent.
298
299 max-connections
300 This key requires positive integer value. It defines the maximum
301 number of connections to run in parallel to the peer. A value of
302 zero specifies an unlimited number of maximum connections. In
303 general use of an unlimited number of maximum connections is not
304 recommended. Do not ever set max-connections to zero with
305 dynamic-method 0 set, as this will saturate peer hosts with con‐
306 nections. [ Note that in previous versions of innfeed, a value
307 of 1 had a special meaning. This is no longer the case, 1 means
308 a maximum of 1 connection ].
309
310 dynamic-method
311 This key requires an integer value between 0 and 3. It controls
312 how connections (up to max-connections) are opened, up to the
313 maximum specified by max-connections. In general (and specifi‐
314 cally, with dynamic-method 0), a new connection is opened when
315 the current number of connections is below max-connections, and
316 an article is to be sent while no current connections are idle.
317 Without further restraint (i.e. using dynamic-method 0), in
318 practice this means that max-connections connections are estab‐
319 lished while articles are being sent. Use of other dynamic-
320 method settings imposes a further limit on the amount of connec‐
321 tions opened below that specified by max-connections. This limit
322 is calculated in different ways, depending of the value of
323 dynamic-method. Users should note that adding additional con‐
324 nections is not always productive - just because opening twice
325 as many connections results in a small percentage increase of
326 articles accepted by the remote peer, this may be at consider‐
327 able resource cost both locally and at the remote site, whereas
328 the remote site might well have received the extra articles sent
329 from another peer a fraction of a second later. Opening large
330 numbers of connections is considered antisocial. The meanings
331 of the various settings are:
332
333 0 no method
334 Increase of connections up to max-connections is unre‐
335 strained.
336
337 1 maximize articles per second
338 Connections are increased (up to max-connections) and
339 decreased so as to maximize the number of articles per
340 second sent, while using the fewest connections to do
341 this.
342
343 2 set target queue length
344 Connections are increased (up to max-connections) and
345 decreased so as to keep the queue of articles to be sent
346 within the bounds set by dynamic-backlog-low and dynamic-
347 backlog-high, while using the minimum resources possible.
348 As the queue will tend to fill if the site is not keeping
349 up, this method ensures that the maximum number of arti‐
350 cles are offered to the peer while using the minimum num‐
351 ber of connections to achieve this.
352
353 3 combination
354 This method uses a combination of methods 1 and 2 above.
355 For sites accepting a large percentage of articles,
356 method 2 will be used to ensure these sites are offered
357 as complete a feed as possible. For sites accepting a
358 small percentage of articles, method 1 is used, to mini‐
359 mize remote resource usage. For intermediate sites, an
360 appropriate combination is used.
361
362 dynamic-backlog-low
363 This key requires an integer value between 0 and 100. It repre‐
364 sents (as a percentage) the low water mark for the host queue.
365 If the host queue falls below this level while using dynamic-
366 method 2 or 3, and if 2 or more connections are open, innfeed
367 will attempt to drop connections to the host. An IIR filter is
368 applied to the value to prevent connection flap (see dynamic-
369 filter). A value of 25.0 is recommended. This value must be
370 smaller than dynamic-backlog-high.
371
372 dynamic-backlog-high
373 This key requries an integer value between 0 and 100. It repre‐
374 sents (as a percentage) the high water mark for the host queue.
375 If the host queue rises above this level while using dynamic-
376 method 2 or 3, and if less than max-connections are open to the
377 host, innfeed will attempt to open further connections to the
378 host. An IIR filter is applied to the value to prevent connec‐
379 tion flap (see dynamic-filter). A value of 50.0 is recommended.
380 This value must be larger than dynamic-backlog-low.
381
382 dynamic-backlog-filter
383 This key requires a floating-point value between 0 and 1. It
384 represents the filter coefficient used by the IIR filter used to
385 implement dynamic-method 2 and 3. The recommended value of this
386 filter is 0.7, giving a time constant of 1/(1-0.7) articles.
387 Higher values will result in slower response to queue fullness
388 changes, lower values in faster response.
389
390 max-queue-size
391 This key requires a positive integer value. It defines the maxi‐
392 mum number of articles to process at one time when using stream‐
393 ing to transmit to a peer. Larger numbers mean more memory con‐
394 sumed as articles usually get pulled into memory (see the
395 description of use-mmap).
396
397 streaming
398 This key requires a boolean value. It defines whether streaming
399 commands are used to transmit articles to the peers.
400
401 no-check-high
402 This key requires a floating-point number which must be in the
403 range [0.0, 100.0]. When running transmitting with the streaming
404 commands, innfeed attempts an optimization called ``no-CHECK''
405 mode. This involves not asking the peer if it wants the article,
406 but just sending it. This optimization occurs when the percent‐
407 age of the articles the peer has accepted gets larger than this
408 number. If this value is set to 100.0, then this effectively
409 turns off no-CHECK mode, as the percentage can never get above
410 100.0. If this value is too small, then the number of articles
411 the peer rejects will get bigger (and your bandwidth will be
412 wasted). A value of 95.0 usually works pretty well. NOTE: In
413 innfeed 0.9.3 and earlier this value was in the range [0.0,
414 9.0].
415
416 no-check-low:
417 This key requires a floating-point number which must be in the
418 range [0.0, 100.0), and it must be smaller that the value for
419 no-check-high. When running in no-CHECK mode, as described
420 above, if the percentage of articles the remote accepts drops
421 below this number, then the no-CHECK optimization is turned off
422 until the percentage gets above the no-check-high value again.
423 If there is small difference between this and the no-check-high
424 value (less than about 5.0), then innfeed may frequently go in
425 and out of no-CHECK mode. If the difference is too big, then it
426 will make it harder to get out of no-CHECK mode when necessary
427 (wasting bandwidth). Keeping this to between 5.0 and 10.0 less
428 than no-check-high usually works pretty well.
429
430 no-check-filter
431 This is a floating point value representing the time constant,
432 in articles, over which the CHECK / no-CHECK calculations are
433 done. The recommended value is 50.0 which will implement an IIR
434 filter of time constant 50. This roughly equates to making a
435 decision about the mode over the previous 50 articles. A higher
436 number will result in a slower response to changing percentages
437 of articles accepted; a lower number will result in a faster
438 response.
439
440 bindaddress
441 This key requires a string value. It specifies which outgoing
442 IPv4 address innfeed should bind the local end of its connection
443 to. Must be an IPv4 address in dotted-quad format
444 (nnn.nnn.nnn.nnn), "any", or "none". If not set or set to
445 "any", innfeed defaults to letting the kernel choose this
446 address. If set to "none", innfeed will not use IPv4 for outgo‐
447 ing connections to peers in this scope (i.e. it forces IPv6).
448 If not set in innfeed.conf, innfeed defaults to the value of
449 sourceaddress from inn.conf(5) (which by default is unset).
450
451 bindaddress6
452 This key requires a string value. It behaves like bindaddress
453 except for outgoing IPv6 connections. Must be in numeric IPv6
454 format (note that a value containing colons must be enclosed in
455 double quotes), "any", or "none". If set to "none", innfeed
456 will not use IPv6 for outgoing connections to peers in this
457 scope. If not set in innfeed.conf, innfeed defaults to the
458 value of sourceaddress6 from inn.conf(5) (which by default is
459 unset).
460
461 port-number
462 This key requires a positive integer value. It defines the
463 tcp/ip port number to use when connecting to the remote.
464
465 force-ipv4
466 This key requires a boolean value. By default it is set to
467 false. Setting it to true is the same as setting "bindaddress6:
468 none" and removing "bindaddress: none" if it was set.
469
470 drop-deferred
471 This key requires a boolean value. By default it is set to
472 false. When set to true, and a peer replies with code 431 or 436
473 (try again later) just drop the article and don't try to re-send
474 it. This is useful for some peers that keep on deferring arti‐
475 cles for a long time to prevent innfeed from trying to offer the
476 same article over and over again.
477
478 min-queue-connection
479 This key requires a boolean value. By default it is set to
480 false. When set to true, innfeed will attempt to use a connec‐
481 tion with the least queue size (or the first empty connection).
482 If this key is set to true, it is recommended that dynamic-
483 method be set to 0. This allows for article propagation with the
484 least delay.
485
486 no-backlog
487 This key requires a boolean value. It specifies whether spooling
488 should be enabled (false, the default) or disabled (true). Note
489 that when no-backlog is set, articles reported as "spooled" are
490 actually silently discarded.
491
492 backlog-limit
493 This key requires a non-negative integer value. If the number is
494 0 then backlog files are allowed to grown without bound when the
495 peer is unable to keep up with the article flow. If this number
496 is greater than 0 then it specifies the size (in bytes) the
497 backlog file should get truncated to when the backlog file
498 reaches a certain limit. The limit depends on whether backlog-
499 factor or backlog-limit-highwater is used.
500
501 backlog-factor
502 This key requires a floating point value, which must be larger
503 than 1.0. It is used in conjunction with the peer key backlog-
504 limit. If backlog-limit has a value greater than zero, then when
505 the backlog file gets larger than the value backlog-limit *
506 backlog-factor, then the backlog file will be truncated to the
507 size backlog-limit. For example if backlog-limit has a value of
508 1000000, and backlog-factor has a value of 2.0, then when the
509 backlogfile gets to be larger than 2000000 bytes in size, it
510 will be truncated to 1000000 bytes. The front portion of the
511 file is removed, and the trimming happens on line boundaries, so
512 the final size may be a bit less than this number. If backlog-
513 limit-highwater is defined too, then backlog-factor takes prece‐
514 dence.
515
516 backlog-limit-highwater
517 This key requires a positive integer value that must be larger
518 than the value for backlog-limit. If the size of the backlog
519 file gets larger than this value (in bytes), then the backlog
520 file will be shrunk down to the size of backlog-limit. If both
521 backlog-factor and backlog-limit-highwater are defined, then the
522 value of backlog-factor is used.
523
524 backlog-feed-first
525 This key requires a boolean value. By default it is set to
526 false. When set to true, the backlog is fed before new files.
527 This is intended to enforce in-order delivery, so setting this
528 to true when initial-connections or max-connections is more than
529 1 is inconsistent.
530
531 username
532 This key requires a string value. If the value is defined, then
533 innfeed tries to authenticate by ``AUTHINFO USER'' and this
534 value used for user name. password must also be defined, if
535 this key is defined.
536
537 password
538 This key requires a string value. The value is the password
539 used for ``AUTHINFO PASS''. username must also be defined, if
540 this key is defined.
541
542 deliver
543 This key is used with imapfeed to authenticate to a remote host.
544 It is optional. There are several parameters that must be
545 included with deliver:
546
547 deliver-authname
548 The authname is who you want to authenticate as.
549
550 deliver-password
551 This is the appropriate password for authname.
552
553 deliver-username
554 The username is who you want to "act" as, that is, who is
555 actually going to be using the server.
556
557 deliver-realm
558 In this case, the "realm" is the realm in which the spec‐
559 ified authname is valid. Currently this is only needed
560 by the DIGEST-MD5 SASL mechanism.
561
562 deliver-rcpt-to
563 A printf-style format string for creating the envelope
564 recipient address. The pattern MUST include a single
565 string specifier which will be replaced with the newgroup
566 (e.g "bb+%s"). The default is "+%s".
567
568 deliver-to-header
569 An optional printf-style format string for creating a To:
570 header to be prepended to the article. The pattern MUST
571 include a single string specifier which will be replaced
572 with the newgroup (e.g "post+%s@domain"). If not speci‐
573 fied, the To: header will not be prepended.
574
576 As previously explained, the peer definitions can contain redefinitions
577 of any of the key/value pairs described in the GLOBAL PEER DEFAULTS
578 section above. There is one key/value pair that is specific to a peer
579 definition.
580
581 ip-name
582 This key requires a word value. The word is the host's FQDN, or
583 the dotted quad ip-address. If this value is not specified then
584 the name of the peer is taken to also be its ip-name. See the
585 entry for data.ramona.vix.com in the example below.
586
588 If innfeed gets a SIGHUP signal, then it will reread the config file.
589 All values at global scope except for ``backlog-directory'' can be
590 changed (although note that ``bindaddress'' and ``bindaddress6''
591 changes will only affect new connections). Any new peers are added and
592 any missing peers have their connections closed.
593
595 Below is the sample innfeed.conf file.
596 #
597 # innfeed.conf file. See the comment block at the
598 # end for a fuller description.
599 #
600
601 ##
602 ## Global values. Not specific to any peer. These
603 ## are optional, but if used will override the
604 ## compiled in values. Command-line options used
605 ## will override these values.
606 ##
607
608 pid-file: innfeed.pid
609 debug-level: 0
610 use-mmap: false
611 log-file: innfeed.log
612 stdio-fdmax: 0
613
614 backlog-directory: innfeed
615 backlog-rotate-period: 60
616 backlog-ckpt-period: 30
617 backlog-newfile-period: 600
618
619 dns-retry: 900
620 dns-expire: 86400
621 close-period: 3600
622 gen-html: false
623 status-file: innfeed.status
624 connection-stats: false
625 host-queue-highwater: 200
626 stats-period: 600
627 stats-reset: 43200
628
629 max-reconnect-time: 3600
630 initial-reconnect-time: 30
631
632
633 ##
634 ## Defaults for all peers. These must all exist at
635 ## global scope. Any of them can be redefined
636 ## inside a peer or group definition.
637 ##
638
639 article-timeout: 600
640 response-timeout: 300
641 initial-connections: 1
642 max-connections: 5
643 max-queue-size: 25
644 streaming: true
645 no-check-high: 95.0
646 no-check-low: 90.0
647 no-check-filter: 50.0
648 port-number: 119
649 backlog-limit: 0
650 backlog-factor: 1.10
651 backlog-limit-highwater:0
652 dynamic-method: 3
653 dynamic-backlog-filter: 0.7
654 dynamic-backlog-low: 25.0
655 dynamic-backlog-high: 50.0
656 no-backlog: false
657
658 ##
659 ## Peers.
660 ##
661 peer decwrl {
662 ip-name: news1.pa.dec.com
663 }
664
665 peer uunet {
666 ip-name: news.uunet.uu.net
667 max-connections: 10
668 }
669
670 peer data.ramona.vix.com {
671 # ip-name defaults to data.ramona.vix.com
672 streaming: false
673 }
674
675 peer bb.home.vix.com {
676 ip-name: 192.5.5.33
677 }
678
679
680
681 # Blank lines are ignored. Everything after a '#'
682 # is ignored too.
683 #
684 # Format is:
685 # key : value
686 #
687 # See innfeed.conf(5) for a description of
688 # necessary & useful keys. Unknown keys and their
689 # values are ignored.
690 #
691 # Values may be a integer, floating-point, c-style
692 # single-quoted characters, boolean, and strings.
693 #
694 # If a string value contains whitespace, or
695 # embedded quotes, or the comment character
696 # (``#''), then the whole string must be quoted
697 # with double quotes. Inside the quotes, you may
698 # use the standard c-escape sequence
699 # (\t,\n,\r,\f,\v,\",\').
700 #
701 # Examples:
702 # eg-string: "New\tConfig\tfile\n"
703 # eg-long-string: "A long string that goes
704 # over multiple lines. The
705 # newline is kept in the
706 # string except when quoted
707 # with a backslash \
708 # as here."
709 # eg-simple-string: A-no-quote-string
710 # eg-integer: 10
711 # eg-boolean: true
712 # eg-char: 'a'
713 # eg-ctrl-g: '\007'
714
715
717 Written by James Brister <brister@vix.com> for InterNetNews. This is
718 revision 8243, dated 2008-12-21.
719
721 innfeed(1), newsfeeds(5)
722
723
724
725 innfeed.conf(5)