Content-type: text/html Man page of getsvc

getsvc

Section: C Library Functions (3)
Index Return to Main Contents
 

NAME

getsvc - Gets a pointer to the svcinfo structure.  

SYNOPSIS

#include <sys/svcinfo.h>

struct svcinfo *getsvc()  

DESCRIPTION

The getsvc call retrieves information from the system about the svcinfo structure by returning a pointer to the structure. This structure is initialized the first time a getsvc call is made. The contents of the /etc/svc.conf file are parsed and stored in the svcinfo structure. If the /etc/svc.conf file is modified, the contents of this structure will be updated upon the next getsvc call.

The /etc/svc.conf file contains the names of the databases that can be served by BIND or local files and the name service selection for each database. It also has settings for four security parameters. The database service selection and security parameters are stored in the svcinfo structure.

The following structure exists in the <svcinfo.h> file: #define SVC_DATABASES 20 #define SVC_PATHSIZE 8 struct svcinfo {
    int svcdate;       /* Last mod date of /etc/svc.conf */


    int svcpath[SVC_DATABASES][SVC_PATHSIZE];    /* indexed by
                          databases and choice 0=first choice          1=second choice, etc value stored is
                         source */


       struct {
           int passlenmin;
           int passlenmax;
           int softexp;
           int seclevel;
       } svcauth; };

The svcdate field contains the date that the /etc/svc.conf file was last modified. The svcpath array contains the name service choices for each database. The svcauth structure contains the values for the four security parameters: password length minimum (passlenmin), password length maximum (passlenmax), soft expiration date of a password (softexp), and security mode of a system (seclevel).  

EXAMPLES

The following programming example shows how to use the getsvc call to use the information in the svcinfo structure to process specific host information. #include <sys/svcinfo.h> struct svcinfo *svcinfo;

if ((svcinfo = getsvc()) != NULL)
  for (i=0; (j = svcinfo->svcpath[SVC_HOSTS][i]) != SVC_LAST; i++)          switch(j) {
         case SVC_BIND:
         /* process BIND hosts */
         case SVC_YP:
         /* process YP hosts */
         case SVC_LOCAL:
                 /* process LOCAL hosts */
         }
 

FILES

 

RELATED INFORMATION

svc.conf(4), svcsetup(8) delim off


 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLES
FILES
RELATED INFORMATION

This document was created by man2html, using the manual pages.
Time: 02:42:15 GMT, October 02, 2010