]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds/Server.cc: drop leading / from path in is_capable check
authorJashan Kamboj <jashank42@gmail.com>
Fri, 10 Jul 2015 14:20:15 +0000 (19:50 +0530)
committerSage Weil <sage@redhat.com>
Thu, 1 Oct 2015 13:39:31 +0000 (09:39 -0400)
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
src/mds/Server.cc

index 9a4b28fa56548ac88b8e1918eb0b9ed8921a088f..ec09ebe623b2202874d7b92ed4da48a539f55699 100644 (file)
@@ -2119,6 +2119,9 @@ bool Server::check_access(MDRequestRef& mdr, CInode *in, unsigned mask)
   //path calculation
   in->make_path_string(path, false, in->get_projected_parent_dn());
 
+  //drop leading /
+  if (path.length()) path = path.substr(1);
+
   // FIXME: it depends on the inode!
   if (s->auth_caps.is_capable(path, in->inode.uid, in->inode.gid, in->inode.mode,
                              uid, mask)) {