From 228aedff2a39f107572aa4f00a375ed36d0c977a Mon Sep 17 00:00:00 2001 From: wuxiangwei Date: Tue, 15 Dec 2015 07:36:08 -0500 Subject: [PATCH] rbd: implement mv operation for rbd-fuse implement mv operation for rbd-fuse to rename image. Signed-off-by: Xiangwei Wu wuxiangwei@h3c.com --- src/rbd_fuse/rbd-fuse.cc | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/rbd_fuse/rbd-fuse.cc b/src/rbd_fuse/rbd-fuse.cc index 8abfe45b5d1..838c2fea9cd 100644 --- a/src/rbd_fuse/rbd-fuse.cc +++ b/src/rbd_fuse/rbd-fuse.cc @@ -534,6 +534,16 @@ rbdfs_create(const char *path, mode_t mode, struct fuse_file_info *fi) return r; } +int rbdfs_rename(const char *path, const char *destname) +{ + const char *srcname = NULL; + if (strcmp(path, "/") == 0) + return -EINVAL; + + srcname = path + 1; + return rbd_rename(ioctx, srcname, destname + 1); +} + int rbdfs_utime(const char *path, struct utimbuf *utime) { @@ -678,7 +688,7 @@ const static struct fuse_operations rbdfs_oper = { unlink: rbdfs_unlink, rmdir: 0, symlink: 0, - rename: 0, + rename: rbdfs_rename, link: 0, chmod: 0, chown: 0, -- 2.47.3