Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
getprofattr(3SECDB)    Introduction to Library Functions   getprofattr(3SECDB)

       getprofattr,  getprofnam, free_profattr,	setprofattr, endprofattr, get-
       proflist, free_proflist - get profile description and attributes

       cc [ flag... ] file... -lsecdb  -lsocket	 -lnsl	-lintl [ library... ]
       #include	<prof.h>

       profattr_t *getprofattr(void);

       profattr_t *getprofnam(const char *name);

       void free_profattr(profattr_t *pd);

       void setprofattr(void);

       void endprofattr(void);

       void getproflist(const char *profname, char **proflist, int *profcnt);

       void free_proflist(char **proflist, int profcnt);

       The getprofattr() and getprofnam() functions each  return  a  prof_attr
       entry.  Entries	can come from any of the sources specified in the nss-
       witch.conf(4) file.

       The getprofattr() function enumerates prof_attr entries.	 The  getprof-
       nam()  function	searches for a prof_attr entry with a given name. Suc-
       cessive calls to	these functions	return either successive prof_attr en-
       tries or	NULL.

       The internal representation of a	prof_attr entry	is a profattr_t	struc-
       ture defined in	<prof_attr.h> with the following members:

       char  *name;   /* Name of the profile */
       char  *res1;   /* Reserved for future use */
       char  *res2;   /* Reserved for future use */
       char  *desc;   /* Description/Purpose of	the profile */
       kva_t *attr;   /* Profile attributes */

       The free_profattr() function releases memory allocated by  the  getpro-
       fattr() and getprofnam()	functions.

       The  setprofattr()  function "rewinds" to the beginning of the enumera-
       tion of prof_attr entries.  Calls to getprofnam() can leave the enumer-
       ation  in  an  indeterminate state. Therefore,  setprofattr() should be
       called before the first call to getprofattr().

       The endprofattr() function may be called	 to  indicate  that  prof_attr
       processing  is  complete;  the system may then close any	open prof_attr
       file, deallocate	storage, and so	forth.

       The getproflist() function searches for the list	of sub-profiles	 found
       in  the	given  profname	 and  allocates	 memory	 to store this list in
       proflist. The given profname will be included in	the list  of  sub-pro-
       files.  The  profcnt  argument  indicates the number of items currently
       valid in	proflist. Memory allocated by getproflist()  should  be	 freed
       using the free_proflist() function.

       The  free_proflist()  function  frees  memory  allocated	 by  the  get-
       proflist() function.  The profcnt  argument  specifies  the  number  of
       items to	free from the proflist argument.

       The getprofattr() function returns a pointer to a profattr_t if it suc-
       cessfully enumerates an entry; otherwise	it  returns  NULL,  indicating
       the end of the enumeration.

       The  getprofnam() function returns a pointer to a profattr_t if it suc-
       cessfully locates the requested entry; otherwise	it returns NULL.

       Individual attributes in	the prof_attr_t	structure can be  referred  to
       by calling the kva_match(3SECDB)	function.

       Because	the  list of legal keys	is likely to expand, any code  must be
       written to ignore unknown key-value pairs without error.

       The getprofattr() and getprofnam() functions both allocate  memory  for
       the  pointers  they  return. This memory	should be deallocated with the
       free_profattr() function.

       Applications that use the interfaces described in this manual page can-
       not be  linked statically, since	the implementations of these functions
       employ  dynamic loading and linking of  shared  objects	at  run	 time.
       Note  that  these  interfaces are reentrant even	though they do not use
       the _r suffix naming convention.

	     profiles and their	descriptions

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       |MT-Level		     |MT-Safe			   |

       auths(1),   profiles(1),	  getexecattr(3SECDB),	  getauthattr(3SECDB),

SunOS 5.9			  13 Mar 2000		   getprofattr(3SECDB)


Want to link to this manual page? Use this URL:

home | help