]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
fusefs: implement VOP_ACCESS
authorasomers <asomers@FreeBSD.org>
Fri, 5 Apr 2019 18:37:48 +0000 (18:37 +0000)
committerasomers <asomers@FreeBSD.org>
Fri, 5 Apr 2019 18:37:48 +0000 (18:37 +0000)
commit6ab835e37a2908a6947a78f8ca8e62bfeb11c500
treecb32db1ce1b10d55aa9d63d01af033316ce8e55f
parent27a1350eaecd2757042579b7c354b8dfee802fb2
fusefs: implement VOP_ACCESS

VOP_ACCESS was never fully implemented in fusefs.  This change:
* Removes the FACCESS_DO_ACCESS flag, which pretty much disabled the whole
  vop.
* Removes a quixotic special case for VEXEC on regular files.  I don't know
  why that was in there.
* Removes another confusing special case for VADMIN.
* Removes the FACCESS_NOCHECKSPY flag.  It seemed to be a performance
  optimization, but I'm unconvinced that it was a net positive.
* Updates test cases.

This change does NOT implement -o default_permissions.  That will be handled
separately.

PR: 236291
Sponsored by: The FreeBSD Foundation
sys/fs/fuse/fuse_internal.c
sys/fs/fuse/fuse_internal.h
tests/sys/fs/fusefs/access.cc
tests/sys/fs/fusefs/mockfs.cc
tests/sys/fs/fusefs/utils.cc