]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
client: allow ceph.* xattrs
authorSage Weil <sage@inktank.com>
Sat, 19 Jan 2013 01:20:22 +0000 (17:20 -0800)
committerSage Weil <sage@inktank.com>
Wed, 30 Jan 2013 00:24:45 +0000 (16:24 -0800)
Signed-off-by: Sage Weil <sage@inktank.com>
src/client/Client.cc

index b3d3f6c2596db7393a48884cd84235194c75bf89..76fb8fa5a4af9dfcdcd19ee222e672ceb0db9539 100644 (file)
@@ -6544,7 +6544,10 @@ int Client::ll_setxattr(vinodeno_t vino, const char *name, const void *value, si
   tout(cct) << name << std::endl;
 
   // same xattrs supported by kernel client
-  if (strncmp(name, "user.", 5) && strncmp(name, "security.", 9) && strncmp(name, "trusted.", 8))
+  if (strncmp(name, "user.", 5) &&
+      strncmp(name, "security.", 9) &&
+      strncmp(name, "trusted.", 8) &&
+      strncmp(name, "ceph.", 5))
     return -EOPNOTSUPP;
 
   Inode *in = _ll_get_inode(vino);
@@ -6580,8 +6583,11 @@ int Client::ll_removexattr(vinodeno_t vino, const char *name, int uid, int gid)
   tout(cct) << vino.ino.val << std::endl;
   tout(cct) << name << std::endl;
 
-  // only user xattrs, for now
-  if (strncmp(name, "user.", 5) && strncmp(name, "security.", 9) && strncmp(name, "trusted.", 8))
+  // same xattrs supported by kernel client
+  if (strncmp(name, "user.", 5) &&
+      strncmp(name, "security.", 9) &&
+      strncmp(name, "trusted.", 8) &&
+      strncmp(name, "ceph.", 5))
     return -EOPNOTSUPP;
 
   Inode *in = _ll_get_inode(vino);