1 /* 2 * Copyright (c) 1989, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)ucred.h 8.1 (Berkeley) 06/02/93 8 */ 9 10 #ifndef _UCRED_H_ 11 #define _UCRED_H_ 12 13 /* 14 * Credentials. 15 */ 16 struct ucred { 17 u_short cr_ref; /* reference count */ 18 uid_t cr_uid; /* effective user id */ 19 short cr_ngroups; /* number of groups */ 20 gid_t cr_groups[NGROUPS]; /* groups */ 21 }; 22 #define cr_gid cr_groups[0] 23 #define NOCRED ((struct ucred *)-1) /* no credential available */ 24 #define FSCRED ((struct ucred *)-2) /* filesystem credential */ 25 26 #ifdef KERNEL 27 #define crhold(cr) (cr)->cr_ref++ 28 struct ucred *crget(); 29 struct ucred *crcopy(); 30 struct ucred *crdup(); 31 #endif /* KERNEL */ 32 33 #endif /* !_UCRED_H_ */ 34