| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/extensions/device_local_account_management_pol
icy_provider.h" | 5 #include "chrome/browser/chromeos/extensions/device_local_account_management_pol
icy_provider.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <cstddef> | 9 #include <cstddef> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 124 }; | 124 }; |
| 125 | 125 |
| 126 // List of manifest entries from https://developer.chrome.com/apps/manifest. | 126 // List of manifest entries from https://developer.chrome.com/apps/manifest. |
| 127 // Unsafe entries are commented out and special cases too. | 127 // Unsafe entries are commented out and special cases too. |
| 128 const char* const kSafeManifestEntries[] = { | 128 const char* const kSafeManifestEntries[] = { |
| 129 emk::kAboutPage, | 129 emk::kAboutPage, |
| 130 | 130 |
| 131 // Special-cased in IsSafeForPublicSession(). | 131 // Special-cased in IsSafeForPublicSession(). |
| 132 // emk::kApp, | 132 // emk::kApp, |
| 133 | 133 |
| 134 // Not a real manifest entry (doesn't show up in code search). All legacy |
| 135 // ARC apps have this dictionary (data is stuffed there to be consumed by |
| 136 // the ARC runtime). |
| 137 "arc_metadata", |
| 138 |
| 134 // Documented in https://developer.chrome.com/extensions/manifest but not | 139 // Documented in https://developer.chrome.com/extensions/manifest but not |
| 135 // implemented anywhere. Still, a lot of apps use it. | 140 // implemented anywhere. Still, a lot of apps use it. |
| 136 "author", | 141 "author", |
| 137 | 142 |
| 138 // Allows inspection of page contents, not enabled on stable anyways except | 143 // Allows inspection of page contents, not enabled on stable anyways except |
| 139 // for whitelist. | 144 // for whitelist. |
| 140 // emk::kAutomation, | 145 // emk::kAutomation, |
| 141 | 146 |
| 142 "background", | 147 "background", |
| 143 | 148 |
| (...skipping 532 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 676 // server-side or via chrome.socket. Finally, web security doesn't make a | 681 // server-side or via chrome.socket. Finally, web security doesn't make a |
| 677 // lot of sense when there's no URL bar or HTTPS padlock providing trusted | 682 // lot of sense when there's no URL bar or HTTPS padlock providing trusted |
| 678 // UI. Bottom line: Risks are mitigated, further restrictions don't make | 683 // UI. Bottom line: Risks are mitigated, further restrictions don't make |
| 679 // sense, so OK to allow. | 684 // sense, so OK to allow. |
| 680 "webview", | 685 "webview", |
| 681 }; | 686 }; |
| 682 | 687 |
| 683 // Some permissions take the form of a dictionary. See |kSafePermissionStrings| | 688 // Some permissions take the form of a dictionary. See |kSafePermissionStrings| |
| 684 // for permission strings (and for more documentation). | 689 // for permission strings (and for more documentation). |
| 685 const char* const kSafePermissionDicts[] = { | 690 const char* const kSafePermissionDicts[] = { |
| 686 // TBD | 691 // Dictionary form of the above "fileSystem" permission string. |
| 687 // "fileSystem", | 692 "fileSystem", |
| 688 | 693 |
| 689 // Just another type of connectivity. | 694 // Just another type of connectivity. |
| 690 "socket", | 695 "socket", |
| 691 }; | 696 }; |
| 692 | 697 |
| 693 // List of safe entries for the "app" dict in manifest. | 698 // List of safe entries for the "app" dict in manifest. |
| 694 const char* const kSafeAppStrings[] = { | 699 const char* const kSafeAppStrings[] = { |
| 695 "background", | 700 "background", |
| 696 "content_security_policy", | 701 "content_security_policy", |
| 697 "icon_color", | 702 "icon_color", |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 934 if (error) { | 939 if (error) { |
| 935 *error = l10n_util::GetStringFUTF16( | 940 *error = l10n_util::GetStringFUTF16( |
| 936 IDS_EXTENSION_CANT_INSTALL_IN_DEVICE_LOCAL_ACCOUNT, | 941 IDS_EXTENSION_CANT_INSTALL_IN_DEVICE_LOCAL_ACCOUNT, |
| 937 base::UTF8ToUTF16(extension->name()), | 942 base::UTF8ToUTF16(extension->name()), |
| 938 base::UTF8ToUTF16(extension->id())); | 943 base::UTF8ToUTF16(extension->id())); |
| 939 } | 944 } |
| 940 return false; | 945 return false; |
| 941 } | 946 } |
| 942 | 947 |
| 943 } // namespace chromeos | 948 } // namespace chromeos |
| OLD | NEW |