Skip to content

Commit 8ffdab7

Browse files
committed
Merge PR ceph#55087 into main
* refs/pull/55087/head: client: Add exception to POSIX ACL xattrs in removexattr client: Fix parsing of xattr namespace in removexattr Reviewed-by: Venky Shankar <[email protected]> Reviewed-by: Xiubo Li <[email protected]>
2 parents b96215e + a17dcce commit 8ffdab7

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/client/Client.cc

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14067,10 +14067,11 @@ int Client::_removexattr(Inode *in, const char *name, const UserPerm& perms)
1406714067

1406814068
// same xattrs supported by kernel client
1406914069
if (strncmp(name, "user.", 5) &&
14070-
strncmp(name, "system.", 7) &&
1407114070
strncmp(name, "security.", 9) &&
1407214071
strncmp(name, "trusted.", 8) &&
14073-
strncmp(name, "ceph.", 5))
14072+
strncmp(name, "ceph.", 5) &&
14073+
strcmp(name, ACL_EA_ACCESS) &&
14074+
strcmp(name, ACL_EA_DEFAULT))
1407414075
return -CEPHFS_EOPNOTSUPP;
1407514076

1407614077
const VXattr *vxattr = _match_vxattr(in, name);
@@ -14086,6 +14087,11 @@ int Client::_removexattr(Inode *in, const char *name, const UserPerm& perms)
1408614087

1408714088
int res = make_request(req, perms);
1408814089

14090+
if ((!strcmp(name, ACL_EA_ACCESS) ||
14091+
!strcmp(name, ACL_EA_DEFAULT)) &&
14092+
res == -CEPHFS_ENODATA)
14093+
res = 0;
14094+
1408914095
trim_cache();
1409014096
ldout(cct, 8) << "_removexattr(" << in->ino << ", \"" << name << "\") = " << res << dendl;
1409114097
return res;

0 commit comments

Comments
 (0)