SCF_ERROR(3SCF)             Service Configuration Facility Library Functions
NAME
       scf_error, scf_strerror - error interface to Service Configuration
       Facility
SYNOPSIS
       cc [ 
flag... ] 
file... 
-lscf [ 
library... ]
       #include <libscf.h>       
scf_error_t scf_error(
void);       
const char *scf_strerror(
scf_error_t error);
DESCRIPTION
       The 
scf_error() function returns the current 
libscf(3LIB) error value
       for the current thread. If the immediately previous call to a 
libscf       function failed, the error value will reflect the reason for that
       failure.
       The 
scf_strerror() function takes an error code previously returned
       by 
scf_error() and returns a human-readable, localized description of
       the error.
       The error values are as follows:       
SCF_ERROR_BACKEND_ACCESS           The storage mechanism that the repository server (
svc.configd(8))
           chose for the operation denied access.       
SCF_ERROR_BACKEND_READONLY           The storage mechanism that the repository server (
svc.configd)
           chose for the operation is read-only. For the local filesystem
           storage mechanism (currently 
/etc/svc/repository.db), this
           usually occurs because the filesystem that contains it is mounted
           read-only. See 
mount(8)       SCF_ERROR_CONNECTION_BROKEN           The connection to repository is broken.       
SCF_ERROR_CONSTRAINT_VIOLATED           A required constraint was not met.       
SCF_ERROR_DELETED           Object was deleted.       
SCF_ERROR_EXISTS           The object already exists.       
SCF_ERROR_HANDLE_DESTROYED           An object was bound to a destroyed handle.       
SCF_ERROR_HANDLE_MISMATCH           Objects from different SCF handles were used.       
SCF_ERROR_IN_USE           The object is currently in use.       
SCF_ERROR_INTERNAL           An internal error occurred.       
SCF_ERROR_INVALID_ARGUMENT           An argument is invalid.       
SCF_ERROR_NO_MEMORY           No memory is available.       
SCF_ERROR_NO_RESOURCES           The repository server is out of resources.       
SCF_ERROR_NO_SERVER           The repository server is unavailable.       
SCF_ERROR_NONE           No error occurred.       
SCF_ERROR_NOT_BOUND           The handle is not bound.       
SCF_ERROR_NOT_FOUND           Nothing of that name was found.       
SCF_ERROR_NOT_SET           Cannot use unset value.       
SCF_ERROR_PERMISSION_DENIED           The user lacks sufficient authority to conduct the requested
           operation. See 
smf_security(7).       
SCF_ERROR_TYPE_MISMATCH           The type does not match value.       
SCF_ERROR_VERSION_MISMATCH           The SCF version is incompatible.
RETURN VALUES
       The 
scf_error() function returns 
SCF_ERROR_NONE if there have been no
       calls from 
libscf functions from the current thread. The return value
       is undefined if the immediately previous call to a 
libscf function
       did not fail.
ATTRIBUTES
       See 
attributes(7) for descriptions of the following attributes:
       +--------------------+-----------------+
       |  ATTRIBUTE TYPE    | ATTRIBUTE VALUE |
       +--------------------+-----------------+
       |Interface Stability | Committed       |
       +--------------------+-----------------+
       |MT-Level            | MT-Safe         |
       +--------------------+-----------------+
SEE ALSO
       libscf(3LIB), 
attributes(7), 
svc.configd(8)                              February 21, 2023              SCF_ERROR(3SCF)