POOL_ERROR(3POOL) Pool Configuration Manipulation Library Functions POOL_ERROR(3POOL)

pool_error, pool_strerror - error interface to resource pools library

cc [ flag... ] file... -lpool [ library... ]
#include <pool.h>
int pool_error(void);

const char *pool_strerror(int perr);

The pool_error() function returns the error value of the last failure recorded by the invocation of one of the functions of the resource pool configuration library, libpool.

The pool_strerror() function returns a descriptive null-terminated string for each of the valid pool error codes.

The following error codes can be returned by pool_error():

The pool_error() function returns the current pool error value for the calling thread from among the following:

POE_ACCESS

The operation could not be performed because the configuration was not opened with the correct opening permissions.

POE_BADPARAM

A bad parameter was supplied.

POE_BAD_PROP_TYPE

An incorrect property type was submitted or encountered during the pool operation.

POE_DATASTORE

An error occurred within permanent storage.

POE_INVALID_CONF

The pool configuration presented for the operation is invalid.

POE_INVALID_SEARCH

A query whose outcome set was empty was attempted.

POE_NOTSUP

An unsupported operation was attempted.

POE_PUTPROP

An attempt to write a read-only property was made.

POE_OK

The previous pool operation succeeded.

POE_SYSTEM

An underlying system call or library function failed; errno(3C) is preserved where possible.

The pool_strerror() function returns a pointer to the string corresponding to the requested error value. If the error value has no corresponding string, −1 is returned and errno is set to indicate the error.

The pool_strerror() function will fail if:

ESRCH

The specified error value is not defined by the pools error facility.

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
CSI Enabled
Interface Stability Unstable
MT-Level Safe

errno(3C), libpool(3LIB), attributes(7)

May 23, 2021 OmniOS