diff options
Diffstat (limited to 'freebsd/sys/sys/ucred.h')
-rw-r--r-- | freebsd/sys/sys/ucred.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/freebsd/sys/sys/ucred.h b/freebsd/sys/sys/ucred.h index 82e4d9a4..ae3fcdeb 100644 --- a/freebsd/sys/sys/ucred.h +++ b/freebsd/sys/sys/ucred.h @@ -37,6 +37,8 @@ struct loginclass; +#define XU_NGROUPS 16 + /* * Credentials. * @@ -65,6 +67,7 @@ struct ucred { struct auditinfo_addr cr_audit; /* Audit properties. */ gid_t *cr_groups; /* groups */ int cr_agroups; /* Available groups */ + gid_t cr_smallgroups[XU_NGROUPS]; /* storage for small groups */ }; #else /* __rtems__ */ struct ucred; @@ -73,8 +76,6 @@ struct ucred; #define FSCRED ((struct ucred *)-1) /* filesystem credential */ #endif /* _KERNEL || _WANT_UCRED */ -#define XU_NGROUPS 16 - /* * Flags for cr_flags. */ @@ -111,11 +112,12 @@ void change_svuid(struct ucred *newcred, uid_t svuid); void crcopy(struct ucred *dest, struct ucred *src); struct ucred *crcopysafe(struct proc *p, struct ucred *cr); struct ucred *crdup(struct ucred *cr); -void cred_update_thread(struct thread *td); +void crextend(struct ucred *cr, int n); +void proc_set_cred_init(struct proc *p, struct ucred *cr); +struct ucred *proc_set_cred(struct proc *p, struct ucred *cr); void crfree(struct ucred *cr); struct ucred *crget(void); struct ucred *crhold(struct ucred *cr); -int crshared(struct ucred *cr); void cru2x(struct ucred *cr, struct xucred *xcr); void crsetgroups(struct ucred *cr, int n, gid_t *groups); int groupmember(gid_t gid, struct ucred *cred); |