Permission Checking

To understand why PVFS2 permission checking behaves differently from the POSIX standard, it is useful to discuss how PVFS2 performs permission checking. PVFS2 does not really implement the open etc. interface, but instead uses a stateless approach that relies on the client to lookup a file name to convert it into a handle that can be used for subsequent read and write accesses. This handle may be used for many read and write accesses and may be cached under certain guidelines. This lookup operation is performed at file open time.

Permission checking is performed in two places. First, the VFS checks permissions on the client and will prevent users from performing invalid operations. Second, the server performs rudimentary checks for specific operations; however, it (currently) relies on the client to provide accurate user and group information to be used for this purpose. No recursive directory permission checking is performed by the servers, for example.