2220 int
2221 nfsd_set_posix_acl(struct svc_fh *fhp, int type, struct posix_acl *acl)
2222 {
2223 struct inode *inode = fhp->fh_dentry->d_inode;
2224 char *name;
2225 void *value = NULL;
2226 size_t size;
2227 int error;
2228
2229 if (!IS_POSIXACL(inode) ||
2230 !inode->i_op->setxattr || !inode->i_op->removexattr)
2231 return -EOPNOTSUPP;
2232 switch(type) {
2233 case ACL_TYPE_ACCESS:
2234 name = POSIX_ACL_XATTR_ACCESS;
2235 break;
2236 case ACL_TYPE_DEFAULT:
2237 name = POSIX_ACL_XATTR_DEFAULT;
2238 break;
2239 default:
2240 return -EOPNOTSUPP;
2241 }
2242
Thursday, January 5, 2012
Only POSIX ACLs supported over NFS
NFS server only supports posix acls, i.e, system.posix_acl_access and system.posix_acl_default. Other extended attributes are not supported through NFS server. There is strict checking in NFS that only these 2 ACLs can be set/get.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment