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

Side by Side Diff: chrome/browser/extensions/component_extensions_whitelist/whitelist.cc

Issue 2129413002: Use output_all_resource_defines=false in some chrome/ grd files. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase, address comment, more whitelist.cc cleanup Created 4 years, 5 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/browser_resources.grd ('k') | chrome/browser/extensions/component_loader.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/extensions/component_extensions_whitelist/whitelist.h" 5 #include "chrome/browser/extensions/component_extensions_whitelist/whitelist.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "build/build_config.h" 11 #include "build/build_config.h"
12 #include "chrome/common/extensions/extension_constants.h" 12 #include "chrome/common/extensions/extension_constants.h"
13 #include "chrome/grit/browser_resources.h"
13 #include "extensions/common/constants.h" 14 #include "extensions/common/constants.h"
14 #include "grit/browser_resources.h"
15 15
16 #if defined(ENABLE_APP_LIST) && defined(OS_CHROMEOS) 16 #if defined(ENABLE_APP_LIST) && defined(OS_CHROMEOS)
17 #include "chrome/browser/ui/app_list/google_now_extension.h" 17 #include "chrome/browser/ui/app_list/google_now_extension.h"
18 #endif 18 #endif
19 19
20 #if defined(OS_CHROMEOS) 20 #if defined(OS_CHROMEOS)
21 #include "chrome/browser/chromeos/input_method/component_extension_ime_manager_i mpl.h" 21 #include "chrome/browser/chromeos/input_method/component_extension_ime_manager_i mpl.h"
22 #include "components/chrome_apps/grit/chrome_apps_resources.h" 22 #include "components/chrome_apps/grit/chrome_apps_resources.h"
23 #include "grit/keyboard_resources.h" 23 #include "grit/keyboard_resources.h"
24 #include "ui/file_manager/grit/file_manager_resources.h" 24 #include "ui/file_manager/grit/file_manager_resources.h"
25 #endif 25 #endif
26 26
27 namespace extensions { 27 namespace extensions {
28 28
29 bool IsComponentExtensionWhitelisted(const std::string& extension_id) { 29 bool IsComponentExtensionWhitelisted(const std::string& extension_id) {
30 const char* allowed[] = { 30 const char* const kAllowed[] = {
31 extension_misc::kHotwordSharedModuleId, 31 extension_misc::kHotwordSharedModuleId,
32 extension_misc::kInAppPaymentsSupportAppId, 32 extension_misc::kInAppPaymentsSupportAppId,
33 #if defined(ENABLE_MEDIA_ROUTER) 33 #if defined(ENABLE_MEDIA_ROUTER)
34 extension_misc::kMediaRouterStableExtensionId, 34 extension_misc::kMediaRouterStableExtensionId,
35 #endif // defined(ENABLE_MEDIA_ROUTER) 35 #endif // defined(ENABLE_MEDIA_ROUTER)
36 extension_misc::kPdfExtensionId, 36 extension_misc::kPdfExtensionId,
37 #if defined(OS_CHROMEOS) 37 #if defined(OS_CHROMEOS)
38 extension_misc::kChromeVoxExtensionId, 38 extension_misc::kChromeVoxExtensionId,
39 extension_misc::kSpeechSynthesisExtensionId, 39 extension_misc::kSpeechSynthesisExtensionId,
40 extension_misc::kZIPUnpackerExtensionId, 40 extension_misc::kZIPUnpackerExtensionId,
41 #endif 41 #endif
42 }; 42 };
43 43
44 for (size_t i = 0; i < arraysize(allowed); ++i) { 44 for (size_t i = 0; i < arraysize(kAllowed); ++i) {
45 if (extension_id == allowed[i]) 45 if (extension_id == kAllowed[i])
46 return true; 46 return true;
47 } 47 }
48 48
49 #if defined(ENABLE_APP_LIST) && defined(OS_CHROMEOS) 49 #if defined(ENABLE_APP_LIST) && defined(OS_CHROMEOS)
50 std::string google_now_extension_id; 50 std::string google_now_extension_id;
51 if (GetGoogleNowExtensionId(&google_now_extension_id) && 51 if (GetGoogleNowExtensionId(&google_now_extension_id) &&
52 google_now_extension_id == extension_id) 52 google_now_extension_id == extension_id) {
53 return true; 53 return true;
54 }
54 #endif 55 #endif
55 56
56 #if defined(OS_CHROMEOS) 57 #if defined(OS_CHROMEOS)
57 if (chromeos::ComponentExtensionIMEManagerImpl::IsIMEExtensionID( 58 if (chromeos::ComponentExtensionIMEManagerImpl::IsIMEExtensionID(
58 extension_id)) { 59 extension_id)) {
59 return true; 60 return true;
60 } 61 }
61 #endif 62 #endif
62 LOG(ERROR) << "Component extension with id " << extension_id << " not in " 63 LOG(ERROR) << "Component extension with id " << extension_id << " not in "
63 << "whitelist and is not being loaded as a result."; 64 << "whitelist and is not being loaded as a result.";
64 NOTREACHED(); 65 NOTREACHED();
65 return false; 66 return false;
66 } 67 }
67 68
68 bool IsComponentExtensionWhitelisted(int manifest_resource_id) { 69 bool IsComponentExtensionWhitelisted(int manifest_resource_id) {
69 int allowed[] = { 70 switch (manifest_resource_id) {
70 IDR_BOOKMARKS_MANIFEST, 71 // Please keep the list in alphabetical order.
71 IDR_CHROME_APP_MANIFEST, 72 case IDR_BOOKMARKS_MANIFEST:
72 IDR_CLOUDPRINT_MANIFEST, 73 #if defined(ENABLE_APP_LIST)
73 IDR_CONNECTIVITY_DIAGNOSTICS_MANIFEST, 74 case IDR_CHROME_APP_MANIFEST:
74 IDR_CRYPTOTOKEN_MANIFEST, 75 #endif
75 IDR_FEEDBACK_MANIFEST, 76 case IDR_CLOUDPRINT_MANIFEST:
76 IDR_GAIA_AUTH_MANIFEST, 77 case IDR_CRYPTOTOKEN_MANIFEST:
77 IDR_GOOGLE_NOW_MANIFEST, 78 case IDR_FEEDBACK_MANIFEST:
78 IDR_HANGOUT_SERVICES_MANIFEST, 79 case IDR_GAIA_AUTH_MANIFEST:
79 IDR_HOTWORD_AUDIO_VERIFICATION_MANIFEST, 80 #if defined(ENABLE_GOOGLE_NOW)
80 IDR_HOTWORD_MANIFEST, 81 case IDR_GOOGLE_NOW_MANIFEST:
81 IDR_IDENTITY_API_SCOPE_APPROVAL_MANIFEST, 82 #endif
82 IDR_NETWORK_SPEECH_SYNTHESIS_MANIFEST, 83 #if defined(GOOGLE_CHROME_BUILD) || defined(ENABLE_HANGOUT_SERVICES_EXTENSION)
83 IDR_WALLPAPERMANAGER_MANIFEST, 84 case IDR_HANGOUT_SERVICES_MANIFEST:
84 IDR_WEBSTORE_MANIFEST, 85 #endif
86 #if defined(ENABLE_HOTWORDING)
87 case IDR_HOTWORD_AUDIO_VERIFICATION_MANIFEST:
88 case IDR_HOTWORD_MANIFEST:
89 #endif
90 case IDR_IDENTITY_API_SCOPE_APPROVAL_MANIFEST:
85 #if defined(IMAGE_LOADER_EXTENSION) 91 #if defined(IMAGE_LOADER_EXTENSION)
86 IDR_IMAGE_LOADER_MANIFEST, 92 case IDR_IMAGE_LOADER_MANIFEST:
87 #endif 93 #endif
94 case IDR_NETWORK_SPEECH_SYNTHESIS_MANIFEST:
95 case IDR_WEBSTORE_MANIFEST:
96
88 #if defined(OS_CHROMEOS) 97 #if defined(OS_CHROMEOS)
89 IDR_ARC_SUPPORT_MANIFEST, 98 // Separate ChromeOS list, as it is quite large.
90 IDR_AUDIO_PLAYER_MANIFEST, 99 case IDR_ARC_SUPPORT_MANIFEST:
91 IDR_CHROME_APPS_WEBSTORE_WIDGET_MANIFEST, 100 case IDR_AUDIO_PLAYER_MANIFEST:
92 IDR_CONNECTIVITY_DIAGNOSTICS_LAUNCHER_MANIFEST, 101 case IDR_CHROME_APPS_WEBSTORE_WIDGET_MANIFEST:
93 IDR_CONNECTIVITY_DIAGNOSTICS_MANIFEST, 102 case IDR_CONNECTIVITY_DIAGNOSTICS_LAUNCHER_MANIFEST:
94 IDR_CROSH_BUILTIN_MANIFEST, 103 case IDR_CONNECTIVITY_DIAGNOSTICS_MANIFEST:
95 IDR_DEMO_APP_MANIFEST, 104 case IDR_CROSH_BUILTIN_MANIFEST:
96 IDR_EASY_UNLOCK_MANIFEST, 105 case IDR_DEMO_APP_MANIFEST:
97 IDR_EASY_UNLOCK_MANIFEST_SIGNIN, 106 case IDR_EASY_UNLOCK_MANIFEST:
98 IDR_ECHO_MANIFEST, 107 case IDR_EASY_UNLOCK_MANIFEST_SIGNIN:
99 IDR_FILEMANAGER_MANIFEST, 108 case IDR_ECHO_MANIFEST:
100 IDR_FIRST_RUN_DIALOG_MANIFEST, 109 case IDR_FILEMANAGER_MANIFEST:
101 IDR_GALLERY_MANIFEST, 110 case IDR_FIRST_RUN_DIALOG_MANIFEST:
102 IDR_GENIUS_APP_MANIFEST, 111 case IDR_GALLERY_MANIFEST:
103 IDR_HELP_MANIFEST, 112 case IDR_KEYBOARD_MANIFEST:
104 IDR_KEYBOARD_MANIFEST, 113 case IDR_MOBILE_MANIFEST:
105 IDR_MOBILE_MANIFEST, 114 case IDR_VIDEO_PLAYER_MANIFEST:
106 IDR_QUICKOFFICE_MANIFEST, 115 case IDR_WALLPAPERMANAGER_MANIFEST:
107 IDR_VIDEO_PLAYER_MANIFEST, 116 #if defined(GOOGLE_CHROME_BUILD)
108 IDR_WALLPAPERMANAGER_MANIFEST, 117 case IDR_GENIUS_APP_MANIFEST:
109 #endif 118 case IDR_HELP_MANIFEST:
110 }; 119 case IDR_QUICKOFFICE_MANIFEST:
111 120 #endif // defined(GOOGLE_CHROME_BUILD)
112 for (size_t i = 0; i < arraysize(allowed); ++i) { 121 #endif // defined(OS_CHROMEOS)
113 if (manifest_resource_id == allowed[i])
114 return true; 122 return true;
115 } 123 }
116 124
117 LOG(ERROR) << "Component extension with manifest resource id " 125 LOG(ERROR) << "Component extension with manifest resource id "
118 << manifest_resource_id << " not in whitelist and is not being " 126 << manifest_resource_id << " not in whitelist and is not being "
119 << "loaded as a result."; 127 << "loaded as a result.";
120 NOTREACHED(); 128 NOTREACHED();
121 return false; 129 return false;
122 } 130 }
123 131
124 } // namespace extensions 132 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/browser_resources.grd ('k') | chrome/browser/extensions/component_loader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698