| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/common/extensions/extension.h" | 5 #include "chrome/common/extensions/extension.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/base64.h" | 9 #include "base/base64.h" |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 273 const char Extension::kChromePrivatePermission[] = "chromePrivate"; | 273 const char Extension::kChromePrivatePermission[] = "chromePrivate"; |
| 274 const char Extension::kChromeosInfoPrivatePermission[] = "chromeosInfoPrivate"; | 274 const char Extension::kChromeosInfoPrivatePermission[] = "chromeosInfoPrivate"; |
| 275 const char Extension::kDebuggerPermission[] = "debugger"; | 275 const char Extension::kDebuggerPermission[] = "debugger"; |
| 276 const char Extension::kExperimentalPermission[] = "experimental"; | 276 const char Extension::kExperimentalPermission[] = "experimental"; |
| 277 const char Extension::kFileBrowserHandlerPermission[] = "fileBrowserHandler"; | 277 const char Extension::kFileBrowserHandlerPermission[] = "fileBrowserHandler"; |
| 278 const char Extension::kFileBrowserPrivatePermission[] = "fileBrowserPrivate"; | 278 const char Extension::kFileBrowserPrivatePermission[] = "fileBrowserPrivate"; |
| 279 const char Extension::kGeolocationPermission[] = "geolocation"; | 279 const char Extension::kGeolocationPermission[] = "geolocation"; |
| 280 const char Extension::kHistoryPermission[] = "history"; | 280 const char Extension::kHistoryPermission[] = "history"; |
| 281 const char Extension::kIdlePermission[] = "idle"; | 281 const char Extension::kIdlePermission[] = "idle"; |
| 282 const char Extension::kManagementPermission[] = "management"; | 282 const char Extension::kManagementPermission[] = "management"; |
| 283 const char Extension::kMediaPlayerPrivatePermission[] = "mediaPlayerPrivate"; |
| 283 const char Extension::kNotificationPermission[] = "notifications"; | 284 const char Extension::kNotificationPermission[] = "notifications"; |
| 284 const char Extension::kProxyPermission[] = "proxy"; | 285 const char Extension::kProxyPermission[] = "proxy"; |
| 285 const char Extension::kTabPermission[] = "tabs"; | 286 const char Extension::kTabPermission[] = "tabs"; |
| 286 const char Extension::kUnlimitedStoragePermission[] = "unlimitedStorage"; | 287 const char Extension::kUnlimitedStoragePermission[] = "unlimitedStorage"; |
| 287 const char Extension::kWebstorePrivatePermission[] = "webstorePrivate"; | 288 const char Extension::kWebstorePrivatePermission[] = "webstorePrivate"; |
| 288 const char Extension::kWebSocketProxyPrivatePermission[] = | 289 const char Extension::kWebSocketProxyPrivatePermission[] = |
| 289 "webSocketProxyPrivate"; | 290 "webSocketProxyPrivate"; |
| 290 | 291 |
| 291 // In general, all permissions should have an install message. | 292 // In general, all permissions should have an install message. |
| 292 // See ExtensionsTest.PermissionMessages for an explanation of each | 293 // See ExtensionsTest.PermissionMessages for an explanation of each |
| 293 // exception. | 294 // exception. |
| 294 const Extension::Permission Extension::kPermissions[] = { | 295 const Extension::Permission Extension::kPermissions[] = { |
| 295 { kBackgroundPermission, PermissionMessage::ID_NONE }, | 296 { kBackgroundPermission, PermissionMessage::ID_NONE }, |
| 296 { kBookmarkPermission, PermissionMessage::ID_BOOKMARKS }, | 297 { kBookmarkPermission, PermissionMessage::ID_BOOKMARKS }, |
| 297 { kChromePrivatePermission, PermissionMessage::ID_NONE }, | 298 { kChromePrivatePermission, PermissionMessage::ID_NONE }, |
| 298 { kChromeosInfoPrivatePermission, PermissionMessage::ID_NONE }, | 299 { kChromeosInfoPrivatePermission, PermissionMessage::ID_NONE }, |
| 299 { kClipboardReadPermission, PermissionMessage::ID_CLIPBOARD }, | 300 { kClipboardReadPermission, PermissionMessage::ID_CLIPBOARD }, |
| 300 { kClipboardWritePermission, PermissionMessage::ID_NONE }, | 301 { kClipboardWritePermission, PermissionMessage::ID_NONE }, |
| 301 { kContentSettingsPermission, PermissionMessage::ID_NONE }, | 302 { kContentSettingsPermission, PermissionMessage::ID_NONE }, |
| 302 { kContextMenusPermission, PermissionMessage::ID_NONE }, | 303 { kContextMenusPermission, PermissionMessage::ID_NONE }, |
| 303 { kCookiePermission, PermissionMessage::ID_NONE }, | 304 { kCookiePermission, PermissionMessage::ID_NONE }, |
| 304 { kDebuggerPermission, PermissionMessage::ID_DEBUGGER }, | 305 { kDebuggerPermission, PermissionMessage::ID_DEBUGGER }, |
| 305 { kExperimentalPermission, PermissionMessage::ID_NONE }, | 306 { kExperimentalPermission, PermissionMessage::ID_NONE }, |
| 306 { kFileBrowserHandlerPermission, PermissionMessage::ID_NONE }, | 307 { kFileBrowserHandlerPermission, PermissionMessage::ID_NONE }, |
| 307 { kFileBrowserPrivatePermission, PermissionMessage::ID_NONE }, | 308 { kFileBrowserPrivatePermission, PermissionMessage::ID_NONE }, |
| 308 { kGeolocationPermission, PermissionMessage::ID_GEOLOCATION }, | 309 { kGeolocationPermission, PermissionMessage::ID_GEOLOCATION }, |
| 309 { kHistoryPermission, PermissionMessage::ID_BROWSING_HISTORY }, | 310 { kHistoryPermission, PermissionMessage::ID_BROWSING_HISTORY }, |
| 310 { kIdlePermission, PermissionMessage::ID_NONE }, | 311 { kIdlePermission, PermissionMessage::ID_NONE }, |
| 311 { kManagementPermission, PermissionMessage::ID_MANAGEMENT }, | 312 { kManagementPermission, PermissionMessage::ID_MANAGEMENT }, |
| 313 { kMediaPlayerPrivatePermission, PermissionMessage::ID_NONE }, |
| 312 { kNotificationPermission, PermissionMessage::ID_NONE }, | 314 { kNotificationPermission, PermissionMessage::ID_NONE }, |
| 313 { kProxyPermission, PermissionMessage::ID_NONE }, | 315 { kProxyPermission, PermissionMessage::ID_NONE }, |
| 314 { kTabPermission, PermissionMessage::ID_TABS }, | 316 { kTabPermission, PermissionMessage::ID_TABS }, |
| 315 { kUnlimitedStoragePermission, PermissionMessage::ID_NONE }, | 317 { kUnlimitedStoragePermission, PermissionMessage::ID_NONE }, |
| 316 { kWebSocketProxyPrivatePermission, PermissionMessage::ID_NONE }, | 318 { kWebSocketProxyPrivatePermission, PermissionMessage::ID_NONE }, |
| 317 { kWebstorePrivatePermission, PermissionMessage::ID_NONE }, | 319 { kWebstorePrivatePermission, PermissionMessage::ID_NONE }, |
| 318 }; | 320 }; |
| 319 const size_t Extension::kNumPermissions = arraysize(Extension::kPermissions); | 321 const size_t Extension::kNumPermissions = arraysize(Extension::kPermissions); |
| 320 | 322 |
| 321 const char* const Extension::kHostedAppPermissionNames[] = { | 323 const char* const Extension::kHostedAppPermissionNames[] = { |
| 322 Extension::kBackgroundPermission, | 324 Extension::kBackgroundPermission, |
| 323 Extension::kChromePrivatePermission, | 325 Extension::kChromePrivatePermission, |
| 324 Extension::kClipboardReadPermission, | 326 Extension::kClipboardReadPermission, |
| 325 Extension::kClipboardWritePermission, | 327 Extension::kClipboardWritePermission, |
| 326 Extension::kGeolocationPermission, | 328 Extension::kGeolocationPermission, |
| 327 Extension::kNotificationPermission, | 329 Extension::kNotificationPermission, |
| 328 Extension::kUnlimitedStoragePermission, | 330 Extension::kUnlimitedStoragePermission, |
| 329 Extension::kWebstorePrivatePermission, | 331 Extension::kWebstorePrivatePermission, |
| 330 }; | 332 }; |
| 331 const size_t Extension::kNumHostedAppPermissions = | 333 const size_t Extension::kNumHostedAppPermissions = |
| 332 arraysize(Extension::kHostedAppPermissionNames); | 334 arraysize(Extension::kHostedAppPermissionNames); |
| 333 | 335 |
| 334 const char* const Extension::kComponentPrivatePermissionNames[] = { | 336 const char* const Extension::kComponentPrivatePermissionNames[] = { |
| 335 Extension::kFileBrowserPrivatePermission, | 337 Extension::kFileBrowserPrivatePermission, |
| 336 Extension::kWebstorePrivatePermission, | 338 Extension::kWebstorePrivatePermission, |
| 339 Extension::kMediaPlayerPrivatePermission, |
| 337 Extension::kChromeosInfoPrivatePermission, | 340 Extension::kChromeosInfoPrivatePermission, |
| 338 }; | 341 }; |
| 339 const size_t Extension::kNumComponentPrivatePermissions = | 342 const size_t Extension::kNumComponentPrivatePermissions = |
| 340 arraysize(Extension::kComponentPrivatePermissionNames); | 343 arraysize(Extension::kComponentPrivatePermissionNames); |
| 341 | 344 |
| 342 // We purposefully don't put this into kPermissionNames. | 345 // We purposefully don't put this into kPermissionNames. |
| 343 const char Extension::kOldUnlimitedStoragePermission[] = "unlimited_storage"; | 346 const char Extension::kOldUnlimitedStoragePermission[] = "unlimited_storage"; |
| 344 | 347 |
| 345 const int Extension::kValidWebExtentSchemes = | 348 const int Extension::kValidWebExtentSchemes = |
| 346 URLPattern::SCHEME_HTTP | URLPattern::SCHEME_HTTPS; | 349 URLPattern::SCHEME_HTTP | URLPattern::SCHEME_HTTPS; |
| (...skipping 2623 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2970 | 2973 |
| 2971 UninstalledExtensionInfo::~UninstalledExtensionInfo() {} | 2974 UninstalledExtensionInfo::~UninstalledExtensionInfo() {} |
| 2972 | 2975 |
| 2973 | 2976 |
| 2974 UnloadedExtensionInfo::UnloadedExtensionInfo( | 2977 UnloadedExtensionInfo::UnloadedExtensionInfo( |
| 2975 const Extension* extension, | 2978 const Extension* extension, |
| 2976 Reason reason) | 2979 Reason reason) |
| 2977 : reason(reason), | 2980 : reason(reason), |
| 2978 already_disabled(false), | 2981 already_disabled(false), |
| 2979 extension(extension) {} | 2982 extension(extension) {} |
| OLD | NEW |