innxbatch - send xbatched Usenet articles to a remote NNTP server
innxbatch [ -D ] [ -t timeout ] [ -T timeout ] [ -v ] host file ...
Innxbatch connects to the NNTP server at the specified host and sends
it the specified xbatch files, using the XBATCH extension to the NNTP
protocol. It is normally invoked by a script run out of cron(8) that
uses shlock(1) to lock the host name, followed by a ctlinnd(8) command
to flush the batchfile.
Each file is removed after it has been successfully transferred.
If a communication error such as a write(2) failure, or an unexpected
reply from the remote server occurs, innxbatch will stop sending and
leave all remaining files untouched for later retry.
Innxbatch normally blocks until the connection is made. To
specify a timeout on how long to try to make the connection, use
the ‘‘-t’’ flag.
To specify the total amount of time that should be allowed for
article transfers, use the ‘‘-T’’ flag.
The default is to wait until an I/O error occurs, or all the
articles have been transferred. If the ‘‘-T’’ flag is used, the
time is checked just before each article is started; it will not
abort a transfer that is in progress.
-v Upon exit, innxbatch reports transfer and CPU usage statistics
via syslog(3). If the ‘‘-v’’ flag is used, they will also be
printed on the standard output.
-D Use the ‘‘-D’’ flag to print debugging information on standard
error. This will show the protocol transactions between innx-
batch and the NNTP server on the remote host.
A sample newsfeeds(5) entry to produce appropriate xbatch files (thanks
to Karsten Leipold <firstname.lastname@example.org>):
:<pathbin in inn.conf>/batcher \
-p "(<$ac_cv_path_COMPRESS in config.cache> >\
<pathoutgoing in inn.conf>/nase.\$\$)" \
A sample script to invoke innxbatch(8) is:
## SH script to send xbatches for a site, wrapped around innxbatch
## sendxbatches.sh <sitename> <hostname> <xbatch file name> ...
if [ $# -le 3 ]
echo "usage: $0 <sitename> <hostname> <xbatch file name>"
. <pathbin in inn.conf>/innshellvars
site="$1"; host="$2"; shift; shift
ctlinnd flush "$site" \
&& sleep 5 \
&& exec $NEWSBIN/innxbatch -v -D "$host" $*
Written by Stefan Petri <email@example.com>, modelled after
innxmit(8) and the XBATCH patch for the nntp reference implementation.
ctlinnd(8), inn.conf(5), innd(8), innxmit(8), newsfeeds(5),
Man(1) output converted with