Set ownership and permission while installing user package 29/239529/2
authorIlho Kim <ilho159.kim@samsung.com>
Mon, 27 Jul 2020 10:35:02 +0000 (19:35 +0900)
committerilho kim <ilho159.kim@samsung.com>
Thu, 6 Aug 2020 05:59:16 +0000 (05:59 +0000)
Change-Id: I31db65fc6162bea8f70baacc6c95c70956311e9c
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
src/common/shared_dirs.cc

index 88f1673..447ce05 100644 (file)
@@ -599,6 +599,15 @@ bool CreateStorageDirectories(const boost::filesystem::path& path,
   if (!::SetPackageDirectoryOwnerAndPermissions(path / pkgid, uid))
     return false;
 
+  if (shareddata) {
+    std::vector<std::string> shared_dirs(kSharedDataEntries);
+    for (auto entry : shared_dirs) {
+      bf::path shared_dst = path / entry / pkgid;
+      if (!::SetPackageDirectoryOwnerAndPermissions(shared_dst, uid))
+        return false;
+    }
+  }
+
   std::string error_message;
   if (!RegisterSecurityContextForPath(pkgid, path / pkgid, uid, false,
                                       &error_message)) {