diff options
Diffstat (limited to 'sys/miscfs')
-rw-r--r-- | sys/miscfs/devfs/devfs_vfsops.c | 1 | ||||
-rw-r--r-- | sys/miscfs/fdesc/fdesc_vfsops.c | 1 | ||||
-rw-r--r-- | sys/miscfs/kernfs/kernfs_vfsops.c | 1 | ||||
-rw-r--r-- | sys/miscfs/nullfs/null_vfsops.c | 26 | ||||
-rw-r--r-- | sys/miscfs/portal/portal_vfsops.c | 1 | ||||
-rw-r--r-- | sys/miscfs/procfs/procfs_vfsops.c | 1 | ||||
-rw-r--r-- | sys/miscfs/umapfs/umap_vfsops.c | 23 | ||||
-rw-r--r-- | sys/miscfs/union/union_vfsops.c | 3 |
8 files changed, 42 insertions, 15 deletions
diff --git a/sys/miscfs/devfs/devfs_vfsops.c b/sys/miscfs/devfs/devfs_vfsops.c index b6be038..264f049 100644 --- a/sys/miscfs/devfs/devfs_vfsops.c +++ b/sys/miscfs/devfs/devfs_vfsops.c @@ -303,6 +303,7 @@ static struct vfsops devfs_vfsops = { devfs_sync, vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, devfs_init }; diff --git a/sys/miscfs/fdesc/fdesc_vfsops.c b/sys/miscfs/fdesc/fdesc_vfsops.c index 97231a4..a451c18 100644 --- a/sys/miscfs/fdesc/fdesc_vfsops.c +++ b/sys/miscfs/fdesc/fdesc_vfsops.c @@ -224,6 +224,7 @@ static struct vfsops fdesc_vfsops = { vfs_stdsync, vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, fdesc_init, }; diff --git a/sys/miscfs/kernfs/kernfs_vfsops.c b/sys/miscfs/kernfs/kernfs_vfsops.c index 0f21035..a08e9d4 100644 --- a/sys/miscfs/kernfs/kernfs_vfsops.c +++ b/sys/miscfs/kernfs/kernfs_vfsops.c @@ -252,6 +252,7 @@ static struct vfsops kernfs_vfsops = { vfs_stdsync, vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, vfs_stdinit, }; diff --git a/sys/miscfs/nullfs/null_vfsops.c b/sys/miscfs/nullfs/null_vfsops.c index 730eb80..06e1be0 100644 --- a/sys/miscfs/nullfs/null_vfsops.c +++ b/sys/miscfs/nullfs/null_vfsops.c @@ -57,8 +57,9 @@ static MALLOC_DEFINE(M_NULLFSMNT, "NULLFS mount", "NULLFS mount structure"); static int nullfs_fhtovp __P((struct mount *mp, struct fid *fidp, - struct sockaddr *nam, struct vnode **vpp, - int *exflagsp, struct ucred **credanonp)); + struct vnode **vpp)); +static int nullfs_checkexp __P((struct mount *mp, struct sockaddr *nam, + int *extflagsp, struct ucred **credanonp)); static int nullfs_mount __P((struct mount *mp, char *path, caddr_t data, struct nameidata *ndp, struct proc *p)); static int nullfs_quotactl __P((struct mount *mp, int cmd, uid_t uid, @@ -385,17 +386,25 @@ nullfs_vget(mp, ino, vpp) } static int -nullfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp) +nullfs_fhtovp(mp, fidp, vpp) struct mount *mp; struct fid *fidp; - struct sockaddr *nam; struct vnode **vpp; - int *exflagsp; - struct ucred**credanonp; { - return VFS_FHTOVP(MOUNTTONULLMOUNT(mp)->nullm_vfs, fidp, nam, - vpp, exflagsp, credanonp); + return VFS_FHTOVP(MOUNTTONULLMOUNT(mp)->nullm_vfs, fidp, vpp); +} + +static int +nullfs_checkexp(mp, nam, extflagsp, credanonp) + struct mount *mp; + struct sockaddr *nam; + int *extflagsp; + struct ucred **credanonp; +{ + + return VFS_CHECKEXP(MOUNTTONULLMOUNT(mp)->nullm_vfs, nam, + extflagsp, credanonp); } static int @@ -416,6 +425,7 @@ static struct vfsops null_vfsops = { nullfs_sync, nullfs_vget, nullfs_fhtovp, + nullfs_checkexp, nullfs_vptofh, nullfs_init, }; diff --git a/sys/miscfs/portal/portal_vfsops.c b/sys/miscfs/portal/portal_vfsops.c index bdb172b..d750b53 100644 --- a/sys/miscfs/portal/portal_vfsops.c +++ b/sys/miscfs/portal/portal_vfsops.c @@ -253,6 +253,7 @@ static struct vfsops portal_vfsops = { vfs_stdsync, vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, vfs_stdinit, }; diff --git a/sys/miscfs/procfs/procfs_vfsops.c b/sys/miscfs/procfs/procfs_vfsops.c index 92245b8..9f51a3c 100644 --- a/sys/miscfs/procfs/procfs_vfsops.c +++ b/sys/miscfs/procfs/procfs_vfsops.c @@ -170,6 +170,7 @@ static struct vfsops procfs_vfsops = { vfs_stdsync, vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, vfs_stdinit, }; diff --git a/sys/miscfs/umapfs/umap_vfsops.c b/sys/miscfs/umapfs/umap_vfsops.c index 005862a..afa44f0 100644 --- a/sys/miscfs/umapfs/umap_vfsops.c +++ b/sys/miscfs/umapfs/umap_vfsops.c @@ -56,8 +56,9 @@ static MALLOC_DEFINE(M_UMAPFSMNT, "UMAP mount", "UMAP mount structure"); static int umapfs_fhtovp __P((struct mount *mp, struct fid *fidp, - struct sockaddr *nam, struct vnode **vpp, - int *exflagsp, struct ucred **credanonp)); + struct vnode **vpp)); +static int umapfs_checkexp __P((struct mount *mp, struct sockaddr *nam, + int *extflagsp, struct ucred **credanonp)); static int umapfs_mount __P((struct mount *mp, char *path, caddr_t data, struct nameidata *ndp, struct proc *p)); static int umapfs_quotactl __P((struct mount *mp, int cmd, uid_t uid, @@ -398,16 +399,25 @@ umapfs_vget(mp, ino, vpp) } static int -umapfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp) +umapfs_fhtovp(mp, fidp, vpp) struct mount *mp; struct fid *fidp; - struct sockaddr *nam; struct vnode **vpp; +{ + + return (VFS_FHTOVP(MOUNTTOUMAPMOUNT(mp)->umapm_vfs, fidp, vpp)); +} + +static int +umapfs_checkexp(mp, nam, exflagsp, credanonp) + struct mount *mp; + struct sockaddr *nam; int *exflagsp; - struct ucred**credanonp; + struct ucred **credanonp; { - return (VFS_FHTOVP(MOUNTTOUMAPMOUNT(mp)->umapm_vfs, fidp, nam, vpp, exflagsp,credanonp)); + return (VFS_CHECKEXP(MOUNTTOUMAPMOUNT(mp)->umapm_vfs, nam, + exflagsp, credanonp)); } static int @@ -428,6 +438,7 @@ static struct vfsops umap_vfsops = { umapfs_sync, umapfs_vget, umapfs_fhtovp, + umapfs_checkexp, umapfs_vptofh, umapfs_init, }; diff --git a/sys/miscfs/union/union_vfsops.c b/sys/miscfs/union/union_vfsops.c index def8416..af828ac 100644 --- a/sys/miscfs/union/union_vfsops.c +++ b/sys/miscfs/union/union_vfsops.c @@ -496,7 +496,7 @@ union_statfs(mp, sbp, p) static struct vfsops union_vfsops = { union_mount, - vfs_stdstart, + vfs_stdstart, /* underlying start already done */ union_unmount, union_root, vfs_stdquotactl, @@ -504,6 +504,7 @@ static struct vfsops union_vfsops = { vfs_stdsync, /* XXX assumes no cached data on union level */ vfs_stdvget, vfs_stdfhtovp, + vfs_stdcheckexp, vfs_stdvptofh, union_init, }; |