1NEWSX(8)                    System Manager's Manual                   NEWSX(8)
2
3
4

NAME

6       newsx - news server exchange; post and fetch news articles
7
8

SYNOPSIS

10       newsx [ options ] [ spoolname [ [ hostname ] port ] ]
11
12

DESCRIPTION

14       newsx  is a client connecting to an NNTP server, posting outgoing arti‐
15       cles batched by the news system, while also fetching new incoming arti‐
16       cles from the same newsserver.
17
18       It  provides  the  NNTP capabilities required for serving a small local
19       news spool such as those that may be found on installations  with  NNTP
20       access through limited ISP accounts only, as well as being suitable for
21       exchanging news with supplemental news  sources  for  full  scale  news
22       servers.
23
24

OPERATION

26       The program would normally be run by user news.
27
28       When started, newsx will go through the spoolname outgoing spool queue,
29       and attempt to post all articles therein to the NNTP server hostname.
30
31       If a username and password for use with the simple authorization proto‐
32       col  have  been supplied, they will be sent to the server first. If the
33       -r option is specified, a MODE READER command will be sent.
34
35       When the outgoing transfer is finished, articles will be  removed  from
36       the  outgoing  spool queue if successful transfer has been acknowledged
37       by the NNTP host, if the article was specified by the host as a  dupli‐
38       cate (already posted), or if a spooled article can no longer be found.
39
40       The  fetch  phase  is  then  initiated.   Articles  available  from the
41       newsserver will be fetched and placed in the incoming spool,  ready  to
42       be injected into the news system by newsrun (C News) or rnews -U (INN).
43
44       The groups are visited in the sequence that they appear in the host in‐
45       coming state file, see in.hosts(5).  This may be used actively to  pri‐
46       oritize  between  newsgroups.  A tag mechanism controlled by the -e op‐
47       tion is available to limit the number of groups that will be fetched.
48
49       Group names not present in the active file will not be fetched.   Every
50       group name is checked against the spoolname entries in the sys (C News)
51       or newsfeeds (INN) file, as well  as  any  --groups  option,  and  only
52       groups  allowed  there will actually be fetched.  For C News, the group
53       name is also checked against the ME entry, whereas in INN the ME  entry
54       is just prepended to the spoolname entry.
55
56       In  this way, the sys/newsfeed file is used to control which newsgroups
57       are actually received from the remote site, in the same manner that the
58       local server determines which outgoing article will go where.
59
60       If  an  -e  option hasn't been specified, the local active file is then
61       traversed to see if there are groups not mentioned in the current  host
62       newsrc  file.   Again, only groups allowed by sys or newsfeeds is actu‐
63       ally fetched. Since these groups don't have a starting point specified,
64       all available articles will be fetched.
65
66       To  avoid  transferring  cross-posted articles more than once, articles
67       with messags IDs already fetched  in  the  same  session  will  not  be
68       fetched again.
69
70       To  make multiple news sources to be used in an efficient manner, arti‐
71       cles present in the history database will be skipped.
72
73       The pull phase can be omitted entirely by using the -g option.
74
75       Statistics on the connection will be logged to syslog (or  stderr  with
76       -d).  The posted article count is the total number of articles actually
77       posted.  The duplicate count is how many message IDs from  posted  mes‐
78       sages that were found to already exist on the remote system.  The miss‐
79       ing count is those posted articles that could no longer  be  found  lo‐
80       cally,  usually  because  they  were canceled locally, or perhaps since
81       they were expired already.
82
83       The connection time and the total number of characters transferred  via
84       the  NNTP  layer is logged, in addition to the average speed of article
85       transfer.  The speed given is the net rate, the calculation being based
86       on  the  actual number of characters belonging to news article head and
87       body parts.
88
89       A log file may be specified with the -l option, and a folder of  posted
90       messages maintained with the -f option.
91
92

ARGUMENTS

94       options
95              As detailed below.
96
97       spoolname
98              The  name  of  the  outgoing spool queue.  If not specified, the
99              value of the NNTPSERVER environment variable will be used.
100
101       hostname
102              The hostname of the remote NNTP server to  connect  to.  If  not
103              specified, the name of the spool will be used.
104
105       port   The port used for connecting to hostname.  Will usually not need
106              to be specified, and port "nntp" will be assumed.  The port name
107              "telnet" will receive special treatment.
108
109

OPTIONS FOR LOGGING

111       -f folder, --posted folder
112              Posted articles will be appended to the standard mail folder in‐
113              dicated.  Note that the article will be added to the folder  the
114              first  time posting of an article is attempted.  The actual sta‐
115              tus of the posting will appear in the log file.
116
117       -l logfile, --log logfile
118              Log information about successfully posted articles to  the  file
119              indicated.
120
121       --stat statfile
122              A  summary  of article exchange statistics will be logged to the
123              file indicated.
124
125       --scanlogs
126              Obey locks set by the INN scanlogs utility.  This  is  currently
127              only  meaningfull  for  use with a modified scanlogs that under‐
128              stands newsx logs.
129
130

OPTIONS FOR NEWS ACCESS

132       -a authfile, --auth authfile
133              If specified, the username and password combination found in au‐
134              thfile  will  be sent to the server as part of the simple autho‐
135              rization protocol when the connection is first  made.  The  file
136              should  consist  of  a  line with two blank-separated words, the
137              first being the username, the second  the  password.  Do  ensure
138              that  this  file  only has read access only for those users that
139              need to know.
140
141       --authgeneric
142              Authentication with  the  server  is  performed  using  AUTHINFO
143              GENERIC.   This  works  by  spawning a child process via /bin/sh
144              string, where string is set in  the  environment  variable  NNT‐
145              PAUTH.   This  process  is expected to handle the authentication
146              portion of the connection.
147
148       -r, --reader
149              A MODE READER command is sent to the remote server. This is used
150              when  connecting  to  remote INN hosts that needs it, and is the
151              default state when using --ihave. With ihave, the command is is‐
152              sued between the ihave and fetch phase, otherwise the command is
153              issued initially.
154
155       --no-reader
156              No MODE READER command is sent to the remote server. This is the
157              default state when not using --ihave.
158
159       --readbeforeauth
160              Send  the  MODE READER command before attempting to authenticate
161              via an AUTHINFO command. Otherwise, it is sent after the authen‐
162              tication.   This option will obviously have no effect unless you
163              also specify both --reader and one of  --authgeneric  or  --auth
164              authfile.
165
166       -w chatfile, --chat chatfile
167              Use chatfile to control any special connect sequence that may be
168              required before the NNTP protocol is connected. Only implemented
169              for the "telnet" protocol.
170
171       -x command, --exec command
172              If  specified,  the command will be executed after the host port
173              has been opened. This option is used in rare cases when  special
174              tricks has to be employed to get an NNTP connection activated.
175
176       -y program, --connect program
177              If  specified,  connect  via a bidirectional pipe to program in‐
178              stead of to a socket. The hostname and port  arguments  will  be
179              ignored.
180
181

OPTIONS FOR POSTING

183       -p, --no-post
184              Do not attempt to do any posting.
185
186       --ihave
187              Use  NNTP  IHAVE mechanism for submitting news messages, instead
188              of the default POST. If this is for forwarding news in  general,
189              and  not  necessarily news generated locally, the setting of the
190              --fail and --bounce option should be carefully reviewed.
191
192       -m, --no-msgid
193              Remove any message-ID header field from the posted message. This
194              should  cause  the receiving end to generate a fresh message-ID.
195              It should never been used together with --ihave.
196
197       -k, ----keep-path
198              Keep the Path when posting. In posting mode, the Path is by  de‐
199              fault  stripped  together  with  the  NNTP-Posting-Host and Xref
200              header items, so that the path of the  news  article  as  posted
201              will  appear  to start at the actual posting host. With --ihave,
202              the path is always included.
203
204       --continue
205              Ignore (but report) errors about non-existing  outgoing  spools,
206              and continue with news fetching instead.
207
208       --max-path len
209
210       All outgoing articles are checked to see if the length of
211              their  paths  are  not  too  long.   This is an extra precaution
212              against inadvertently submitting foreign articles  for  posting.
213              This  option  sets the maximum path length allowed.  The default
214              value is 1, consistent with a simple, local, newsspool.  To dis‐
215              able  this  feature,  set  it to an impossibly large value, like
216              999.
217
218

OPTIONS FOR FETCHING

220       -g, --no-fetch
221              Do not attempt to fetch any news articles.
222
223       -e end_tag, --end end_tag
224              Specify a tag in the incoming host state file, see  in.hosts(5).
225              News  fetching  will  end when a corresponding tag line has been
226              reached. The tag line consists of a colon followed  by  the  tag
227              itself.   This is a useful tool for dividing the newsgroups into
228              several categories. Only a few newsgroups may be fetched  during
229              prime  time,  whereas  the  full  list can be fetched once every
230              night, for instance.
231
232       -W winsize, --window winsize
233              Specify the window size with respect  to  how  many  outstanding
234              NNTP  requests will be allowed at any one time. The default set‐
235              ting is 10.  A value of 0 will disable windowing  (aka.  stream‐
236              ing) completely, making debugging easier.  Increasing the window
237              can significantly improve the article transfer speed.   The  ef‐
238              fect  is particulary pronounced over slow links and when many of
239              the articles are already present in the local  spool,  where  an
240              improvement in speed of over 10 times has been observed compared
241              to running with windowing disabled.  All this at the penalty  of
242              an increased host newsserver load, obviously.
243
244       -b minspool, --size minspool
245              Specify  the minimum incoming spool size. After every new group,
246              if the spool file has reached the byte  size  specified,  a  new
247              spool batch will be made. Setting this value to 1 will cause ev‐
248              ery newsgroup to be placed in a separate spool.
249
250       --rnews
251              Pipe incoming messages directly to rnews instead of placing them
252              into the in-coming spool.
253
254       --pipe-to program
255              Pipe  incoming  messages to program instead of placing them into
256              the in-coming spool.  A separate program and pipe  is  initiated
257              for each incoming message.
258
259       --rnews-to program
260              Like  --pipe-to,  but  the  pipe is continuous for each session,
261              with article seperation is in rnews style.
262
263       -z, --sync
264              Omit actual pulling of news articles. Instead, simply update the
265              host incoming state file to synchronize with the currently high‐
266              est available article numbers from the server in question.  This
267              option  can  be useful when a fresh local spool is initiated. No
268              article posting will be attempted.  See also in.hosts(5).
269
270       -Z, --syncnew
271              Omit actual pulling of news articles in previously unseen groups
272              only.   The  net  effect  is  that newly added groups will start
273              fetching from now on, instead of from the first  article  avail‐
274              able at the host server.
275
276       --reset
277              Ignore the latest article information in the host incoming state
278              file and  attempt  fetching  all  articles  available  from  the
279              server,  subject to the normal history lookup constraints.  This
280              option is useful if the remote spool has been reconfigured.  See
281              also in.hosts(5).
282
283       --filter filterprog
284              Enable  message  filtering via the program filterprog.  Uses the
285              highwind interface model, where each article  is  given  to  the
286              filter  in  NNTP-fashion,  and the filter responds with a 335 to
287              accept, and a 435 to reject a message.
288
289       --mfilter filterprog
290              Enable filtering by message ID. The filterprog will  be  invoked
291              once  for  each unseen message, with the message ID as a command
292              line argument.  A non-zero return status will prevent  the  mes‐
293              sage  from  being  transferred.   This function is obsolete, and
294              will probably be removed in later versions.
295
296       -X num, --maxnew num
297              Fetch at most num articles from each new and  previously  unseen
298              newsgroup.
299
300       --maxart num
301              Fetch  at  most num articles from each newsgroup. Note that this
302              might cause articles to be silently lost.
303
304       --no-path
305              Unless the exclusion pattern is set to newsx, all incoming arti‐
306              cles are checked to see if their path is consistent with the ex‐
307              clusions given in /usr/lib/news/newsfeeds.   This  option  omits
308              this check.
309
310       --forget-inactive
311              Remove  information in the incoming hosts state file about news‐
312              groups that are removed from the /usr/lib/news/active file.  See
313              also in.hosts(5).
314
315       --minfree N
316              Don't  fetch  news if there are less than N kbytes free space in
317              the news spool.
318
319       --group list
320              Specify pattern for groups to be fetched that will apply in  ad‐
321              dition  to  the  ones in /usr/lib/news/newsfeeds.  The syntax is
322              basically the same as for INN newsfeeds(5).  It  is  recommended
323              to  put  list in single quotes, since shells may otherwise treat
324              the ! character in strange ways.  For a list that specifies only
325              negations, an initial '*' clause will be assumed.
326
327       This  options is particularily useful to specify unsymmetric behaviour,
328       i.e.
329              groups where there will be outgoing traffic, but no incoming ar‐
330              ticles.   For  instance, to explicitly avoid fetching of control
331              groups, use:
332                     --groups '!control.*'
333
334       It can also be useful to specify that only a subset of groups should be
335       fetched for the occasion, e.g:
336              --groups 'comp.*,!*.advocacy'
337
338       It is recommended to put the argument for --groups in single quotes.
339
340

GENERAL OPTIONS

342       -c, --cnews
343              Set to C News mode as opposed to INN. Controls details regarding
344              handling of spool and lock files.
345
346       -i, --inn
347              Set to INN mode as opposed to C News. Controls details regarding
348              handling of spool and lock files.
349
350       --newline
351              Uses  single newline character as line terminator instead of the
352              carriage return, line feed sequence.
353
354       -v, --version
355              Display program version. Include this  when  reporting  bugs  to
356              http://www.kvaleberg.com/bug/
357
358       --help Give a very brief usage summary.
359
360       --no-ps
361              Do not update the process status display.
362
363

OPTIONS FOR NEWSGROUPS

365       Note:  Unless otherwise specified, these options are in addition to the
366       usual actions and do not imply --no-post or --no-fetch.  Specify  those
367       switches if desired.
368
369       --list listname
370              Obtain  a  list  of  newsgroups from the newsserver to listname.
371              The list consists of one  line  per  newsgroup,  containing  the
372              newsgroup  name,  a blank, and a letter showing the group status
373              (usually 'y' for an active group, 'm' for a moderated group).
374
375       If the first character is a '|',
376              listname is assumed to be a program path which will receive  the
377              list as standard input (you will need to put the entire argument
378              in quotes to escape the usual shell interpretation of '|').   If
379              it is a single '-', the list will appear on the standard output.
380              Otherwise it will be assumed to be a filename.
381
382       --newlist listname
383              Obtain a list of newsgroups not currently present on  the  local
384              server  from  the newsserver to listname.  The list is also sub‐
385              ject to the limitations of the sys or newsfeeds file.  The oper‐
386              ation is otherwise as for the --list option.
387
388       --desc descname
389              Obtain  a list of newsgroups descriptions from the newsserver to
390              descname.  Only descriptions for locally active newsgroups rele‐
391              vant to the newsfeed in question will be fetched.
392
393       The  list  consists of one line per newsgroup, containing the newsgroup
394       name,
395              a tab, and a short textual description.  A pipe may be specified
396              in descname kist as for the --list option.
397
398       --alldesc descname
399              Obtain  a list of all newsgroups descriptions available from the
400              newsserver to descname.  The operation is otherwise as  for  the
401              --desc option.
402
403

OPTIONS FOR ERROR HANDLING

405       -t timeout, --timeout timeout
406              Specify  timeout for TCP/IP and lockfile operations, in seconds.
407              The default value is 600.
408
409       --fail time
410              Specify the maximum age of an article. Whenever  an  attempt  of
411              posting  an  article  fails, and the specified time limit is ex‐
412              ceeded, the article will be declared as  failed,  and  a  bounce
413              message  will be generated.  The default unit is hours; the suf‐
414              fixes s for seconds, m for minutes, h for hours, d for days  and
415              w  for  weeks would change this. They can also be combined, e.g.
416              "4h30m".  In absence of this option, no fail by age will be per‐
417              formed.  Setting the time to zero will bounce messages after the
418              first failed attempt.
419
420       --bounce addr
421              Specify the destination address for messages bounced due to  the
422              fail  time  being  exceeded.   If  addr is specified as none, no
423              bounce will be generated.  The  default  value,  poster,  causes
424              messages to be returned to the sender. This setting should defi‐
425              nitely only be used in situations where newsx  is  utilized  for
426              posting locally generated news.
427
428       --attach how
429              Specifies  the  way  the original message is handled for bounced
430              messages:
431
432         mime Send the original as a Mime attachement. This is the default be‐
433              haviour.
434
435         yes  Append the original to the mail message itself.
436
437         no   Do not attach the original message.
438
439

OPTIONS MOSTLY FOR NEWS GATEWAYS

441       The following options are not for ordinary use: They would only be used
442       for special configurations where newsx is used as a sort of gateway  to
443       inject news messages from other sources.
444
445       --inews
446              Pipe  incoming  messages directly to inews, inject them into the
447              local spool via the same interface as is used for local new mes‐
448              sages.
449
450       --inews-options options
451              Specify  command  line options for --inews. The leading '-' must
452              be included. The default inews options are "-hOS".
453
454       --add-header header
455              Add a specific header to incoming messages. The header  will  be
456              added exactly as specified, adding a trailing newline.
457
458       The exception is for the special 4 letter string "Path".
459              This  will  be  replaced by a header line that says "Path: HOST‐
460              NAME!not-for-mail" if the incoming message  contains  no  Path:.
461              This  can  be  quite  essential for news gateways to prevent in‐
462              jected messages to be retured back to the source.
463
464

OPTIONS FOR PROFILE FILES

466       --profile file
467              Read a newsx profile from file .  This file can contain  command
468              line   options   to   specify   default  newsx  behaviour.   See
469              newsx.conf(5) for an overview of the format.
470
471       Any option may be used in profile files. Some options are  really  only
472       meaningfull in profile files:
473
474       --spoolname spoolname
475              Specify a default spoolname.
476
477       --hostname hostname
478              Specify a default hostname.
479
480       --port port
481              Specify a default port for connecting to hostname.
482
483

OPTIONS FOR CONFIGURATION

485       Configuration  to  the local news system peculiarities is traditionally
486       done at build-time, but it is possible to specify at runtime in various
487       ways.
488
489       --config
490              Read   and   obey   the  standard  news  configuration  file  in
491              /usr/lib/news/lib/innshellvars.  This allows newsx to  adapt  to
492              changes in the local newsserver configuration dynamically.
493
494       --config-is configfile
495              Like  --config, except that the configuration filename is speci‐
496              fied. A list of  files  may  also  be  specified,  seperated  by
497              colons.  In  this  case, the first file on this list that exists
498              will be used.
499
500       --home newshome
501              Use newshome as the news home directory instead of  the  default
502              /usr/lib/news.  A full path must be specified.
503
504       -s spooldir, --spool spooldir
505              Use  spooldir as the news article spool directory instead of the
506              default /var/spool/news.  A full path must be specified.
507
508       --togo togofile
509              Specify the name of the C News togo file for outgoing  news.  No
510              effect in INN mode.  Required only if different from the default
511              value /var/spool/news/outgoing/spoolname/togo.   A  leading  '/'
512              specifices  a full path, a leading '.' is relative from the cur‐
513              rent   directory,   otherwise   the   name   is   relative    to
514              /var/spool/news/outgoing/spoolname.
515
516       --batch batchdir
517              Use  batchdir  as  the outgoing news article spool directory in‐
518              stead of the default /usr/lib/newsbin.  A leading '/' specifices
519              a  full  path, a leading '.' is relative from the current direc‐
520              tory, otherwise the name is relative to /var/spool/news.
521
522       -h historydb, --history historydb
523              Specify the name of the history database file, used for checking
524              if  news  articles  are  already present in the spool.  Required
525              only  when   using   a   name   different   from   the   default
526              /usr/lib/news/history.   An  empty  argument "" will prevent any
527              referrence to the news history database.
528
529       --active activefile
530              Specify the name of the active newsgroup file for incoming news.
531              Required    only   if   different   from   the   default   value
532              /usr/lib/news/active.  A leading '/' specifices a full  path,  a
533              leading  '.' specifies a path relative to the current directory,
534              otherwise the name is relative to /usr/lib/news.
535
536       --newsfeeds newsfeedsfile
537              Specify the name of the newsfeed specification file.  This  will
538              override  the  default  both in C News (sys) and INN (newsfeeds)
539              modes.  File name conventions as for --active.
540
541       --incoming incomingdir
542              Use incomingdir as the incoming news article spool directory in‐
543              stead  of  the default /var/spool/news/incoming.  Fine name con‐
544              ventions as for --active, except that the default  directory  is
545              /var/spool/news.
546
547       --inhosts inhostsdir
548              Use inhostsdir as the news host active file directory instead of
549              the default /var/spool/news/inhosts.  Name  conventions  as  for
550              --incoming.  See also in.hosts(5).
551
552       --hostconfig hostconfigdir
553              Use  hostconfigdir  as  the directory for the host specific pro‐
554              file.  instead of the  default  /var/spool/news/in.hosts.   Name
555              conventions  as  for  --incoming.   See  also newin.hosts(5) and
556              newsx.conf(5).
557
558

OPTIONS FOR TESTING AND DEBUGGING

560       --debug level
561              Set debug level. Any level different from zero diverts reporting
562              to  stderr  instead of syslog, and turns on extra debugging out‐
563              put.  Level 2 will output a '.' for every new article.  Level  3
564              will log all NNTP commands.  Level 4 will produce the same state
565              information that is available via the  process  status  display.
566              Going  to  level  5  will  produce additional debug information,
567              level 6 will include history database debug, while level 7  also
568              will  show all communications over the NNTP socket, article con‐
569              tent included.
570
571       -d, --verbose
572              Enable debugging, and sets the debug level according to the num‐
573              ber of times it is specified.
574
575       -n, --dry-run
576              No-action  flag,  will  "fake" an NNTP connection, and leave the
577              outgoing batch untouched.  Probably useful only with --debug for
578              debugging and dry-testing.
579
580       --verify
581              Used together with --configor --config-is, causes the configura‐
582              tion to be verified, but not adapted to.
583
584       -o, --keepold
585              Keep the previous outgoing spool in an ".old" file.  This  might
586              seem  like  a useful option for ordinary use, but the problem is
587              that a non-empty file might cause a news watch  program  to  be‐
588              lieve there is a stale outgoing spool.
589
590       -u, --no-force
591              After  the  timeout  of lockfile operations, just give up and do
592              not attempt  to  unlock  the  lockfiles  and  remove  the  stale
593              process.
594
595       --no-queue
596              Do not queue up for access to a news host. If a lock already ex‐
597              ists for the specified host, just give up and don't queue up for
598              it.
599
600       --locks locksdir
601              Use  locksdir  as the lock file directory instead of the default
602              /usr/lib/news.  Fine name conventions as  for  --active,  except
603              that the default directory is /usr/lib/news.  If the string none
604              is supplied, no locking will occur.  All this should  of  course
605              be used only if you really, really know what you are doing.
606
607       -q "msgid", --enquire "msgid"
608              Enquires whether the msgid is present in the local history data‐
609              base. The msgid should include the angle brackets. Implies --no-
610              post and --no-fetch.
611
612       --no-hostlock
613              Do not implement the newsx host access lock. Should only be used
614              if you really know what you are doing.
615
616       --no-next
617              Do not use the NNTP NEXT command. This causes newsx not  to  at‐
618              tempt to use NEXT for filling out gaps in the article sequence.
619
620       --missing "num"
621              Tunes the number of missing articles in a row before a NEXT com‐
622              mand is issued, instead of a sequential STAT.  A value  of  zero
623              will  cause  NEXT to be used extensively. The default value is 0
624              if no window, 2 if a window is specified.
625
626       --keep-fake
627              Some remote news servers generate faked news articles. Normally,
628              you  would want newsx to skip them, but with this option you can
629              actually fetch them.
630
631

SPECIAL CONNECT SEQUENCE

633       The -w option specifies that a special connect  sequence  is  required,
634       and that a script for this sequence can be found in the chatfile.  This
635       file consists of lines that contains pattern receive  and  send  pairs,
636       separated  by  blanks.  The  patterns  may  be enclosed in quotes.  The
637       script is currently only available for the "telnet" protocol.
638
639       A typical invocation line would be:
640                   newsx -w chat.acme acme login.acme.net telnet
641
642       The file chat.acme could look like this:
643                   # login for acme.net NNTP
644                   login: myusername
645                   Password: mypassword
646                   $ "exec telnet news.acme.net nntp"
647                   ECHO
648
649       The script will have to be adapted for local conditions, of course.
650
651       The special tag ECHO specifies that line echo should be suppressed, re‐
652       quired since the host telnet operates in line mode.
653
654       Since this file usually contains passwords and other sensitive informa‐
655       tion, ensure that read access to it is limited.
656
657

PROCESS STATUS

659       The ps process status will also show the current newsx  status.  During
660       the  actual  news  transfer phase, it will show which group and article
661       number that is being fetched. A continuous status can be obtained by;
662                     newsq -c
663
664       This feature can be disabled via the --no-ps option.
665
666

CONFIGURATION FORMAT

668       For INN, the following configuration items will be used:
669
670       $INND  Signals an INN configuration.
671
672       $NEWSBIN
673              Directory for INN binaries.
674
675       $NEWSHOME
676              News home directory.
677
678       $PATHETC
679              Directory for news configuration files. Defaults to $NEWSHOME if
680              not available.
681
682       $SPOOL If $SPOOL contains the string "/articles", the incoming host di‐
683              rectory $INHOSTS will be formed by replacing it with "/inhosts".
684              Otherwise, "$SPOOL/in.hosts" will be used.
685
686       $BATCH Outgoing spool.
687
688       $INCOMING
689              Incoming spool.
690
691       $ACTIVE
692              Active file.
693
694       $HISTORY
695              History database.
696
697       $LOCKS DIrectory for lockfiles.
698
699       $NEWSFEEDS
700              Newsfeeds file.
701
702       $EXTENDEDDBZ
703              True  is history database in extended format.  Only relevant for
704              early INN 2.x where there is no libinn, otherwise ignored.
705
706       For C News:
707
708       $NEWSBIN
709
710       $NEWSCTL
711              Equivalent to INN $NEWSHOME.  $ACTIVE will be "$NEWSCTL/active".
712              $HISTORY   will   be  "$NEWSCTL/history".   $NEWSFEEDS  will  be
713              "$NEWSCTL/sys".  $LOCKS and $PATHETC will be "$NEWSCTL".
714
715       $NEWSARTS
716              Equivalent to INN $SPOOL.  $BATCH will be "$NEWSARTS/out.going".
717              $INCOMING  will  be  "$NEWSARTS/in.coming".   $INHOSTS  will  be
718              "$NEWSARTS/in.hosts".
719
720

LOG FILE FORMAT

722       The -l log file of posted articles will contain one line for each arti‐
723       cle.   To be compatible with the INN format, each field is separated by
724       a tabstop:
725
726       Month  Standard 3 letter abbreviation.
727
728       Date   2 digits
729
730       HH:MM:SS
731              Local time.
732
733       Year   4 digits.
734
735       Spool  Name of outgoing spool.
736
737       <Msgid>
738              Within angle brackets.
739
740       Filename
741              As it appears in the spool file.
742
743       Sender The value of the Sender-field, or From-field  if  no  Sender  is
744              available.
745
746       Status "OK"  for  successfully  posted items, "Duplicate" for items al‐
747              ready posted.
748
749       Lines  Number of lines in the posting.
750
751       Status Message status. "OK" if everything went well, otherwise an error
752              message appears.
753
754

INCOMING SPOOL FORMAT

756       The incoming spool consists of files with the file name ending by ".t".
757       Each file can contain many articles. Each article is  prefixed  by  the
758       following header:
759                   #! rnews N
760
761       The number N is the number of bytes of the article proper, not counting
762       the header line. The article follows after the header line.  It appears
763       exactly  as  received  from the news server except that CR/LF sequences
764       are replaced by proper newlines, and the terminating full stop  is  not
765       included.
766
767

MESSAGE HEADER HANDLING

769       Incoming  message  headers will pass through without modification, with
770       the exception that the text "newsx" will be added if not there  already
771       when the exclusion pattern for the newshost is set to "newsx".
772
773       Most outgoing message header items will also pass through, altough some
774       header items are handled specially:
775
776       From:  Will be used for indentifying  the  sender  if  everything  else
777              fails.
778
779       Message-ID:
780              Will  be  used  for logging purposes. The --no-msgid will remove
781              this item for messages being posted.
782
783       NNTP-Posting-Date:
784
785       NNTP-Posting-Host:
786              Will always be removed for messages being posted.
787
788       Path:  Will be removed for messages being posted, unless the  ----keep-
789              path option is given.
790
791       Reply-to:
792              Will be used for indentifying the sender.
793
794       Sender:
795              Will be used for indentifying the sender.
796
797       Xref:  Will always be removed from outgoing messages.
798
799       X-Server-Date:
800
801       X-Trace:
802
803       X-Complaints-To:
804              Will always be removed for messages being posted.
805
806

DIAGNOSTICS

808       newsx returns error codes as follows:
809              0 - Successful completion
810              1 - General system error
811              2 - Incorrect arguments supplied.
812              3 - Error connecting to remote host
813              4 - NNTP Protocol error
814              5 - Errors accessing outgoing spool file.
815              6 - Errors accessing host newsrc file.
816              7 - Errors accessing incoming spool file.
817              8 - Errors accessing local active and sys files.
818              9 - Socket access error (e.g. connection timeout)
819              10 - Errors accessing authinfo file.
820              11 - Connect script failure.
821              12 - Option -q did not find the message ID.
822              13 - Wait for lock timed out.
823
824

NOTES

826       Distribution fields are ignored by newsx, and the handling of them left
827       to the news server.
828
829

BUGS

831       Report any bugs to http://www.kvaleberg.com/bug/
832
833

FILES

835       See also in.hosts(5).
836
837       /usr/lib/news/newsx.conf
838       Newsx standard profile. If it exists, this profile file  will  be  read
839       before the command line arguments are parsed.  See newsx.conf(5).
840
841       /usr/lib/news/lib/innshellvars
842       The standard news configuration file.
843
844       For C News:
845
846       /var/spool/news/outgoing/spoolname/togo
847              Spool file
848
849       /var/spool/news/outgoing/spoolname/togo.old
850              Previous spool file
851
852       /var/spool/news/outgoing/spoolname/LOCKb
853              Lock file
854
855       /var/spool/news/incoming/.tmp.$$
856              Incoming spool, temporary file.  $$ is the process ID.
857
858       /var/spool/news/incoming/T.$$.S.t
859              Incoming  spool,  when finished and ready for newsrun.  T is the
860              current Unix time, $$ is the process ID, and, S  is  a  sequence
861              number.
862
863       /usr/lib/news/active
864              Local  active  file,  contains  a list over all currently active
865              newsgroups in the local spool. This is used as a basis for  con‐
866              structing  a  list  over  which  newsgroups will actually be re‐
867              quested.
868
869       /usr/lib/news/sys
870              Newsserver configuration file.  This is used as a filter against
871              the  local active list, deciding which newsgroups which will ac‐
872              tually be pulled.  The basic format of each specification is:
873                   site/exclusions:grouplist/distlist:flags:cmd
874
875              If the exclusions field is set to newsx, newsx will  modify  the
876              path of incoming news to include the "newsx" pattern.
877
878              The site field identifies the remote news source.
879
880              The  grouplist is a comma separated list of group pattern names.
881              A !-prefix signifies exclusions, and the name all  matches  any‐
882              thing.
883
884       /usr/lib/news/history
885
886       /usr/lib/news/history.pag
887
888       /usr/lib/news/history.dir
889              Local news spool database.
890
891       For INN:
892
893       /var/spool/news/outgoing/spoolname
894              Spool file
895
896       /var/spool/news/outgoing/spoolname.old
897              Previous spool file
898
899       /usr/lib/news/LOCK.spoolname
900              Lock file
901
902       /usr/lib/news/active
903              Local  active  file,  contains  a list over all currently active
904              newsgroups in the local spool. This is used as a basis for  con‐
905              structing  a  list  over  which  newsgroups will actually be re‐
906              quested.
907
908       /usr/lib/news/newsfeeds
909              Newsserver configuration file.  This is used as a filter against
910              the  local active list, deciding which newsgroups which will ac‐
911              tually be pulled.  The basic format of each specification is:
912                   site/exclusions:grouplist/distlist:flags:param
913
914              If the exclusions field is set to newsx, newsx will  modify  the
915              path of incoming news to include the "newsx" pattern.
916
917              The site field identifies the remote news source.
918
919              The  grouplist is a comma separated list of group pattern names.
920              A !-prefix signifies  groups  not  exchanged,  and  the  name  *
921              matches anything.
922
923       /usr/lib/news/history
924
925       /usr/lib/news/history.pag
926
927       /usr/lib/news/history.dir
928              Local news spool article database.
929
930

AUTHOR

932       Egil Kvaleberg <egil@kvaleberg.no>
933
934

SEE ALSO

936       newsq(1), in.hosts(5)
937
938       C News: news(5), newsdb(5), newssys(5), rnews(8)
939
940       INN:  rnews(1),  inews(1),  wildmat(3),  active(5),  history(5),  news‐
941       feeds(5), ctlinnd(8)
942
943       RFC-977 - Network News Transfer Protocol (NNTP)
944       RFC-1036 - Usenet Article Format
945
946       http://www.kvaleberg.com/ISP-Hookup-HOWTO.html
947       http://www.kvaleberg.com/newsx.html
948
949
950
951
952                                                                      NEWSX(8)
Impressum