Pool Configuration Manipulation Library Functions
pool_value_alloc(3POOL)
NAME
pool_value_alloc, pool_value_free, pool_value_get_bool,
pool_value_get_double, pool_value_get_int64,
pool_value_get_name, pool_value_get_string,
pool_value_get_type, pool_value_get_uint64,
pool_value_set_bool, pool_value_set_double,
pool_value_set_int64, pool_value_set_name,
pool_value_set_string, pool_value_set_uint64 - resource pool
property value manipulation functionsSYNOPSIS
cc [ flag... ] file... -lpool [ library... ]
#include
pool_value_t *pool_value_alloc(void);
void pool_value_free(pool_value_t *value);
pool_value_class_t pool_value_get_type(
const pool_value_t *value);
int pool_value_get_bool(const pool_value_t *value,
uchar_t *bool);
int pool_value_get_double(const pool_value_t *value,
double *d);int pool_value_get_int64(const pool_value_t *value,
int64_t *i64);
int pool_value_get_string(const pool_value_t *value,
const char **strp);int pool_value_get_uint64(const pool_value_t *value,
uint64_t *ui64);
void pool_value_set_bool(const pool_value_t *value,
uchar_t bool);
void pool_value_set_double(const pool_value_t *value,
double d);SunOS 5.11 Last change: 23 Sep 2003 1
Pool Configuration Manipulation Library Functionspool_value_alloc(3POOL)
void pool_value_set_int64(const pool_value_t *value,
int64_t i64);
int pool_value_set_string(const pool_value_t *value,
const char *strp);void pool_value_set_uint64(const pool_value_t *value,
uint64_t ui64);
const char *pool_value_get_name(const pool_value_t *value);
int pool_value_set_name(const pool_value_t *value,
const char *name);DESCRIPTION
A pool_value_t is an opaque type representing the typed
value portion of a pool property. For a list of the typessupported by a pool_value_t, see pool_get_property(3POOL).
The pool_value_alloc() function allocates and returns an
opaque container for a pool property value. Thepool_value_free() function must be called explicitly for
allocated property values.The pool_value_get_bool(), pool_value_get_double(),
pool_value_get_int64(), pool_value_get_string(), and
pool_value_get_uint64() functions retrieve the value con-
tained in the pool_value_t pointed to by value to the loca-
tion pointed to by the second argument. If the type of the value does not match that expected by the function, an error value is returned. The string retrieved bypool_value_get_string() is freed by the library when the
value is overwritten or pool_value_free() is called on the
pool property value.The pool_value_get_type() function returns the type of the
data contained by a pool_value_t. If the value is unused
then a type of POC_INVAL is returned.
The pool_value_set_bool(), pool_value_set_double(),
pool_value_set_int64(), pool_value_set_string(), and
pool_value_set_uint64() functions set the value and type of
SunOS 5.11 Last change: 23 Sep 2003 2
Pool Configuration Manipulation Library Functionspool_value_alloc(3POOL)
the property value to the provided values. Thepool_value_set_string() function copies the string passed in
and returns -1 if the memory allocation fails.
Property values can optionally have names. These names areused to describe properties as name=value pairs in the vari-
ous query functions (see pool_query_resources(3POOL)). A
copy of the string passed to pool_value_set_name() is made
by the library, and the value returned bypool_value_get_name() is freed when the pool_value_t is
deallocated or overwritten.RETURN VALUES
Upon successful completion, pool_value_alloc() returns a
pool property value with type initialized to PVC_INVAL. Oth-
erwise, NULL is returned and pool_error() returns the pool-
specific error value.Upon successful completion, pool_value_get_type() returns
the type contained in the property value passed in as anargument. Otherwise, POC_INVAL is returned and pool_error()
returns the pool-specific error value.
Upon successful completion, pool_value_get_bool(),
pool_value_get_double(), pool_value_get_int64(),
pool_value_get_string(), and pool_value_get_uint64() return
0. Otherwise -1 is returned and pool_error(3POOL) returns
the pool-specific error value.
Upon successful completion, pool_value_set_string() and
pool_value_set_name() return 0. If the memory allocation
failed, -1 is returned and pool_error() returns the pool-
specific error value.ERRORS
The pool_value_alloc() function will fail if:
POE_SYSTEM A system error has occurred. Check the system
error code for more details.The pool_value_get_bool(), pool_value_get_double(),
pool_value_get_int64(), pool_value_get_string(), and
pool_value_get_uint64() functions will fail if:
SunOS 5.11 Last change: 23 Sep 2003 3
Pool Configuration Manipulation Library Functionspool_value_alloc(3POOL)
POE_BADPARAM The supplied value does not match the type
of the requested operation.The pool_value_set_string() function will fail if:
POE_SYSTEM A system error has occurred. Check the system
error code for more details.The pool_value_set_name() function will fail if:
POE_SYSTEM A system error has occurred. Check the system
error code for more details.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| CSI | Enabled ||_____________________________|_____________________________|
| Interface Stability | Uncommitted ||_____________________________|_____________________________|
| MT-Level | Safe |
|_____________________________|_____________________________|
SEE ALSO
libpool(3LIB), pool_error(3POOL), attributes(5)
SunOS 5.11 Last change: 23 Sep 2003 4
Pool Configuration Manipulation Library Functionspool_value_alloc(3POOL)
SunOS 5.11 Last change: 23 Sep 2003 5