Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1049)

Unified Diff: content/browser/child_process_security_policy_impl.cc

Issue 31663002: ChildProcessSecurityPolicy: Add DeleteFromFileSystem permission. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/child_process_security_policy_impl.cc
===================================================================
--- content/browser/child_process_security_policy_impl.cc (revision 229901)
+++ content/browser/child_process_security_policy_impl.cc (working copy)
@@ -38,9 +38,10 @@
WRITE_FILE_PERMISSION = 1 << 1,
CREATE_NEW_FILE_PERMISSION = 1 << 2,
CREATE_OVERWRITE_FILE_PERMISSION = 1 << 3,
+ DELETE_FILE_PERMISSION = 1 << 4,
// Used by Media Galleries API
- COPY_INTO_FILE_PERMISSION = 1 << 4,
+ COPY_INTO_FILE_PERMISSION = 1 << 5,
};
// Used internally only. Bitmasks that are actually used by the Grant* and Can*
@@ -56,9 +57,11 @@
CREATE_OVERWRITE_FILE_PERMISSION |
READ_FILE_PERMISSION |
WRITE_FILE_PERMISSION |
- COPY_INTO_FILE_PERMISSION,
+ COPY_INTO_FILE_PERMISSION |
+ DELETE_FILE_PERMISSION,
COPY_INTO_FILE_GRANT = COPY_INTO_FILE_PERMISSION,
+ DELETE_FILE_GRANT = DELETE_FILE_PERMISSION,
};
} // namespace
@@ -478,6 +481,11 @@
GrantPermissionsForFileSystem(child_id, filesystem_id, COPY_INTO_FILE_GRANT);
}
+void ChildProcessSecurityPolicyImpl::GrantDeleteFromFileSystem(
+ int child_id, const std::string& filesystem_id) {
+ GrantPermissionsForFileSystem(child_id, filesystem_id, DELETE_FILE_GRANT);
+}
+
void ChildProcessSecurityPolicyImpl::GrantSendMIDISysExMessage(int child_id) {
base::AutoLock lock(lock_);
@@ -627,6 +635,12 @@
COPY_INTO_FILE_GRANT);
}
+bool ChildProcessSecurityPolicyImpl::CanDeleteFromFileSystem(
+ int child_id, const std::string& filesystem_id) {
+ return HasPermissionsForFileSystem(child_id, filesystem_id,
+ DELETE_FILE_GRANT);
+}
+
bool ChildProcessSecurityPolicyImpl::HasPermissionsForFile(
int child_id, const base::FilePath& file, int permissions) {
base::AutoLock lock(lock_);
@@ -716,6 +730,12 @@
return HasPermissionsForFileSystemFile(child_id, url, COPY_INTO_FILE_GRANT);
}
+bool ChildProcessSecurityPolicyImpl::CanDeleteFileSystemFile(
+ int child_id,
+ const fileapi::FileSystemURL& url) {
+ return HasPermissionsForFileSystemFile(child_id, url, DELETE_FILE_GRANT);
+}
+
bool ChildProcessSecurityPolicyImpl::HasWebUIBindings(int child_id) {
base::AutoLock lock(lock_);
« no previous file with comments | « content/browser/child_process_security_policy_impl.h ('k') | content/browser/child_process_security_policy_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698