[ARVADOS] updated: 1.1.4-2-gfcdea9d

Git user git at public.curoverse.com
Wed Apr 11 09:00:49 EDT 2018


Summary of changes:
 services/fuse/arvados_fuse/fusedir.py | 2 ++
 services/fuse/tests/test_mount.py     | 4 ++++
 2 files changed, 6 insertions(+)

       via  fcdea9d131e4ba823ac8b69224d90b8eb5f4ae2e (commit)
      from  1f15c5b6060b0d82c9b17fb724b7128374f65747 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit fcdea9d131e4ba823ac8b69224d90b8eb5f4ae2e
Author: Fuad Muhic <muhic.fuad at gmail.com>
Date:   Tue Apr 10 18:29:16 2018 +0200

    Users can only access groups with group_class set to project from by_id
    directory
    
    Arvados-DCO-1.1-Signed-off-by: Fuad Muhic <fmuhic at capeannenterprises.com>

diff --git a/services/fuse/arvados_fuse/fusedir.py b/services/fuse/arvados_fuse/fusedir.py
index f4ff6c9..9153985 100644
--- a/services/fuse/arvados_fuse/fusedir.py
+++ b/services/fuse/arvados_fuse/fusedir.py
@@ -650,6 +650,8 @@ and the directory will appear if it exists.
             if group_uuid_pattern.match(k):
                 project_object = self.api.groups().get(
                     uuid=k).execute(num_retries=self.num_retries)
+                if project_object[u'group_class'] != "project":
+                    return False
                 e = self.inodes.add_entry(ProjectDirectory(
                     self.inode, self.inodes, self.api, self.num_retries, project_object))
             else:
diff --git a/services/fuse/tests/test_mount.py b/services/fuse/tests/test_mount.py
index 33a4ca5..fb282d1 100644
--- a/services/fuse/tests/test_mount.py
+++ b/services/fuse/tests/test_mount.py
@@ -122,6 +122,7 @@ class FuseMagicTest(MountTestBase):
         super(FuseMagicTest, self).setUp(api=api)
 
         self.test_project = run_test_server.fixture('groups')['aproject']['uuid']
+        self.non_project_group = run_test_server.fixture('groups')['public']['uuid']
         self.collection_in_test_project = run_test_server.fixture('collections')['foo_collection_in_aproject']['name']
 
         cw = arvados.CollectionWriter()
@@ -160,6 +161,9 @@ class FuseMagicTest(MountTestBase):
         self.assertIn(self.test_project, 
                       llfuse.listdir(os.path.join(self.mounttmp, 'by_id')))
 
+        with self.assertRaises(OSError):
+            llfuse.listdir(os.path.join(self.mounttmp, 'by_id', self.non_project_group))
+
         files = {}
         files[os.path.join(self.mounttmp, self.testcollection, 'thing1.txt')] = 'data 1'
 

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list