Provided by: libgenders0-dev_1.22-1build8_amd64 bug

NAME

       genders_testattr - test if a node has an attribute

SYNOPSIS

       #include <genders.h>

       int genders_testattr(genders_t handle, const char *node, const char *attr, char *val, int len);

       int genders_testattrval(genders_t handle, const char *node, const char *attr, const char *val);

DESCRIPTION

       genders_testattr()  tests  if  the node pointed to by node contains the attribute pointed to by attr.  If
       node is NULL, the current node is tested.  If the attribute is found, its value is stored in  the  buffer
       pointed  to by val.  len should indicate the length of the buffer.  If the attribute value is not needed,
       val can be set to NULL.

       To avoid passing in an attribute value buffer that is not large enough  to  store  the  attribute  value,
       genders_getmaxvallen(3) should be used to determine the minimum buffer size that should be used.

       genders_testattrval()  tests if the node pointed to by node contains the attribute pointed to by attr and
       if that attribute is equal to the attribute value pointed to by val.  If val is NULL, only the  attribute
       is tested.

RETURN VALUES

       For  genders_testattr(),  if  the  node contains the attribute, 1 is returned.  0 is returned if the node
       does not contain the attribute.

       For genders_testattrval(), if the node contains the attribute and it is equal to the attribute  value,  1
       is  returned.  0 is returned if the node does not contain the attribute, or if the attribute is not equal
       to the attribute value.

       For both genders_testattr() and genders_testattrval(), -1 is returned on error,  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 buffer pointed to by val is not large enough to store the attribute value.

       GENDERS_ERR_PARAMETERS
              An incorrect parameter has been 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_getmaxvallen(3),
       genders_errnum(3), genders_strerror(3)