Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

genders_testattrval (3)

Name

genders_testattrval - 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(3)               LIBGENDERS               GENDERS_TESTATTR(3)



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  cre-
              ated 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_han-
              dle_destroy(3).

FILES
       /usr/include/genders.h


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | library/libgenders    |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+

SEE ALSO
       libgenders(3),  genders_handle_create(3),  genders_load_data(3),   gen-
       ders_getmaxvallen(3), genders_errnum(3), genders_strerror(3)



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source   was   downloaded   from   https://github.com/chaos/genders/ar-
       chive/refs/tags/genders-1-28-1.tar.gz.

       Further information about this software can be found on the open source
       community website at https://github.com/chaos/genders.



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | library/libgenders    |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+

NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source   was   downloaded   from   https://github.com/chaos/genders/ar-
       chive/refs/tags/genders-1-28-1.tar.gz.

       Further information about this software can be found on the open source
       community website at https://github.com/chaos/genders.



LLNL                              August 2003              GENDERS_TESTATTR(3)