|
FreeBSD kernel kern code
|
#include <sys/cdefs.h>#include <sys/param.h>#include <sys/systm.h>#include <sys/mount.h>#include <sys/priv.h>#include <sys/vnode.h>#include <sys/errno.h>#include <sys/stat.h>#include <sys/sysctl.h>#include <sys/acl.h>
Go to the source code of this file.
Functions | |
| __FBSDID ("$BSDSUniX$") | |
| static void | acl_nfs4_trivial_from_mode (struct acl *aclp, mode_t mode) |
| SYSCTL_INT (_vfs, OID_AUTO, acl_nfs4_old_semantics, CTLFLAG_RW,&acl_nfs4_old_semantics, 0,"Use pre-PSARC/2010/029 NFSv4 ACL semantics") | |
| static int | _access_mask_from_accmode (accmode_t accmode) |
| static int | _acl_denies (const struct acl *aclp, int access_mask, struct ucred *cred, int file_uid, int file_gid, int *denied_explicitly) |
| int | vaccess_acl_nfs4 (enum vtype type, uid_t file_uid, gid_t file_gid, struct acl *aclp, accmode_t accmode, struct ucred *cred, int *privused) |
| static int | _acl_entry_matches (struct acl_entry *entry, acl_tag_t tag, acl_perm_t perm, acl_entry_type_t entry_type) |
| static struct acl_entry * | _acl_append (struct acl *aclp, acl_tag_t tag, acl_perm_t perm, acl_entry_type_t entry_type) |
| static struct acl_entry * | _acl_duplicate_entry (struct acl *aclp, int entry_index) |
| static void | acl_nfs4_sync_acl_from_mode_draft (struct acl *aclp, mode_t mode, int file_owner_id) |
| void | acl_nfs4_sync_acl_from_mode (struct acl *aclp, mode_t mode, int file_owner_id) |
| void | acl_nfs4_sync_mode_from_acl (mode_t *_mode, const struct acl *aclp) |
| static void | acl_nfs4_compute_inherited_acl_draft (const struct acl *parent_aclp, struct acl *child_aclp, mode_t mode, int file_owner_id, int is_directory) |
| static void | acl_nfs4_inherit_entries (const struct acl *parent_aclp, struct acl *child_aclp, mode_t mode, int file_owner_id, int is_directory) |
| static void | acl_nfs4_compute_inherited_acl_psarc (const struct acl *parent_aclp, struct acl *aclp, mode_t mode, int file_owner_id, int is_directory) |
| void | acl_nfs4_compute_inherited_acl (const struct acl *parent_aclp, struct acl *child_aclp, mode_t mode, int file_owner_id, int is_directory) |
| static int | _acls_are_equal (const struct acl *a, const struct acl *b) |
| int | acl_nfs4_is_trivial (const struct acl *aclp, int file_owner_id) |
| int | acl_nfs4_check (const struct acl *aclp, int is_directory) |
Variables | |
| static int | acl_nfs4_old_semantics = 0 |
| struct { | |
| accmode_t accmode | |
| int mask | |
| } | accmode2mask [] |
| __FBSDID | ( | "$BSDSUniX$" | ) |
|
static |
Definition at line 85 of file subr_acl_nfs4.c.
References accmode2mask.
Referenced by vaccess_acl_nfs4().

|
static |
Definition at line 327 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_compute_inherited_acl_psarc(), and acl_nfs4_sync_acl_from_mode_draft().

|
static |
Definition at line 108 of file subr_acl_nfs4.c.
References groupmember().
Referenced by vaccess_acl_nfs4().


|
static |
Definition at line 348 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_compute_inherited_acl_draft(), and acl_nfs4_sync_acl_from_mode_draft().

|
static |
Definition at line 305 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_sync_acl_from_mode_draft().

|
static |
Definition at line 1237 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_is_trivial().

| int acl_nfs4_check | ( | const struct acl * | aclp, |
| int | is_directory | ||
| ) |
Definition at line 1307 of file subr_acl_nfs4.c.
| void acl_nfs4_compute_inherited_acl | ( | const struct acl * | parent_aclp, |
| struct acl * | child_aclp, | ||
| mode_t | mode, | ||
| int | file_owner_id, | ||
| int | is_directory | ||
| ) |
Definition at line 1190 of file subr_acl_nfs4.c.
References acl_nfs4_compute_inherited_acl_draft(), acl_nfs4_compute_inherited_acl_psarc(), and acl_nfs4_old_semantics.

|
static |
Definition at line 849 of file subr_acl_nfs4.c.
References _acl_duplicate_entry(), and acl_nfs4_sync_acl_from_mode().
Referenced by acl_nfs4_compute_inherited_acl().


|
static |
Definition at line 1131 of file subr_acl_nfs4.c.
References _acl_append(), and acl_nfs4_inherit_entries().
Referenced by acl_nfs4_compute_inherited_acl(), and acl_nfs4_trivial_from_mode().


|
static |
Definition at line 1012 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_compute_inherited_acl_psarc().

| int acl_nfs4_is_trivial | ( | const struct acl * | aclp, |
| int | file_owner_id | ||
| ) |
Definition at line 1265 of file subr_acl_nfs4.c.
References _acls_are_equal(), acl_alloc(), acl_free(), acl_nfs4_sync_acl_from_mode_draft(), acl_nfs4_sync_mode_from_acl(), and acl_nfs4_trivial_from_mode().

| void acl_nfs4_sync_acl_from_mode | ( | struct acl * | aclp, |
| mode_t | mode, | ||
| int | file_owner_id | ||
| ) |
Definition at line 710 of file subr_acl_nfs4.c.
References acl_nfs4_old_semantics, acl_nfs4_sync_acl_from_mode_draft(), and acl_nfs4_trivial_from_mode().
Referenced by acl_nfs4_compute_inherited_acl_draft().


|
static |
Definition at line 364 of file subr_acl_nfs4.c.
References _acl_append(), _acl_duplicate_entry(), and _acl_entry_matches().
Referenced by acl_nfs4_is_trivial(), and acl_nfs4_sync_acl_from_mode().


| void acl_nfs4_sync_mode_from_acl | ( | mode_t * | _mode, |
| const struct acl * | aclp | ||
| ) |
Definition at line 722 of file subr_acl_nfs4.c.
References mode.
Referenced by acl_nfs4_is_trivial(), and vaccess_acl_nfs4().

|
static |
Definition at line 1211 of file subr_acl_nfs4.c.
References acl_nfs4_compute_inherited_acl_psarc().
Referenced by acl_nfs4_is_trivial(), and acl_nfs4_sync_acl_from_mode().


| SYSCTL_INT | ( | _vfs | , |
| OID_AUTO | , | ||
| acl_nfs4_old_semantics | , | ||
| CTLFLAG_RW | , | ||
| & | acl_nfs4_old_semantics, | ||
| 0 | , | ||
| "Use pre-PSARC/2010/029 NFSv4 ACL semantics" | |||
| ) |
| int vaccess_acl_nfs4 | ( | enum vtype | type, |
| uid_t | file_uid, | ||
| gid_t | file_gid, | ||
| struct acl * | aclp, | ||
| accmode_t | accmode, | ||
| struct ucred * | cred, | ||
| int * | privused | ||
| ) |
Definition at line 170 of file subr_acl_nfs4.c.
References _access_mask_from_accmode(), _acl_denies(), accmode, acl_nfs4_sync_mode_from_acl(), and priv_check_cred().

| accmode_t accmode |
Definition at line 66 of file subr_acl_nfs4.c.
Referenced by kern_kmq_open(), shm_access(), sys_fhopen(), vaccess(), vaccess_acl_nfs4(), vaccess_acl_posix1e(), vn_access(), vn_open_cred(), and vop_stdaccessx().
| struct { ... } accmode2mask[] |
Referenced by _access_mask_from_accmode().
|
static |
Definition at line 60 of file subr_acl_nfs4.c.
Referenced by acl_nfs4_compute_inherited_acl(), and acl_nfs4_sync_acl_from_mode().
| int mask |
Definition at line 67 of file subr_acl_nfs4.c.
Referenced by blst_leaf_alloc(), blst_leaf_fill(), blst_leaf_free(), cpuset_init(), fd_first_free(), fd_last_used(), intr_event_bind(), intr_getaffinity(), intr_setaffinity(), postsig_done(), runq_findbit_from(), sys_sigsuspend(), and vfs_bio_clrbuf().