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

Side by Side Diff: chrome/browser/child_process_security_policy_unittest.cc

Issue 113488: Rename RendererSecurityPolicy and move it to browser\. No code change. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 <string> 5 #include <string>
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "chrome/browser/renderer_host/renderer_security_policy.h" 9 #include "chrome/browser/child_process_security_policy.h"
10 #include "chrome/common/url_constants.h" 10 #include "chrome/common/url_constants.h"
11 #include "net/url_request/url_request.h" 11 #include "net/url_request/url_request.h"
12 #include "net/url_request/url_request_test_job.h" 12 #include "net/url_request/url_request_test_job.h"
13 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
14 14
15 class RendererSecurityPolicyTest : public testing::Test { 15 class ChildProcessSecurityPolicyTest : public testing::Test {
16 protected: 16 protected:
17 // testing::Test 17 // testing::Test
18 virtual void SetUp() { 18 virtual void SetUp() {
19 // In the real world, "chrome:" is a handled scheme. 19 // In the real world, "chrome:" is a handled scheme.
20 URLRequest::RegisterProtocolFactory(chrome::kChromeUIScheme, 20 URLRequest::RegisterProtocolFactory(chrome::kChromeUIScheme,
21 &URLRequestTestJob::Factory); 21 &URLRequestTestJob::Factory);
22 } 22 }
23 virtual void TearDown() { 23 virtual void TearDown() {
24 URLRequest::RegisterProtocolFactory(chrome::kChromeUIScheme, NULL); 24 URLRequest::RegisterProtocolFactory(chrome::kChromeUIScheme, NULL);
25 } 25 }
26 }; 26 };
27 27
28 static int kRendererID = 42; 28 static int kRendererID = 42;
29 29
30 TEST_F(RendererSecurityPolicyTest, IsWebSafeSchemeTest) { 30 TEST_F(ChildProcessSecurityPolicyTest, IsWebSafeSchemeTest) {
31 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 31 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
32 32
33 EXPECT_TRUE(p->IsWebSafeScheme("http")); 33 EXPECT_TRUE(p->IsWebSafeScheme("http"));
34 EXPECT_TRUE(p->IsWebSafeScheme("https")); 34 EXPECT_TRUE(p->IsWebSafeScheme("https"));
35 EXPECT_TRUE(p->IsWebSafeScheme("ftp")); 35 EXPECT_TRUE(p->IsWebSafeScheme("ftp"));
36 EXPECT_TRUE(p->IsWebSafeScheme("data")); 36 EXPECT_TRUE(p->IsWebSafeScheme("data"));
37 EXPECT_TRUE(p->IsWebSafeScheme("feed")); 37 EXPECT_TRUE(p->IsWebSafeScheme("feed"));
38 EXPECT_TRUE(p->IsWebSafeScheme("chrome-extension")); 38 EXPECT_TRUE(p->IsWebSafeScheme("chrome-extension"));
39 39
40 EXPECT_FALSE(p->IsWebSafeScheme("registered-web-safe-scheme")); 40 EXPECT_FALSE(p->IsWebSafeScheme("registered-web-safe-scheme"));
41 p->RegisterWebSafeScheme("registered-web-safe-scheme"); 41 p->RegisterWebSafeScheme("registered-web-safe-scheme");
42 EXPECT_TRUE(p->IsWebSafeScheme("registered-web-safe-scheme")); 42 EXPECT_TRUE(p->IsWebSafeScheme("registered-web-safe-scheme"));
43 } 43 }
44 44
45 TEST_F(RendererSecurityPolicyTest, IsPseudoSchemeTest) { 45 TEST_F(ChildProcessSecurityPolicyTest, IsPseudoSchemeTest) {
46 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 46 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
47 47
48 EXPECT_TRUE(p->IsPseudoScheme("about")); 48 EXPECT_TRUE(p->IsPseudoScheme("about"));
49 EXPECT_TRUE(p->IsPseudoScheme("javascript")); 49 EXPECT_TRUE(p->IsPseudoScheme("javascript"));
50 EXPECT_TRUE(p->IsPseudoScheme("view-source")); 50 EXPECT_TRUE(p->IsPseudoScheme("view-source"));
51 51
52 EXPECT_FALSE(p->IsPseudoScheme("registered-psuedo-scheme")); 52 EXPECT_FALSE(p->IsPseudoScheme("registered-psuedo-scheme"));
53 p->RegisterPseudoScheme("registered-psuedo-scheme"); 53 p->RegisterPseudoScheme("registered-psuedo-scheme");
54 EXPECT_TRUE(p->IsPseudoScheme("registered-psuedo-scheme")); 54 EXPECT_TRUE(p->IsPseudoScheme("registered-psuedo-scheme"));
55 } 55 }
56 56
57 TEST_F(RendererSecurityPolicyTest, StandardSchemesTest) { 57 TEST_F(ChildProcessSecurityPolicyTest, StandardSchemesTest) {
58 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 58 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
59 59
60 p->Add(kRendererID); 60 p->Add(kRendererID);
61 61
62 // Safe 62 // Safe
63 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("http://www.google.com/"))); 63 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("http://www.google.com/")));
64 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("https://www.paypal.com/"))); 64 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("https://www.paypal.com/")));
65 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("ftp://ftp.gnu.org/"))); 65 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("ftp://ftp.gnu.org/")));
66 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("data:text/html,<b>Hi</b>"))); 66 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("data:text/html,<b>Hi</b>")));
67 EXPECT_TRUE(p->CanRequestURL(kRendererID, 67 EXPECT_TRUE(p->CanRequestURL(kRendererID,
68 GURL("view-source:http://www.google.com/"))); 68 GURL("view-source:http://www.google.com/")));
69 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("chrome-extension://xy/z"))); 69 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("chrome-extension://xy/z")));
70 70
71 // Dangerous 71 // Dangerous
72 EXPECT_FALSE(p->CanRequestURL(kRendererID, 72 EXPECT_FALSE(p->CanRequestURL(kRendererID,
73 GURL("file:///etc/passwd"))); 73 GURL("file:///etc/passwd")));
74 EXPECT_FALSE(p->CanRequestURL(kRendererID, 74 EXPECT_FALSE(p->CanRequestURL(kRendererID,
75 GURL("view-cache:http://www.google.com/"))); 75 GURL("view-cache:http://www.google.com/")));
76 EXPECT_FALSE(p->CanRequestURL(kRendererID, 76 EXPECT_FALSE(p->CanRequestURL(kRendererID,
77 GURL("chrome://foo/bar"))); 77 GURL("chrome://foo/bar")));
78 78
79 p->Remove(kRendererID); 79 p->Remove(kRendererID);
80 } 80 }
81 81
82 TEST_F(RendererSecurityPolicyTest, AboutTest) { 82 TEST_F(ChildProcessSecurityPolicyTest, AboutTest) {
83 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 83 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
84 84
85 p->Add(kRendererID); 85 p->Add(kRendererID);
86 86
87 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("about:blank"))); 87 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("about:blank")));
88 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("about:BlAnK"))); 88 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("about:BlAnK")));
89 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("aBouT:BlAnK"))); 89 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("aBouT:BlAnK")));
90 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("aBouT:blank"))); 90 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("aBouT:blank")));
91 91
92 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:memory"))); 92 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:memory")));
93 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:crash"))); 93 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:crash")));
(...skipping 12 matching lines...) Expand all
106 106
107 p->GrantRequestURL(kRendererID, GURL("about:cache")); 107 p->GrantRequestURL(kRendererID, GURL("about:cache"));
108 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:cache"))); 108 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:cache")));
109 109
110 p->GrantRequestURL(kRendererID, GURL("about:hang")); 110 p->GrantRequestURL(kRendererID, GURL("about:hang"));
111 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:hang"))); 111 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("about:hang")));
112 112
113 p->Remove(kRendererID); 113 p->Remove(kRendererID);
114 } 114 }
115 115
116 TEST_F(RendererSecurityPolicyTest, JavaScriptTest) { 116 TEST_F(ChildProcessSecurityPolicyTest, JavaScriptTest) {
117 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 117 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
118 118
119 p->Add(kRendererID); 119 p->Add(kRendererID);
120 120
121 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("javascript:alert('xss')"))); 121 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("javascript:alert('xss')")));
122 p->GrantRequestURL(kRendererID, GURL("javascript:alert('xss')")); 122 p->GrantRequestURL(kRendererID, GURL("javascript:alert('xss')"));
123 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("javascript:alert('xss')"))); 123 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("javascript:alert('xss')")));
124 124
125 p->Remove(kRendererID); 125 p->Remove(kRendererID);
126 } 126 }
127 127
128 TEST_F(RendererSecurityPolicyTest, RegisterWebSafeSchemeTest) { 128 TEST_F(ChildProcessSecurityPolicyTest, RegisterWebSafeSchemeTest) {
129 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 129 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
130 130
131 p->Add(kRendererID); 131 p->Add(kRendererID);
132 132
133 // Currently, "asdf" is destined for ShellExecute, so it is allowed. 133 // Currently, "asdf" is destined for ShellExecute, so it is allowed.
134 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers"))); 134 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers")));
135 135
136 // Once we register a ProtocolFactory for "asdf", we default to deny. 136 // Once we register a ProtocolFactory for "asdf", we default to deny.
137 URLRequest::RegisterProtocolFactory("asdf", &URLRequestTestJob::Factory); 137 URLRequest::RegisterProtocolFactory("asdf", &URLRequestTestJob::Factory);
138 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("asdf:rockers"))); 138 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("asdf:rockers")));
139 139
140 // We can allow new schemes by adding them to the whitelist. 140 // We can allow new schemes by adding them to the whitelist.
141 p->RegisterWebSafeScheme("asdf"); 141 p->RegisterWebSafeScheme("asdf");
142 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers"))); 142 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers")));
143 143
144 // Cleanup. 144 // Cleanup.
145 URLRequest::RegisterProtocolFactory("asdf", NULL); 145 URLRequest::RegisterProtocolFactory("asdf", NULL);
146 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers"))); 146 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("asdf:rockers")));
147 147
148 p->Remove(kRendererID); 148 p->Remove(kRendererID);
149 } 149 }
150 150
151 TEST_F(RendererSecurityPolicyTest, CanServiceCommandsTest) { 151 TEST_F(ChildProcessSecurityPolicyTest, CanServiceCommandsTest) {
152 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 152 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
153 153
154 p->Add(kRendererID); 154 p->Add(kRendererID);
155 155
156 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd"))); 156 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd")));
157 p->GrantRequestURL(kRendererID, GURL("file:///etc/passwd")); 157 p->GrantRequestURL(kRendererID, GURL("file:///etc/passwd"));
158 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd"))); 158 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd")));
159 159
160 // We should forget our state if we repeat a renderer id. 160 // We should forget our state if we repeat a renderer id.
161 p->Remove(kRendererID); 161 p->Remove(kRendererID);
162 p->Add(kRendererID); 162 p->Add(kRendererID);
163 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd"))); 163 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd")));
164 p->Remove(kRendererID); 164 p->Remove(kRendererID);
165 } 165 }
166 166
167 TEST_F(RendererSecurityPolicyTest, ViewSource) { 167 TEST_F(ChildProcessSecurityPolicyTest, ViewSource) {
168 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 168 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
169 169
170 p->Add(kRendererID); 170 p->Add(kRendererID);
171 171
172 // View source is determined by the embedded scheme. 172 // View source is determined by the embedded scheme.
173 EXPECT_TRUE(p->CanRequestURL(kRendererID, 173 EXPECT_TRUE(p->CanRequestURL(kRendererID,
174 GURL("view-source:http://www.google.com/"))); 174 GURL("view-source:http://www.google.com/")));
175 EXPECT_FALSE(p->CanRequestURL(kRendererID, 175 EXPECT_FALSE(p->CanRequestURL(kRendererID,
176 GURL("view-source:file:///etc/passwd"))); 176 GURL("view-source:file:///etc/passwd")));
177 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd"))); 177 EXPECT_FALSE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd")));
178 178
179 p->GrantRequestURL(kRendererID, GURL("view-source:file:///etc/passwd")); 179 p->GrantRequestURL(kRendererID, GURL("view-source:file:///etc/passwd"));
180 // View source needs to be able to request the embedded scheme. 180 // View source needs to be able to request the embedded scheme.
181 EXPECT_TRUE(p->CanRequestURL(kRendererID, 181 EXPECT_TRUE(p->CanRequestURL(kRendererID,
182 GURL("view-source:file:///etc/passwd"))); 182 GURL("view-source:file:///etc/passwd")));
183 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd"))); 183 EXPECT_TRUE(p->CanRequestURL(kRendererID, GURL("file:///etc/passwd")));
184 184
185 p->Remove(kRendererID); 185 p->Remove(kRendererID);
186 } 186 }
187 187
188 TEST_F(RendererSecurityPolicyTest, CanUploadFiles) { 188 TEST_F(ChildProcessSecurityPolicyTest, CanUploadFiles) {
189 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 189 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
190 190
191 p->Add(kRendererID); 191 p->Add(kRendererID);
192 192
193 EXPECT_FALSE(p->CanUploadFile(kRendererID, 193 EXPECT_FALSE(p->CanUploadFile(kRendererID,
194 FilePath(FILE_PATH_LITERAL("/etc/passwd")))); 194 FilePath(FILE_PATH_LITERAL("/etc/passwd"))));
195 p->GrantUploadFile(kRendererID, FilePath(FILE_PATH_LITERAL("/etc/passwd"))); 195 p->GrantUploadFile(kRendererID, FilePath(FILE_PATH_LITERAL("/etc/passwd")));
196 EXPECT_TRUE(p->CanUploadFile(kRendererID, 196 EXPECT_TRUE(p->CanUploadFile(kRendererID,
197 FilePath(FILE_PATH_LITERAL("/etc/passwd")))); 197 FilePath(FILE_PATH_LITERAL("/etc/passwd"))));
198 EXPECT_FALSE(p->CanUploadFile(kRendererID, 198 EXPECT_FALSE(p->CanUploadFile(kRendererID,
199 FilePath(FILE_PATH_LITERAL("/etc/shadow")))); 199 FilePath(FILE_PATH_LITERAL("/etc/shadow"))));
200 200
201 p->Remove(kRendererID); 201 p->Remove(kRendererID);
202 p->Add(kRendererID); 202 p->Add(kRendererID);
203 203
204 EXPECT_FALSE(p->CanUploadFile(kRendererID, 204 EXPECT_FALSE(p->CanUploadFile(kRendererID,
205 FilePath(FILE_PATH_LITERAL("/etc/passwd")))); 205 FilePath(FILE_PATH_LITERAL("/etc/passwd"))));
206 EXPECT_FALSE(p->CanUploadFile(kRendererID, 206 EXPECT_FALSE(p->CanUploadFile(kRendererID,
207 FilePath(FILE_PATH_LITERAL("/etc/shadow")))); 207 FilePath(FILE_PATH_LITERAL("/etc/shadow"))));
208 208
209 p->Remove(kRendererID); 209 p->Remove(kRendererID);
210 } 210 }
211 211
212 TEST_F(RendererSecurityPolicyTest, CanServiceInspectElement) { 212 TEST_F(ChildProcessSecurityPolicyTest, CanServiceInspectElement) {
213 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 213 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
214 214
215 GURL url("chrome://inspector/inspector.html"); 215 GURL url("chrome://inspector/inspector.html");
216 216
217 p->Add(kRendererID); 217 p->Add(kRendererID);
218 218
219 EXPECT_FALSE(p->CanRequestURL(kRendererID, url)); 219 EXPECT_FALSE(p->CanRequestURL(kRendererID, url));
220 p->GrantInspectElement(kRendererID); 220 p->GrantInspectElement(kRendererID);
221 EXPECT_TRUE(p->CanRequestURL(kRendererID, url)); 221 EXPECT_TRUE(p->CanRequestURL(kRendererID, url));
222 222
223 p->Remove(kRendererID); 223 p->Remove(kRendererID);
224 } 224 }
225 225
226 TEST_F(RendererSecurityPolicyTest, CanServiceDOMUIBindings) { 226 TEST_F(ChildProcessSecurityPolicyTest, CanServiceDOMUIBindings) {
227 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 227 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
228 228
229 GURL url("chrome://thumb/http://www.google.com/"); 229 GURL url("chrome://thumb/http://www.google.com/");
230 230
231 p->Add(kRendererID); 231 p->Add(kRendererID);
232 232
233 EXPECT_FALSE(p->HasDOMUIBindings(kRendererID)); 233 EXPECT_FALSE(p->HasDOMUIBindings(kRendererID));
234 EXPECT_FALSE(p->CanRequestURL(kRendererID, url)); 234 EXPECT_FALSE(p->CanRequestURL(kRendererID, url));
235 p->GrantDOMUIBindings(kRendererID); 235 p->GrantDOMUIBindings(kRendererID);
236 EXPECT_TRUE(p->HasDOMUIBindings(kRendererID)); 236 EXPECT_TRUE(p->HasDOMUIBindings(kRendererID));
237 EXPECT_TRUE(p->CanRequestURL(kRendererID, url)); 237 EXPECT_TRUE(p->CanRequestURL(kRendererID, url));
238 238
239 p->Remove(kRendererID); 239 p->Remove(kRendererID);
240 } 240 }
241 241
242 TEST_F(RendererSecurityPolicyTest, RemoveRace) { 242 TEST_F(ChildProcessSecurityPolicyTest, RemoveRace) {
243 RendererSecurityPolicy* p = RendererSecurityPolicy::GetInstance(); 243 ChildProcessSecurityPolicy* p = ChildProcessSecurityPolicy::GetInstance();
244 244
245 GURL url("file:///etc/passwd"); 245 GURL url("file:///etc/passwd");
246 FilePath file(FILE_PATH_LITERAL("/etc/passwd")); 246 FilePath file(FILE_PATH_LITERAL("/etc/passwd"));
247 247
248 p->Add(kRendererID); 248 p->Add(kRendererID);
249 249
250 p->GrantRequestURL(kRendererID, url); 250 p->GrantRequestURL(kRendererID, url);
251 p->GrantUploadFile(kRendererID, file); 251 p->GrantUploadFile(kRendererID, file);
252 p->GrantDOMUIBindings(kRendererID); 252 p->GrantDOMUIBindings(kRendererID);
253 253
254 EXPECT_TRUE(p->CanRequestURL(kRendererID, url)); 254 EXPECT_TRUE(p->CanRequestURL(kRendererID, url));
255 EXPECT_TRUE(p->CanUploadFile(kRendererID, file)); 255 EXPECT_TRUE(p->CanUploadFile(kRendererID, file));
256 EXPECT_TRUE(p->HasDOMUIBindings(kRendererID)); 256 EXPECT_TRUE(p->HasDOMUIBindings(kRendererID));
257 257
258 p->Remove(kRendererID); 258 p->Remove(kRendererID);
259 259
260 // Renderers are added and removed on the UI thread, but the policy can be 260 // Renderers are added and removed on the UI thread, but the policy can be
261 // queried on the IO thread. The RendererSecurityPolicy needs to be prepared 261 // queried on the IO thread. The ChildProcessSecurityPolicy needs to be prepa red
262 // to answer policy questions about renderers who no longer exist. 262 // to answer policy questions about renderers who no longer exist.
263 263
264 // In this case, we default to secure behavior. 264 // In this case, we default to secure behavior.
265 EXPECT_FALSE(p->CanRequestURL(kRendererID, url)); 265 EXPECT_FALSE(p->CanRequestURL(kRendererID, url));
266 EXPECT_FALSE(p->CanUploadFile(kRendererID, file)); 266 EXPECT_FALSE(p->CanUploadFile(kRendererID, file));
267 EXPECT_FALSE(p->HasDOMUIBindings(kRendererID)); 267 EXPECT_FALSE(p->HasDOMUIBindings(kRendererID));
268 } 268 }
OLDNEW
« no previous file with comments | « chrome/browser/child_process_security_policy.cc ('k') | chrome/browser/renderer_host/browser_render_process_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698