NAME¶
genders_getattr - get attributes from a genders file
SYNOPSIS¶
#include <genders.h>
int genders_getattr(genders_t handle, char *attrs[], char *vals[], int len,
const char *node);
DESCRIPTION¶
genders_getattr() gets the attributes and values for the node pointed to
by
node. If
node is NULL, attributes and values are retrieved
for the current node. The attributes are stored in the attribute list pointed
to by
attrs and the attribute values are stored in
vals. If
attribute values are not desired,
vals can be set to NULL.
len
should indicate the number of elements that can be stored in both the
attribute list and attribute values list.
To avoid passing in a list that is not large enough to store all the attributes
and attribute values,
genders_getmaxattrs(3) should be used to
determine the minimum number of elements
attrs and
vals should
be able to store.
genders_attrlist_create(3) and
genders_vallist_create(3) could be used to create lists that are
guaranteed to be large enough to store all attributes and attribute values.
RETURN VALUES¶
On success, the number of attributes stored in
attrs is returned. On
error, -1 is returned, and an error code is returned in
handle. The
error code can be retrieved via
genders_errnum(3) , and a description
of the error code can be retrieved via
genders_strerror(3). Error codes
are defined in genders.h.
ERRORS¶
- GENDERS_ERR_NULLHANDLE
- The handle parameter is NULL. The genders handle
must be created with genders_handle_create(3).
- GENDERS_ERR_NOTLOADED
- genders_load_data(3) has not been called to load
genders data.
- GENDERS_ERR_OVERFLOW
- The list pointed to by attrs or vals is not
large enough to store all the attributes or attribute values.
- GENDERS_ERR_PARAMETERS
- An incorrect parameter has been passed in.
- GENDERS_ERR_NULLPTR
- A null pointer has been found in the list passed in.
- GENDERS_ERR_NOTFOUND
- The node pointed to by node cannot be found in the
genders file or if node=NULL, the machine genders is running on is
not listed in the genders database.
- GENDERS_ERR_MAGIC
- handle has an incorrect magic number. handle
does not point to a genders handle or handle has been destroyed by
genders_handle_destroy(3).
FILES¶
/usr/include/genders.h
SEE ALSO¶
libgenders(3),
genders_handle_create(3),
genders_load_data(3),
genders_getmaxattrs(3),
genders_attrlist_create(3),
genders_vallist_create(3),
genders_errnum(3),
genders_strerror(3)