SLGetSpooler(3) Impressario SLGetSpooler(3)NAME
SLGetSpooler, SLSetSpooler - gets/sets the default spooling system
SYNOPSIS
#include <spool.h>
int SLGetSpooler(unsigned int *defaultp,
unsigned int *availablep);
int SLSetSpooler(unsigned int default);
DESCRIPTION
The libspool library provides a common C language interface to two UNIX
print spooling systems, AT&T System V and BSD. The first libspool
function called automatically determines which of the two spooling
systems is available and sets a default spooling system for use by
subsequent libspool functions. The default spooling system set is
determined by the following table:
Available Spoolers Default
_____________________________
None None
BSD BSD
System V System V
System V and BSD System V
A spooling system is considered available if the daemon for the spooling
system is found to be running on the system.
The SLGetSpooler function returns the available spooling systems and the
currently set default spooling system. The SLSetSpooler function allows a
new default spooling system to be set for use by subsequent libspool
functions. Note that each libspool function automatically establishes a
default spooling system if one has not been set. Therefore, a call to
SLSetSpooler is necessary only when it is desired to set a spooler other
than the current default.
defaultp This is the currently set default spooling system that
will be used by subsequent libspool functions. The value
is one of:
SL_SPOOLER_NONE - No default currently set
SL_SPOOLER_BSD - BSD is default
SL_SPOOLER_SYSV - System V is default
default This value specifies which spooling system is to be the
default. The value is one of:
SL_SPOOLER_BSD - Set BSD as default
SL_SPOOLER_SYSV - Set System V as default
Page 1
SLGetSpooler(3) Impressario SLGetSpooler(3)
availablep This parameter indicates the spoolers currently available
on the system. The available spooling systems are
determined by the presence of the daemon for a given
spooling system. The System V spooling system is
considered available for use if the lpsched daemon is
running. The BSD spooling system is considered available
if the lpd daemon is running. availablep is a bit mask of
the available spooling systems. The value is one of:
SL_SPOOLER_NONE - No spooling systems available
SL_SPOOLER_BSD - BSD spooling only
SL_SPOOLER_SYSV - System V spooling only
SL_SPOOLER_BSD |
SL_SPOOLER_SYSV - System V and BSD available
RETURN VALUE
0 is returned if execution was successful. -1 is returned and SLerrno is
set if an execution error has occurred.
EXECUTION ERROR CODES
SLGetSpooler and SLSetSpooler will fail under the following
circumstances.
SL_ERR_FIND_SPOOLER An error occurred while attempting to determine
the available printer spooling systems.
In addition, SLSetSpooler will fail under the following circumstances.
SL_ERR_SPOOLER_NONE An invalid spooling system (e.g.
SL_SPOOLER_NONE) has been specified as the
default spooling system.
SL_ERR_NO_SPOOLERS There are no printer spooling systems available.
SL_ERR_SPOOLER_UNKNOWN The spooling system specified is not available.
SEE ALSOSLPerror(3), libspool(3), lpsched(1M), lpd(1M)
Page 2