From: Greg Farnum Date: Fri, 29 Jul 2016 22:27:19 +0000 (-0700) Subject: client: switch _lookup() implementation to UserPerm X-Git-Tag: v11.0.1~36^2~65 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=18f4b1640dcaa6935f50c8475404de0a044d0f8b;p=ceph.git client: switch _lookup() implementation to UserPerm Signed-off-by: Greg Farnum --- diff --git a/src/client/Client.cc b/src/client/Client.cc index 26aee3432811..5f6e43b1dfe6 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -5860,12 +5860,11 @@ int Client::_do_lookup(Inode *dir, const string& name, int mask, return r; } -int Client::_lookup(Inode *dir, const string& dname, int mask, - InodeRef *target, int uid, int gid) +int Client::_lookup(Inode *dir, const string& dname, int mask, InodeRef *target, + const UserPerm& perms) { int r = 0; Dentry *dn = NULL; - UserPerm perms(uid, gid); if (!dir->is_dir()) { r = -ENOTDIR; diff --git a/src/client/Client.h b/src/client/Client.h index 695dc108436d..60da3a639062 100644 --- a/src/client/Client.h +++ b/src/client/Client.h @@ -779,10 +779,13 @@ private: // call these with client_lock held! int _do_lookup(Inode *dir, const string& name, int mask, InodeRef *target, const UserPerm& perms); - int _lookup(Inode *dir, const string& dname, int mask, InodeRef *target, int uid, int gid); + + int _lookup(Inode *dir, const string& dname, int mask, InodeRef *target, + const UserPerm& perm); int _lookup(Inode *dir, const string& dname, int mask, InodeRef *target, - const UserPerm& perm) { - return _lookup(dir, dname, mask, target, perm.uid(), perm.gid()); + int uid, int gid) { + UserPerm perms(uid, gid); + return _lookup(dir, dname, mask, target, perms); } int _link(Inode *in, Inode *dir, const char *name, const UserPerm& perm,