Man Linux: Main Page and Category List

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)