From: Sage Weil Date: Sat, 7 Mar 2009 00:44:37 +0000 (-0800) Subject: client: fix request paths X-Git-Tag: v0.7~11^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=7966f989e56d64c6441a5f103ab1e6609dfb0bcd;p=ceph.git client: fix request paths Use filepath, not bare string, whenever we can. --- diff --git a/src/client/Client.cc b/src/client/Client.cc index dded88b55cc9..c3d065294e11 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -4464,19 +4464,19 @@ int Client::ll_setattr(vinodeno_t vino, struct stat *attr, int mask, int uid, in int r = 0; if ((mask & FUSE_SET_ATTR_MODE) && - ((r = _chmod(path.c_str(), attr->st_mode, false, uid, gid)) < 0)) return r; + ((r = _chmod(path, attr->st_mode, false, uid, gid)) < 0)) return r; if ((mask & (FUSE_SET_ATTR_UID|FUSE_SET_ATTR_GID)) && - ((r = _chown(path.c_str(), attr->st_uid, attr->st_gid, + ((r = _chown(path, attr->st_uid, attr->st_gid, ((mask & FUSE_SET_ATTR_UID) ? CEPH_CHOWN_UID:0) | ((mask & FUSE_SET_ATTR_GID) ? CEPH_CHOWN_GID:0), false, uid, gid)) < 0)) return r; if ((mask & FUSE_SET_ATTR_SIZE) && - ((r = _truncate(path.c_str(), attr->st_size, false, uid, gid)) < 0)) return r; + ((r = _truncate(path, attr->st_size, false, uid, gid)) < 0)) return r; if ((mask & (FUSE_SET_ATTR_MTIME|FUSE_SET_ATTR_ATIME))) - if ((r = _utimes(path.c_str(), utime_t(attr->st_mtime,0), utime_t(attr->st_atime,0), + if ((r = _utimes(path, utime_t(attr->st_mtime,0), utime_t(attr->st_atime,0), ((mask & FUSE_SET_ATTR_MTIME) ? CEPH_UTIME_MTIME:0) | ((mask & FUSE_SET_ATTR_ATIME) ? CEPH_UTIME_ATIME:0), false, uid, gid)) < 0) return r; @@ -4685,7 +4685,7 @@ int Client::ll_mknod(vinodeno_t parent, const char *name, mode_t mode, dev_t rde filepath path; diri->make_path(path); path.push_dentry(name); - int r = _mknod(path.c_str(), mode, rdev, uid, gid); + int r = _mknod(path, mode, rdev, uid, gid); if (r == 0) { string dname(name); Inode *in = diri->dir->dentries[dname]->inode; @@ -4730,7 +4730,7 @@ int Client::ll_mkdir(vinodeno_t parent, const char *name, mode_t mode, struct st } } else { path.push_dentry(name); - r = _mkdir(path.c_str(), mode, uid, gid); + r = _mkdir(path, mode, uid, gid); if (r == 0) { string dname(name); Inode *in = diri->dir->dentries[dname]->inode; @@ -4784,7 +4784,7 @@ int Client::ll_unlink(vinodeno_t vino, const char *name, int uid, int gid) filepath path; diri->make_path(path); path.push_dentry(name); - return _unlink(path.c_str(), uid, gid); + return _unlink(path, uid, gid); } int Client::ll_rmdir(vinodeno_t vino, const char *name, int uid, int gid) @@ -4811,7 +4811,7 @@ int Client::ll_rmdir(vinodeno_t vino, const char *name, int uid, int gid) } path.push_dentry(name); - return _rmdir(path.c_str(), uid, gid); + return _rmdir(path, uid, gid); } int Client::ll_rename(vinodeno_t parent, const char *name, vinodeno_t newparent, const char *newname, int uid, int gid) @@ -4835,7 +4835,7 @@ int Client::ll_rename(vinodeno_t parent, const char *name, vinodeno_t newparent, newdiri->make_path(newpath); newpath.push_dentry(newname); - return _rename(path.c_str(), newpath.c_str(), uid, gid); + return _rename(path, newpath, uid, gid); } int Client::ll_link(vinodeno_t vino, vinodeno_t newparent, const char *newname, struct stat *attr, int uid, int gid) @@ -4857,7 +4857,7 @@ int Client::ll_link(vinodeno_t vino, vinodeno_t newparent, const char *newname, diri->make_path(newpath); newpath.push_dentry(newname); - int r = _link(path.c_str(), newpath.c_str(), uid, gid); + int r = _link(path, newpath, uid, gid); if (r == 0) { Inode *in = _ll_get_inode(vino); fill_stat(in, attr); @@ -4889,7 +4889,7 @@ int Client::ll_opendir(vinodeno_t vino, void **dirpp, int uid, int gid) if (vino.snapid == CEPH_SNAPDIR) { *dirpp = new DirResult(path, diri); } else { - r = _opendir(path.c_str(), (DirResult**)dirpp); + r = _opendir(path, (DirResult**)dirpp); } tout << (unsigned long)*dirpp << std::endl; @@ -4919,7 +4919,7 @@ int Client::ll_open(vinodeno_t vino, int flags, Fh **fhp, int uid, int gid) filepath path; in->make_path(path); - int r = _open(path.c_str(), flags, 0, fhp, uid, gid); + int r = _open(path, flags, 0, fhp, uid, gid); tout << (unsigned long)*fhp << std::endl; dout(3) << "ll_open " << vino << " " << flags << " = " << r << " (" << *fhp << ")" << dendl; @@ -4942,7 +4942,7 @@ int Client::ll_create(vinodeno_t parent, const char *name, mode_t mode, int flag pin->make_path(path); path.push_dentry(name); - int r = _open(path.c_str(), flags|O_CREAT, mode, fhp, uid, gid); + int r = _open(path, flags|O_CREAT, mode, fhp, uid, gid); if (r >= 0) { Inode *in = (*fhp)->inode; fill_stat(in, attr);