xref: /original-bsd/sys/sys/ucred.h (revision 8431ec24)
1 /*
2  * Copyright (c) 1989 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms are permitted
6  * provided that the above copyright notice and this paragraph are
7  * duplicated in all such forms and that any documentation,
8  * advertising materials, and other materials related to such
9  * distribution and use acknowledge that the software was developed
10  * by the University of California, Berkeley.  The name of the
11  * University may not be used to endorse or promote products derived
12  * from this software without specific prior written permission.
13  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16  *
17  *	@(#)ucred.h	7.3 (Berkeley) 08/26/89
18  */
19 
20 #ifndef _UCRED_
21 #define	_UCRED_
22 
23 /*
24  * Credentials.
25  */
26 struct ucred {
27 	u_short	cr_ref;			/* reference count */
28 	uid_t	cr_uid;			/* effective user id */
29 	short	cr_ngroups;		/* number of groups */
30 	gid_t	cr_groups[NGROUPS];	/* groups */
31 };
32 #define cr_gid cr_groups[0]
33 #define NOCRED ((struct ucred *)-1)
34 
35 #ifdef KERNEL
36 #define	crhold(cr)	(cr)->cr_ref++
37 struct ucred *crget();
38 struct ucred *crcopy();
39 struct ucred *crdup();
40 #endif KERNEL
41 #endif _UCRED_
42