Chromium Code Reviews| Index: content/browser/child_process_security_policy_impl.cc |
| =================================================================== |
| --- content/browser/child_process_security_policy_impl.cc (revision 229702) |
| +++ 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_FROM_FILE_PERMISSION = 1 << 4, |
|
tommycli
2013/10/21 14:16:09
probably just DELETE_FILE right?
Lei Zhang
2013/10/21 21:35:38
Done.
|
| // 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_FROM_FILE_PERMISSION, |
| COPY_INTO_FILE_GRANT = COPY_INTO_FILE_PERMISSION, |
| + DELETE_FROM_FILE_GRANT = DELETE_FROM_FILE_PERMISSION, |
|
tommycli
2013/10/21 14:16:09
here too
Lei Zhang
2013/10/21 21:35:38
Done.
|
| }; |
| } // namespace |
| @@ -478,6 +481,12 @@ |
| 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_FROM_FILE_GRANT); |
| +} |
| + |
| void ChildProcessSecurityPolicyImpl::GrantSendMIDISysExMessage(int child_id) { |
| base::AutoLock lock(lock_); |
| @@ -627,6 +636,12 @@ |
| COPY_INTO_FILE_GRANT); |
| } |
| +bool ChildProcessSecurityPolicyImpl::CanDeleteFromFileSystem( |
| + int child_id, const std::string& filesystem_id) { |
| + return HasPermissionsForFileSystem(child_id, filesystem_id, |
| + DELETE_FROM_FILE_GRANT); |
| +} |
| + |
| bool ChildProcessSecurityPolicyImpl::HasPermissionsForFile( |
| int child_id, const base::FilePath& file, int permissions) { |
| base::AutoLock lock(lock_); |
| @@ -716,6 +731,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_FROM_FILE_GRANT); |
| +} |
| + |
| bool ChildProcessSecurityPolicyImpl::HasWebUIBindings(int child_id) { |
| base::AutoLock lock(lock_); |