*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> cfg_subsys_defaults_all (3)              
Title
Content
Arch
Section
 

cfg_subsys_defaults_all(3)

Contents


NAME    [Toc]    [Back]

       cfg_subsys_defaults_all  - determine the /etc/sysconfigtab
       value for all attributes of a subsystem

SYNOPSIS    [Toc]    [Back]

       #include <cfg.h>

       cfg_status_t cfg_subsys_defaults_all(
               cfg_handle_t *handle,
               caddr_t subsys,
               cfg_attr_t **attributes,
               int *nattributes );

LIBRARY    [Toc]    [Back]

       Configuration Management Library (libcfg.a)

PARAMETERS    [Toc]    [Back]

       Structure identifying the means of communications  between
       your  application and the configuration management server.
       For local requests,  pass  NULL  in  this  parameter.  For
       remote requests, pass the value returned from the cfg_connect()
 routine.  Specifies the name of the  subsystem  for
       which  you  are getting default attribute values.  Returns
       information about all attributes for the named  subsystem.
       The  information includes the attribute-specific status of
       the  query  operation  and  the  default  value   of   the
       attribute.  The  system  allocates  memory for this array,
       which you should free when the information in the array is
       no  longer needed.  Specifies the number of attributes for
       which information has been returned.

DESCRIPTION    [Toc]    [Back]

       Use the cfg_subsys_defaults_all() routine to get the value
       of  all  attributes  of  a  subsystem  as specified in the
       /etc/sysconfigtab  database.  For  information  about  the
       /etc/sysconfigtab database, see sysconfigtab(4).

       In the call to the cfg_subsys_defaults_all() routine, your
       application passes the name of the subsystem for which you
       want information.  The system reads the subsystem name and
       finds and collects the information about  its  attributes.
       That information is then returned to your application in a
       buffer allocated by the cfg_subsys_defaults_all() routine.
       (You  should free the allocated buffer space when it is no
       longer needed, as shown in the EXAMPLES section.)

       The    information    returned    from    the     cfg_subsys_defaults_all()
  routine  is  passed  in a structure of
       type  cfg_attr_t.   For  subsystems  with  more  than  one
       attribute, an array of structures is returned.  For information
 about this structure, see libcfg(3).

       The following list describes the information  returned  to
       your    application    when    it   calls   the   cfg_subsys_defaults_all()
 routine:  Attributes  can  be  integer,
       string,  or  binary data. However, the system is unable to
       determine the data  type  of  attributes  by  reading  the
       /etc/sysconfigtab database.  Therefore, this field returns
       the CFG_ATTR_STRTYPE data type for  all  attributes.   The
       definition  of  each  attribute in the subsystem attribute
       table determines what operations you can  perform  on  the
       attribute.   The   system  is  unable  to  determine  this
       information from the /etc/sysconfigtab database,  so  this
       field is NULL on return from the cfg_subsys_defaults_all()
       routine.    During   the   processing   of   a    cfg_subsys_defaults_all()
   routine,   the  system  assigns  each
       attribute a status. The following table describes the status
  values  your application might receive on return from
       this routine:

              ------------------------------------------------------------------------
              Status Code      Meaning
              ------------------------------------------------------------------------
              CFG_ATTR_SUC-    Successful operation
              CESS
              CFG_ATTR_EEX-    No attribute by that name exists
              ISTS
              CFG_ATTR_EOP     Attribute does not support the query operation
              CFG_ATTR_ESUB-   Subsystem  failure (code within the subsystem returned
              SYS              an error)
              CFG_ATTR_EIN-    The index for an indexed attribute is out of range
              DEX
              CFG_ATTR_EMEM    Unable  to  allocate  memory  to  return the attribute
                               value
              ------------------------------------------------------------------------
              The value of each attribute is returned in a structure,
  which  contains  a  string  representing the
              value of the attribute as  it  is  defined  in  the
              /etc/sysconfigtab  database.  If  an  attribute  is
              omitted   from   the   database,    the    cfg_subsys_defaults_all()
 routine returns a NULL attribute
              value.

              The cfg_subsys_defaults_all() routine returns  NULL
              for  other fields in the attribute value structure.

RETURN VALUES    [Toc]    [Back]

       Upon  successful   completion,   cfg_subsys_defaults_all()
       returns  CFG_SUCCESS. Other return values indicate that an
       error has occurred. For information about handling  return
       values  from  routines  in  the  configuration  management
       library, see libcfg(3).

EXAMPLES    [Toc]    [Back]

       The following example illustrates the use of the  cfg_subsys_defaults_all()
 library routine:

       cfg_attr_t                   *attributes;     cfg_status_t
       retval;      cfg_handle_t                 handle;      int
       nattributes; int                     i;

       /**********************************************************/
       /*      Call    the    cfg_subsys_defaults_all     routine
       */

       retval = cfg_subsys_defaults_all(&handle, "vfs",
                                        &attributes,        &nattributes);


       if (retval != CFG_SUCCESS)
           print_error (retval);

       else {
            /*    Use   data   returned    from    the    request
       */

            for (i=0; i<nattributes; i++) {
                printf ("%s", attributes[i].name);
                if (attributes[i].status != CFG_ATTR_SUCCESS) {
                    switch (attributes[i].status){
                    case CFG_ATTR_EMEM:
                      printf(
                        "Unable  to  allocate  memory  to  return
       attribute value\n");
                      break;
                    default:
                      printf("unknown error\n");
                      break;
                    }
                    continue;
                }
                  printf ("%s\n", attributes[i].attr.str.val);

            }
         /*  Free the memory allocated by the configuration  management
  */
         /*                                               library
       */
           free(attributes); }

       In this example, the application queries the values of all
       attributes of the vfs subsystem as they are defined in the
       /etc/sysconfigtab    database.    When    the     cfg_subsys_defaults_all()
 routine returns information about those
       attributes, the application tests the return status of the
       routine.  The  application reports any errors returned. If
       cfg_subsys_defaults_all() returns CFG_SUCCESS, the  status
       for  each attribute is tested and any errors are reported.
       The application displays the default value  of  attributes
       that return CFG_ATTR_SUCCESS.

SEE ALSO    [Toc]    [Back]

      
      
       Commands: cfgmgr(8), sysconfig(8)

       Routines:      cfg_connect(3),     cfg_subsys_defaults(3),
       libcfg(3)

       Files: sysconfigtab(4)



                                       cfg_subsys_defaults_all(3)
[ Back ]
 Similar pages
Name OS Title
cfg_subsys_defaults Tru64 determine the /etc/sysconfigtab value for selected attributes of a subsystem
cfg_subsys_query_all Tru64 determine the value of all attributes for a subsystem
cfg_subsys_query Tru64 determine the value of selected subsystem attributes
cfg_subsys_state Tru64 determine the state of the named subsystem
sys_attrs_isa Tru64 isa subsystem attributes
sys_attrs_xpr Tru64 xpr subsystem attributes
sys_attrs_vga Tru64 vga subsystem attributes
sys_attrs_bcm Tru64 bcm subsystem attributes
sys_attrs_isp Tru64 isp subsystem attributes
sys_attrs_bba Tru64 bba subsystem attributes
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service