xref: /freebsd/share/man/man9/uidinfo.9 (revision f16b3c0de48d0b845357e7cca843f645bc3117e3)
1.\"
2.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice(s), this list of conditions and the following disclaimer as
9.\"    the first lines of this file unmodified other than the possible
10.\"    addition of one or more copyright notices.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice(s), this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY
16.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18.\" DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
19.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
25.\" DAMAGE.
26.\"
27.\" $FreeBSD$
28.\"
29.Dd July 10, 2001
30.Dt UIDINFO 9
31.Os
32.Sh NAME
33.Nm uidinfo ,
34.Nm uihashinit ,
35.Nm uifind ,
36.Nm uihold ,
37.Nm uifree
38.Nd "functions for managing UID information"
39.Sh SYNOPSIS
40.In sys/param.h
41.In sys/proc.h
42.In sys/resourcevar.h
43.Ft void
44.Fn uihashinit void
45.Ft "struct uidinfo *"
46.Fn uifind "uid_t uid"
47.Ft void
48.Fn uihold "struct uidinfo *uip"
49.Ft void
50.Fn uifree "struct uidinfo *uip"
51.Sh DESCRIPTION
52The
53.Nm
54family of functions
55is used to manage
56.Vt uidinfo
57structures.
58The
59.Vt uidinfo
60structure maintains the process count and socket buffer space usage
61for a given UID.
62.Pp
63The
64.Fn uihashinit
65function initializes the
66.Vt uidinfo
67hash table.
68This function should only be called during system initialization.
69.Pp
70The
71.Fn uifind
72function looks up and returns the
73.Vt uidinfo
74structure for the
75.Fa uid .
76If the
77.Vt uidinfo
78is not found, a new structure is allocated.
79.Pp
80The
81.Fn uihold
82function increases the reference count on the
83.Vt uidinfo
84structure.
85.Pp
86The
87.Fn uifree
88function decreases the reference count on the
89.Vt uidinfo
90structure.
91If the count reaches 0, the storage for the structure is freed.
92.Sh RETURN VALUES
93The functions that return values all return a pointer to a
94.Vt uidinfo
95structure.
96.Sh AUTHORS
97This man page was written by
98.An Chad David Aq davidc@acns.ab.ca .
99