pool_value_alloc(3pool) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

pool_value_alloc(3pool)

po...oc(3POOL) Pool Configuration Manipulation Library Functionspo...oc(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 - re‐
       source pool property value manipulation functions

SYNOPSIS
       cc [ flag... ] file... -lpool [ library... ]
       #include <pool.h>

       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);


       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  types  supported  by   a
       pool_value_t, see pool_get_property(3POOL).


       The  pool_value_alloc()  function  allocates and returns an opaque con‐
       tainer for a pool property value. The pool_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 contained in the
       pool_value_t pointed to by value to the location pointed to by the sec‐
       ond argument. If the type of the value does not match that expected  by
       the  function,  an  error  value  is  returned. The string retrieved by
       pool_value_get_string() is freed by the library when the value is over‐
       written or pool_value_free() is called on the pool property value.


       The pool_value_get_type() function returns the type of  the  data  con‐
       tained by a pool_value_t. If the value is unused then a type of POC_IN‐
       VAL 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 the prop‐
       erty value to the provided values. The pool_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 are used to de‐
       scribe properties as name=value pairs in the  various  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 by
       pool_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. Otherwise, NULL  is  returned
       and pool_error() returns the pool-specific error value.


       Upon successful completion, pool_value_get_type() returns the type con‐
       tained  in  the  property  value  passed  in as an argument. Otherwise,
       POC_INVAL is returned and pool_error() returns the pool-specific  error
       value.


       Upon  successful completion, pool_value_get_bool(), pool_value_get_dou‐
       ble(),     pool_value_get_int64(),     pool_value_get_string(),     and
       pool_value_get_uint64() return 0. Otherwise -1 is returned and pool_er‐
       ror(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:

       POE_BADPARAM    The supplied value does not match the type of  the  re‐
                       quested 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(7) for descriptions of the following attributes:

       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ CSIEnabled _ Interface StabilityUncommitted _ MT-Level‐
       Safe


SEE ALSO
       libpool(3LIB), pool_error(3POOL), attributes(7)

Oracle Solaris 11.4               23 Sep 2003                   po...oc(3POOL)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3