diff options
author | Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> | 2010-09-02 11:09:06 +0530 |
---|---|---|
committer | Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> | 2010-09-08 22:56:41 +0530 |
commit | fa32ef88792a21b68f06c506c079560151fb5847 (patch) | |
tree | a7c575d0e8d6a239552315b83552a983f1ce7556 /hw/virtio-9p-local.c | |
parent | d62dbb51f76ddcec95822fe196813edd46ef35b9 (diff) |
virtio-9p: Implement TXATTRWALK
TXATTRWALK: Descend a ATTR namespace
size[4] TXATTRWALK tag[2] fid[4] newfid[4] name[s]
size[4] RXATTRWALK tag[2] size[8]
txattrwalk gets a fid pointing to xattr. This fid can later be
used to get read the xattr value. If name is NULL the fid returned
can be used to get the list of extended attribute associated to
the file system object.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Diffstat (limited to 'hw/virtio-9p-local.c')
-rw-r--r-- | hw/virtio-9p-local.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/hw/virtio-9p-local.c b/hw/virtio-9p-local.c index 269fc62beb..a6b5e6603a 100644 --- a/hw/virtio-9p-local.c +++ b/hw/virtio-9p-local.c @@ -474,6 +474,18 @@ static int local_statfs(FsContext *s, const char *path, struct statfs *stbuf) return statfs(rpath(s, path), stbuf); } +static ssize_t local_lgetxattr(FsContext *ctx, const char *path, + const char *name, void *value, size_t size) +{ + return lgetxattr(rpath(ctx, path), name, value, size); +} + +static ssize_t local_llistxattr(FsContext *ctx, const char *path, + void *value, size_t size) +{ + return llistxattr(rpath(ctx, path), value, size); +} + FileOperations local_ops = { .lstat = local_lstat, .readlink = local_readlink, @@ -502,4 +514,6 @@ FileOperations local_ops = { .remove = local_remove, .fsync = local_fsync, .statfs = local_statfs, + .lgetxattr = local_lgetxattr, + .llistxattr = local_llistxattr, }; |