Provided by: freebsd-manpages_10.1~RC1-1_all bug

NAME

     uidinfo, uihashinit, uifind, uihold, uifree — functions for managing UID information

SYNOPSIS

     #include <sys/param.h>
     #include <sys/proc.h>
     #include <sys/resourcevar.h>

     void
     uihashinit(void);

     struct uidinfo *
     uifind(uid_t uid);

     void
     uihold(struct uidinfo *uip);

     void
     uifree(struct uidinfo *uip);

DESCRIPTION

     The uidinfo family of functions is used to manage uidinfo structures.  Each uidinfo
     structure maintains per uid resource consumption counts, including the process count and
     socket buffer space usage.

     The uihashinit() function initializes the uidinfo hash table and its mutex.  This function
     should only be called during system initialization.

     The uifind() function looks up and returns the uidinfo structure for uid.  If no uidinfo
     structure exists for uid, a new structure will be allocated and initialized.  The uidinfo
     hash mutex is acquired and released.

     The uihold() function increases the reference count on uip.  uip's lock is acquired and
     released.

     The uifree() function decreases the reference count on uip, and if the count reaches 0 uip
     is freed.  uip's lock is acquired and release and the uidinfo hash mutex may be acquired and
     released.

RETURN VALUES

     uifind() returns a pointer to an initialized uidinfo structure, and should not fail.

AUTHORS

     This manual page was written by Chad David <davidc@acns.ab.ca>.