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

Side by Side Diff: content/browser/loader/resource_request_info_impl.h

Issue 1914593002: Limit requests for which link headers can install service workers to secure contexts. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add more tests Created 4 years, 6 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_ 5 #ifndef CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_
6 #define CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_ 6 #define CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 10
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 bool enable_upload_progress, 61 bool enable_upload_progress,
62 bool do_not_prompt_for_login, 62 bool do_not_prompt_for_login,
63 blink::WebReferrerPolicy referrer_policy, 63 blink::WebReferrerPolicy referrer_policy,
64 blink::WebPageVisibilityState visibility_state, 64 blink::WebPageVisibilityState visibility_state,
65 ResourceContext* context, 65 ResourceContext* context,
66 base::WeakPtr<ResourceMessageFilter> filter, 66 base::WeakPtr<ResourceMessageFilter> filter,
67 bool report_raw_headers, 67 bool report_raw_headers,
68 bool is_async, 68 bool is_async,
69 bool is_using_lofi, 69 bool is_using_lofi,
70 const std::string& original_headers, 70 const std::string& original_headers,
71 const scoped_refptr<ResourceRequestBodyImpl> body); 71 const scoped_refptr<ResourceRequestBodyImpl> body,
72 bool initiated_in_secure_context);
72 ~ResourceRequestInfoImpl() override; 73 ~ResourceRequestInfoImpl() override;
73 74
74 // ResourceRequestInfo implementation: 75 // ResourceRequestInfo implementation:
75 WebContentsGetter GetWebContentsGetterForRequest() const override; 76 WebContentsGetter GetWebContentsGetterForRequest() const override;
76 ResourceContext* GetContext() const override; 77 ResourceContext* GetContext() const override;
77 int GetChildID() const override; 78 int GetChildID() const override;
78 int GetRouteID() const override; 79 int GetRouteID() const override;
79 int GetOriginPID() const override; 80 int GetOriginPID() const override;
80 int GetRenderFrameID() const override; 81 int GetRenderFrameID() const override;
81 bool IsMainFrame() const override; 82 bool IsMainFrame() const override;
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 183
183 bool do_not_prompt_for_login() const { return do_not_prompt_for_login_; } 184 bool do_not_prompt_for_login() const { return do_not_prompt_for_login_; }
184 void set_do_not_prompt_for_login(bool do_not_prompt) { 185 void set_do_not_prompt_for_login(bool do_not_prompt) {
185 do_not_prompt_for_login_ = do_not_prompt; 186 do_not_prompt_for_login_ = do_not_prompt;
186 } 187 }
187 const std::string& original_headers() const { return original_headers_; } 188 const std::string& original_headers() const { return original_headers_; }
188 189
189 const scoped_refptr<ResourceRequestBodyImpl>& body() const { return body_; } 190 const scoped_refptr<ResourceRequestBodyImpl>& body() const { return body_; }
190 void ResetBody(); 191 void ResetBody();
191 192
193 bool initiated_in_secure_context() const {
194 return initiated_in_secure_context_;
195 }
196 void set_initiated_in_secure_context_for_testing(bool secure) {
197 initiated_in_secure_context_ = secure;
198 }
199
192 private: 200 private:
193 FRIEND_TEST_ALL_PREFIXES(ResourceDispatcherHostTest, 201 FRIEND_TEST_ALL_PREFIXES(ResourceDispatcherHostTest,
194 DeletedFilterDetached); 202 DeletedFilterDetached);
195 FRIEND_TEST_ALL_PREFIXES(ResourceDispatcherHostTest, 203 FRIEND_TEST_ALL_PREFIXES(ResourceDispatcherHostTest,
196 DeletedFilterDetachedRedirect); 204 DeletedFilterDetachedRedirect);
197 // Non-owning, may be NULL. 205 // Non-owning, may be NULL.
198 CrossSiteResourceHandler* cross_site_handler_; 206 CrossSiteResourceHandler* cross_site_handler_;
199 DetachableResourceHandler* detachable_handler_; 207 DetachableResourceHandler* detachable_handler_;
200 208
201 int process_type_; 209 int process_type_;
(...skipping 22 matching lines...) Expand all
224 blink::WebPageVisibilityState visibility_state_; 232 blink::WebPageVisibilityState visibility_state_;
225 ResourceContext* context_; 233 ResourceContext* context_;
226 // The filter might be deleted without deleting this object if the process 234 // The filter might be deleted without deleting this object if the process
227 // exits during a transfer. 235 // exits during a transfer.
228 base::WeakPtr<ResourceMessageFilter> filter_; 236 base::WeakPtr<ResourceMessageFilter> filter_;
229 bool report_raw_headers_; 237 bool report_raw_headers_;
230 bool is_async_; 238 bool is_async_;
231 bool is_using_lofi_; 239 bool is_using_lofi_;
232 const std::string original_headers_; 240 const std::string original_headers_;
233 scoped_refptr<ResourceRequestBodyImpl> body_; 241 scoped_refptr<ResourceRequestBodyImpl> body_;
242 bool initiated_in_secure_context_;
234 243
235 DISALLOW_COPY_AND_ASSIGN(ResourceRequestInfoImpl); 244 DISALLOW_COPY_AND_ASSIGN(ResourceRequestInfoImpl);
236 }; 245 };
237 246
238 } // namespace content 247 } // namespace content
239 248
240 #endif // CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_ 249 #endif // CONTENT_BROWSER_LOADER_RESOURCE_REQUEST_INFO_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698