NAME
inndcomm - INND communication part of InterNetNews library
SYNOPSIS
#include "inndcomm.h"
int
ICCopen()
int
ICCclose()
void
ICCsettimeout(i)
int i;
int
ICCcommand(cmd, argv, replyp)
char cmd;
char *argv[];
char **replyp;
int
ICCcancel(mesgid)
char *mesgid;
int
ICCreserve(why)
char *why;
int
ICCpause(why)
char *why;
int
ICCgo(why)
char *why;
extern char *ICCfailure;
DESCRIPTION
The routines described in this manual page are part of the
InterNetNews library, libinn(3). They are used to send com-
mands to a running innd(8) daemon on the local host. The
letters ``ICC'' stand for Innd Control Command.
ICCopen creates a Unix-domain datagram socket and binds it
to the server's control socket. It returns -1 on failure or
zero on success. This routine must be called before any
other routine.
ICCclose closes any descriptors that have been created by
ICCopen. It returns -1 on failure or zero on success.
ICCsettimeout can be called before any of the following rou-
tines to determine how long the library should wait before
giving up on getting the server's reply. This is done by
setting and catching a SIGALRM signal(2). If the timeout is
less then zero then no reply will be waited for. The
SC_SHUTDOWN, SC_XABORT, and SC_XEXEC commands do not get a
reply either. The default, which can be obtained by setting
the timeout to zero, is to wait until the server replies.
ICCcommand sends the command cmd with parameters argv to the
server. It returns -1 on error. If the server replies, and
replyp is not NULL, it will be filled in with an allocated
buffer that contains the full text of the server's reply.
This buffer is a string in the form of
``<digits><space><text>'' where ``digits'' is the text value
of the recommended exit code; zero indicates success.
Replies longer then 4000 bytes will be truncated. The pos-
sible values of cmd are defined in the ``inndcomm.h'' header
file. The parameters for each command are described in
ctlinnd(8). This routine returns -1 on communication
failure, or the exit status sent by the server which will
never be negative.
ICCcancel sends a ``cancel'' message to the server. Mesgid
is the Message-ID of the article that should be canceled.
The return value is the same as for ICCcommand.
ICCpause, ICCreserve, and ICCgo send a ``pause,''
``reserve,'' or ``go'' command to the server, respectively.
If ICCreserve is used, then the why value used in the
ICCpause invocation must match; the value used in the ICCgo
invocation must always match that the one used in the
ICCpause invocation. The return value for all three rou-
tines is the same as for ICCcommand.
If any routine described above fails, the ICCfailure vari-
able will identify the system call that failed.
HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews.
This is revision 1.10, dated 1993/01/29.
SEE ALSO
ctlinnd(8), innd(8), libinn(3).
Man(1) output converted with
man2html