From: Yan, Zheng Date: Mon, 27 Jul 2015 11:08:48 +0000 (+0800) Subject: client: convert XATTR_{CREATE,REPLACE} to CEPH_XATTR_{CREATE,REPLACE} X-Git-Tag: v9.1.0~259^2~17 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4132805d70d1ae91cba5a58475807880cf6d2588;p=ceph.git client: convert XATTR_{CREATE,REPLACE} to CEPH_XATTR_{CREATE,REPLACE} Signed-off-by: Yan, Zheng --- diff --git a/src/client/Client.cc b/src/client/Client.cc index 4259c6ecdf60..9fbf72ddc5e4 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -23,6 +23,7 @@ #include #include #include +#include #if defined(__linux__) #include @@ -8962,8 +8963,13 @@ int Client::_setxattr(Inode *in, const char *name, const void *value, if (vxattr && vxattr->readonly) return -EOPNOTSUPP; + int xattr_flags = 0; if (!value) - flags |= CEPH_XATTR_REMOVE; + xattr_flags |= CEPH_XATTR_REMOVE; + if (flags & XATTR_CREATE) + xattr_flags |= CEPH_XATTR_CREATE; + if (flags & XATTR_REPLACE) + xattr_flags |= CEPH_XATTR_REPLACE; MetaRequest *req = new MetaRequest(CEPH_MDS_OP_SETXATTR); filepath path; @@ -8971,7 +8977,7 @@ int Client::_setxattr(Inode *in, const char *name, const void *value, req->set_filepath(path); req->set_string2(name); req->set_inode(in); - req->head.args.setxattr.flags = flags; + req->head.args.setxattr.flags = xattr_flags; bufferlist bl; bl.append((const char*)value, size);