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