1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// found in the LICENSE file. 4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/common/extensions/permissions/chrome_api_permissions.h" 6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 76e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#include "chrome/grit/generated_resources.h" 84e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "extensions/common/permissions/api_permission.h" 94e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "extensions/common/permissions/api_permission_set.h" 10effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "extensions/common/permissions/media_galleries_permission.h" 114e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "extensions/common/permissions/permission_message.h" 124e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "extensions/common/permissions/permissions_info.h" 136e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#include "extensions/strings/grit/extensions_strings.h" 14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)namespace extensions { 16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)namespace { 18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)const char kOldUnlimitedStoragePermission[] = "unlimited_storage"; 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)const char kWindowsPermission[] = "windows"; 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)template<typename T> APIPermission* CreateAPIPermission( 23c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) const APIPermissionInfo* permission) { 24c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) return new T(permission); 25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} // namespace 28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions() 30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) const { 31010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::InitInfo permissions_to_register[] = { 32010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Register permissions for all extension types. 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch {APIPermission::kAppView, "appview", 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch APIPermissionInfo::kFlagCannotBeOptional}, 35010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBackground, "background"}, 36010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kClipboardRead, "clipboardRead", 37010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_CLIPBOARD, 38010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kClipboard}, 39010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kClipboardWrite, "clipboardWrite"}, 40010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDeclarativeContent, "declarativeContent"}, 41010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDeclarativeWebRequest, "declarativeWebRequest", 42010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 43010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_DECLARATIVE_WEB_REQUEST, 44010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kDeclarativeWebRequest}, 45010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDesktopCapture, "desktopCapture", 46010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 47010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_DESKTOP_CAPTURE, 48010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kDesktopCapture}, 49010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDownloads, "downloads", APIPermissionInfo::kFlagNone, 50010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_DOWNLOADS, PermissionMessage::kDownloads}, 51010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDownloadsOpen, "downloads.open", 52010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 53010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_DOWNLOADS_OPEN, 54010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kDownloadsOpen}, 55010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDownloadsShelf, "downloads.shelf"}, 565f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kEasyUnlockPrivate, "easyUnlockPrivate"}, 57010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kIdentity, "identity"}, 58f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) {APIPermission::kIdentityEmail, "identity.email", 59f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) APIPermissionInfo::kFlagNone, 60f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_IDENTITY_EMAIL, 61f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) PermissionMessage::kIdentityEmail}, 62010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kExperimental, "experimental", 63010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 645f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kEmbeddedExtensionOptions, "embeddedExtensionOptions", 655f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 66010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kGeolocation, "geolocation", 67010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 68010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_GEOLOCATION, 69010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kGeolocation}, 705f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kNotifications, "notifications"}, 71010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kUnlimitedStorage, "unlimitedStorage", 72010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 73f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) {APIPermission::kGcdPrivate, "gcdPrivate"}, 74010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kGcm, "gcm"}, 755f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kNotificationProvider, "notificationProvider"}, 76c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 77010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Register extension permissions. 78010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAccessibilityFeaturesModify, 79010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) "accessibilityFeatures.modify", APIPermissionInfo::kFlagNone, 80010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_ACCESSIBILITY_FEATURES_MODIFY, 81010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kAccessibilityFeaturesModify}, 82010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAccessibilityFeaturesRead, "accessibilityFeatures.read", 83010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 84010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_ACCESSIBILITY_FEATURES_READ, 85010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kAccessibilityFeaturesRead}, 86010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAccessibilityPrivate, "accessibilityPrivate", 87010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 88010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kActiveTab, "activeTab"}, 89010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAlarms, "alarms"}, 90010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBookmark, "bookmarks", APIPermissionInfo::kFlagNone, 91010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_BOOKMARKS, PermissionMessage::kBookmarks}, 92010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBrailleDisplayPrivate, "brailleDisplayPrivate", 93010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 94010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBrowsingData, "browsingData"}, 95010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kContentSettings, "contentSettings", 96010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 97010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_CONTENT_SETTINGS, 98010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kContentSettings}, 99010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kContextMenus, "contextMenus"}, 100010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kCookie, "cookies"}, 1011320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci {APIPermission::kCopresence, "copresence", APIPermissionInfo::kFlagNone, 1026e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_COPRESENCE, PermissionMessage::kCopresence}, 1035f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kCopresencePrivate, "copresencePrivate"}, 104cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) {APIPermission::kEnterprisePlatformKeys, "enterprise.platformKeys"}, 105010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileBrowserHandler, "fileBrowserHandler", 106010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 107010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFontSettings, "fontSettings", 108010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 109010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kHistory, "history", APIPermissionInfo::kFlagNone, 110f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_HISTORY_WRITE, 111010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kBrowsingHistory}, 112010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kIdltest, "idltest"}, 113010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kIdle, "idle"}, 114010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kInfobars, "infobars"}, 115010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kInput, "input", APIPermissionInfo::kFlagNone, 116010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_INPUT, PermissionMessage::kInput}, 117010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kLocation, "location", 118010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 119010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_GEOLOCATION, 120010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kGeolocation}, 121010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kManagement, "management", APIPermissionInfo::kFlagNone, 122010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_MANAGEMENT, PermissionMessage::kManagement}, 123010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kNativeMessaging, "nativeMessaging", 124010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 125010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_NATIVE_MESSAGING, 126010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kNativeMessaging}, 127010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPrivacy, "privacy", APIPermissionInfo::kFlagNone, 128010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_PRIVACY, PermissionMessage::kPrivacy}, 129010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kProcesses, "processes", APIPermissionInfo::kFlagNone, 130f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ, PermissionMessage::kTabs}, 131010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kSessions, "sessions"}, 132010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kSignedInDevices, "signedInDevices", 133010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 134010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_SIGNED_IN_DEVICES, 135010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kSignedInDevices}, 136010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kSyncFileSystem, "syncFileSystem", 137010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 138010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_SYNCFILESYSTEM, 139010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kSyncFileSystem}, 140010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTab, "tabs", APIPermissionInfo::kFlagNone, 141f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ, PermissionMessage::kTabs}, 142010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTopSites, "topSites", APIPermissionInfo::kFlagNone, 1431320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci IDS_EXTENSION_PROMPT_WARNING_TOPSITES, PermissionMessage::kTopSites}, 144010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTts, "tts", 0, APIPermissionInfo::kFlagCannotBeOptional}, 145010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTtsEngine, "ttsEngine", 146010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 147010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_TTS_ENGINE, PermissionMessage::kTtsEngine}, 148010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWallpaper, "wallpaper", 149010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 150010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_WALLPAPER, PermissionMessage::kWallpaper}, 151010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebNavigation, "webNavigation", 152f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ, 153010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kTabs}, 154010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebRequest, "webRequest"}, 155010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebRequestBlocking, "webRequestBlocking"}, 156c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 157010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Register private permissions. 158010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kScreenlockPrivate, "screenlockPrivate", 159010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 160010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_SCREENLOCK_PRIVATE, 161010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kScreenlockPrivate}, 162010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kActivityLogPrivate, "activityLogPrivate", 163010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 164010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_ACTIVITY_LOG_PRIVATE, 165010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kActivityLogPrivate}, 166010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAutoTestPrivate, "autotestPrivate", 167010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 168010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBookmarkManagerPrivate, "bookmarkManagerPrivate", 169010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 170010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kCast, "cast", APIPermissionInfo::kFlagCannotBeOptional}, 171010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kChromeosInfoPrivate, "chromeosInfoPrivate", 172010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 1731320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci {APIPermission::kCommandsAccessibility, "commands.accessibility", 1741320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci APIPermissionInfo::kFlagCannotBeOptional}, 175010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kCommandLinePrivate, "commandLinePrivate", 176010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 177010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDeveloperPrivate, "developerPrivate", 178010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 179010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDiagnostics, "diagnostics", 180010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 181010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDial, "dial", APIPermissionInfo::kFlagCannotBeOptional}, 182010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDownloadsInternal, "downloadsInternal"}, 1835f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kExperienceSamplingPrivate, "experienceSamplingPrivate", 1845f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 1855f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_EXPERIENCE_SAMPLING_PRIVATE, 1865f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) PermissionMessage::kExperienceSamplingPrivate}, 187010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileBrowserHandlerInternal, "fileBrowserHandlerInternal", 188010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 1891320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci {APIPermission::kFileManagerPrivate, "fileManagerPrivate", 190010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 191010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kHotwordPrivate, "hotwordPrivate", 192010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 193010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kIdentityPrivate, "identityPrivate", 194010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 1955f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) {APIPermission::kLogPrivate, "logPrivate", 1965f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 197010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebcamPrivate, "webcamPrivate"}, 198010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kNetworkingPrivate, "networkingPrivate", 199010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 200010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_NETWORKING_PRIVATE, 201010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kNetworkingPrivate}, 202010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMediaPlayerPrivate, "mediaPlayerPrivate", 203010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 204010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMetricsPrivate, "metricsPrivate", 205010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 206010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMDns, "mdns", APIPermissionInfo::kFlagCannotBeOptional}, 207010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMusicManagerPrivate, "musicManagerPrivate", 208010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 209010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_MUSIC_MANAGER_PRIVATE, 210010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kMusicManagerPrivate}, 211010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPreferencesPrivate, "preferencesPrivate", 212010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 213010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kSystemPrivate, "systemPrivate", 214010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 215010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kCloudPrintPrivate, "cloudPrintPrivate", 216010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 217010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kInputMethodPrivate, "inputMethodPrivate", 218010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 219010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kEchoPrivate, "echoPrivate", 220010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 221010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFeedbackPrivate, "feedbackPrivate", 222010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 223010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kImageWriterPrivate, "imageWriterPrivate", 224010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 225010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kReadingListPrivate, "readingListPrivate", 226010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 227010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kRtcPrivate, "rtcPrivate", 228010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 229cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) {APIPermission::kSyncedNotificationsPrivate, 230cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) "syncedNotificationsPrivate"}, 231010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTerminalPrivate, "terminalPrivate", 232010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 233010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kVirtualKeyboardPrivate, "virtualKeyboardPrivate", 234010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 235010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWallpaperPrivate, "wallpaperPrivate", 236010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 237010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebstorePrivate, "webstorePrivate", 238010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 239010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMediaGalleriesPrivate, "mediaGalleriesPrivate", 240010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 241010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kStreamsPrivate, "streamsPrivate", 242010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 243010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kEnterprisePlatformKeysPrivate, 244010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) "enterprise.platformKeysPrivate", 245010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 246010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebrtcAudioPrivate, "webrtcAudioPrivate", 247010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 248010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kWebrtcLoggingPrivate, "webrtcLoggingPrivate", 249010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 250010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPrincipalsPrivate, "principalsPrivate", 251010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 252010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFirstRunPrivate, "firstRunPrivate", 253010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 254010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBluetoothPrivate, "bluetoothPrivate", 255010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 256010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH_PRIVATE, 257010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kBluetoothPrivate}, 258c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 259010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Full url access permissions. 260010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDebugger, "debugger", 261010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess | 262010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional, 263010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_DEBUGGER, PermissionMessage::kDebugger}, 264010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kDevtools, "devtools", 265010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess | 266010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional | 267010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal}, 268010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPageCapture, "pageCapture", 269010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess}, 270010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTabCapture, "tabCapture", 271010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess}, 272010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kTabCaptureForTab, "tabCaptureForTab", 273010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal}, 274010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPlugin, "plugin", 275010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess | 276010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullAccess | 277010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional | 278010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal, 279010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_FULL_ACCESS, 280010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kFullAccess}, 281010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kProxy, "proxy", 282010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagImpliesFullURLAccess | 283010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 284c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 285010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Platform-app permissions. 2861320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 287010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // The permission string for "fileSystem" is only shown when 288010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // "write" or "directory" is present. Read-only access is only 289010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // granted after the user has been shown a file or directory 290010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // chooser dialog and selected a file or directory. Selecting 291010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // the file or directory is considered consent to read it. 292010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystem, "fileSystem"}, 293010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystemDirectory, "fileSystem.directory", 294010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 295010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_DIRECTORY, 296010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kFileSystemDirectory}, 297010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystemProvider, "fileSystemProvider"}, 298010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystemRetainEntries, "fileSystem.retainEntries"}, 299010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystemWrite, "fileSystem.write"}, 300010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kFileSystemWriteDirectory, "fileSystem.writeDirectory", 301010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 302010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_WRITE_DIRECTORY, 303010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kFileSystemWriteDirectory}, 304010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Because warning messages for the "mediaGalleries" permission 305010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // vary based on the permissions parameters, no message ID or 306010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // message text is specified here. The message ID and text used 307010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // will be determined at run-time in the 308010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // |MediaGalleriesPermission| class. 309010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kMediaGalleries, "mediaGalleries", 310010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagNone, 0, PermissionMessage::kNone, 311010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) &CreateAPIPermission<MediaGalleriesPermission>}, 312010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPushMessaging, "pushMessaging", 313010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional}, 314010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kPointerLock, "pointerLock"}, 315010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kAudio, "audio"}, 316010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kCastStreaming, "cast.streaming"}, 317010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kBrowser, "browser"}, 318f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 319010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) // Settings override permissions. 320010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kHomepage, "homepage", 321010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional | 322010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal, 323010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE, 324010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kHomepage}, 325010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kSearchProvider, "searchProvider", 326010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional | 327010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal, 328010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE, 329010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kSearchProvider}, 330010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) {APIPermission::kStartupPages, "startupPages", 331010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagCannotBeOptional | 332010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) APIPermissionInfo::kFlagInternal, 333010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE, 334010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) PermissionMessage::kStartupPages}, 335010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) }; 336c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 337c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) std::vector<APIPermissionInfo*> permissions; 338c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 339010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) for (size_t i = 0; i < ARRAYSIZE_UNSAFE(permissions_to_register); ++i) 340010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) permissions.push_back(new APIPermissionInfo(permissions_to_register[i])); 341c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) return permissions; 342c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 343c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 344ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdochstd::vector<PermissionsProvider::AliasInfo> 345ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben MurdochChromeAPIPermissions::GetAllAliases() const { 346c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) // Register aliases. 347ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch std::vector<PermissionsProvider::AliasInfo> aliases; 348ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch aliases.push_back(PermissionsProvider::AliasInfo( 349c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) "unlimitedStorage", kOldUnlimitedStoragePermission)); 350ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch aliases.push_back(PermissionsProvider::AliasInfo( 351c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) "tabs", kWindowsPermission)); 352c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) return aliases; 353c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 354c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 355c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} // namespace extensions 356