to reduce the latency which would come from having to constantly poll
the feed file. innfeed is capable of feeding multiple peers from a
single innfeed instance, whereas each innduct process handles exactly
-one peer. innduct is much smaller and simpler, at 3kloc to innfeed's
+one peer. innduct is much smaller and simpler, at <4kloc to innfeed's
25kloc. innfeed needs a separate wrapper script or similar
infrastructure (of which there is an example in its manpage), whereas
innduct can be run directly and doesn't need help from shell scripts.
instead of the default
.BR inn.conf .
.TP
-.BI \-\-ctrl-sock-dir= DIR
-Use
-.I DIR
-as the directory to contain the actual control socket. See
-CONTROLLING INNDUCT, below.
-If
-.I DIR
-does not exist it will be created with mode 0700; if it does
-exist it must not be a symlink and must be owned by the user running
-innduct and have no access for "other". If the control socket cannot
-be set up (for this or any other reason), a warning is logged, but
-such situations are not fatal for innduct's startup. The default is
-.BR /tmp/innduct.control .
+.BR \-\-cli= \fIDIR\fR / |\fIPATH\fR
+Bind the control command line socket to
+.IB DIR / site _cli
+(if the value ends with a
+.BR /)
+or
+.I PATH
+(if it doesn't). See CONTROLLING INNDUCT, below.
+This option may be essential, if the
+path to
+.I feedfile
+is too long, as there is a fairly short limit on the paths to AF_UNIX
+sockets. The default is
+.IR feedfile \fB_cli\fR.
.TP
.BI \-\-port= PORT
Connect to port
.BR 10 .
There is no global limit on the number of connections.
.TP
-.BI \-\-max-queue-per-conn= max
+.BI \-\-max-queue-per-conn= per-conn-max
Restricts the maximum number of outstanding articles queued on any
-particular connection
+particular connection to
.IR max .
(Non-streaming connections can only handle one article at a time.)
The default is
.BR 200 .
.TP
+.BI \-\-max-queue-per-file= max
+Restricts the maximum number articles read into core from any one
+input file to
+.IR max .
+The default is twice the value of per-conn-max.
+.TP
.BI \-\-feedfile-flush-size= bytes
Specifies that innduct should flush the feed and start a new feedfile
when the existing feedfile size exceeds
control command, in which case it will report statistics so far and
quickly exit. If innduct receives SIGKILL nothing will be broken or
corrupted; you just won't see some of the article stats.
+.LP
innduct listens on an AF_UNIX socket, and provides a command-line
interface which can be used to trigger various events and for
-debugging.
-.LP
-The socket is called
-.IB feedfile _control
+debugging. The socket is called
+.IB feedfile _cli
and when connected reads and writes lines (with unix line endings).
It can most easily be accessed with a program like
.I netcat-openbsd
(eg
.B nc.openbsd -U
-.IR feedfile \fB_control\fR)
+.IR feedfile \fB_cli\fR)
or
.IR socat .
-The CLI has as a prompt
+The prompt is
.IR site \fB|\fR.
.LP
-Because there is a fairly short limit on the length of pathnames used
-for AF_UNIX sockets, innduct actually creates the socket with a unique
-name in a different dedicated subdirectory of /tmp, and makes
-.IB feedfile _control
-a symlink to the real socket.
-.LP
The following control commands are supported:
.TP
.B h
you rename it to match the pattern \fIfeedfile\fR\fB_backlog\fR*, as
otherwise innduct may find and process the file and read it to EOF
before you have finished creating it.
+.IP \fIfeedfile\fR_cli
+.IX Item "control command line socket"
+Default AF_UNIX listening socket for the control command line. See
+CONTROLLING INNDUCT, above.
.IP \fIfeedfile\fR_dump
.IX Item "debug dump file"
On request via a control connection innduct dumps a summary of its