diff options
author | J. Bruce Fields <bfields@citi.umich.edu> | 2008-01-15 16:43:19 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-01-30 02:06:10 -0500 |
commit | 3d1c550874bcaf0d9b7fb66f601caed109074f4b (patch) | |
tree | d3517a859cfd433ebe08f6d204d84d03581070ee /fs/nfs | |
parent | f3c391e89c92651105364c6645244118ec9b3952 (diff) |
nfs4: allow nfsv4 acls on non-regular-files
The rfc doesn't give any reason it shouldn't be possible to set an
attribute on a non-regular file. And if the server supports it, then it
shouldn't be up to us to prevent it.
Thanks to Erez for the report and Trond for further analysis.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Tested-by: Erez Zadok <ezk@cs.sunysb.edu>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/nfs4proc.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index b3d4e8e5696a..89efbcd6fd53 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -3617,10 +3617,6 @@ int nfs4_setxattr(struct dentry *dentry, const char *key, const void *buf, | |||
3617 | if (strcmp(key, XATTR_NAME_NFSV4_ACL) != 0) | 3617 | if (strcmp(key, XATTR_NAME_NFSV4_ACL) != 0) |
3618 | return -EOPNOTSUPP; | 3618 | return -EOPNOTSUPP; |
3619 | 3619 | ||
3620 | if (!S_ISREG(inode->i_mode) && | ||
3621 | (!S_ISDIR(inode->i_mode) || inode->i_mode & S_ISVTX)) | ||
3622 | return -EPERM; | ||
3623 | |||
3624 | return nfs4_proc_set_acl(inode, buf, buflen); | 3620 | return nfs4_proc_set_acl(inode, buf, buflen); |
3625 | } | 3621 | } |
3626 | 3622 | ||