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: third_party/WebKit/Source/core/loader/FrameLoaderClient.h

Issue 2612793002: Implement ContentSecurityPolicy on the browser-side. (Closed)
Patch Set: Add the TODO and bug ids that was forgotten. Created 3 years, 10 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 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights
3 * reserved. 3 * reserved.
4 * Copyright (C) 2012 Google Inc. All rights reserved. 4 * Copyright (C) 2012 Google Inc. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 9 *
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
(...skipping 13 matching lines...) Expand all
24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31 #ifndef FrameLoaderClient_h 31 #ifndef FrameLoaderClient_h
32 #define FrameLoaderClient_h 32 #define FrameLoaderClient_h
33 33
34 #include <v8.h>
35 #include <memory>
34 #include "core/CoreExport.h" 36 #include "core/CoreExport.h"
35 #include "core/dom/Document.h" 37 #include "core/dom/Document.h"
36 #include "core/dom/IconURL.h" 38 #include "core/dom/IconURL.h"
37 #include "core/frame/FrameClient.h" 39 #include "core/frame/FrameClient.h"
38 #include "core/frame/FrameTypes.h" 40 #include "core/frame/FrameTypes.h"
39 #include "core/html/LinkResource.h" 41 #include "core/html/LinkResource.h"
40 #include "core/loader/FrameLoadRequest.h" 42 #include "core/loader/FrameLoadRequest.h"
41 #include "core/loader/FrameLoaderTypes.h" 43 #include "core/loader/FrameLoaderTypes.h"
42 #include "core/loader/NavigationPolicy.h" 44 #include "core/loader/NavigationPolicy.h"
43 #include "platform/heap/Handle.h" 45 #include "platform/heap/Handle.h"
44 #include "platform/loader/fetch/ResourceLoaderOptions.h" 46 #include "platform/loader/fetch/ResourceLoaderOptions.h"
45 #include "platform/network/ContentSecurityPolicyParsers.h" 47 #include "platform/network/ContentSecurityPolicyParsers.h"
46 #include "platform/network/ResourceLoadPriority.h" 48 #include "platform/network/ResourceLoadPriority.h"
47 #include "platform/weborigin/Referrer.h" 49 #include "platform/weborigin/Referrer.h"
50 #include "public/platform/WebContentSecurityPolicyStruct.h"
48 #include "public/platform/WebEffectiveConnectionType.h" 51 #include "public/platform/WebEffectiveConnectionType.h"
49 #include "public/platform/WebFeaturePolicy.h" 52 #include "public/platform/WebFeaturePolicy.h"
50 #include "public/platform/WebInsecureRequestPolicy.h" 53 #include "public/platform/WebInsecureRequestPolicy.h"
51 #include "public/platform/WebLoadingBehaviorFlag.h" 54 #include "public/platform/WebLoadingBehaviorFlag.h"
52 #include "wtf/Forward.h" 55 #include "wtf/Forward.h"
53 #include "wtf/Vector.h" 56 #include "wtf/Vector.h"
54 #include <memory>
55 #include <v8.h>
56 57
57 namespace blink { 58 namespace blink {
58 59
59 class Document; 60 class Document;
60 class DocumentLoader; 61 class DocumentLoader;
61 struct FrameLoadRequest; 62 struct FrameLoadRequest;
62 class HTMLFormElement; 63 class HTMLFormElement;
63 class HTMLFrameElementBase; 64 class HTMLFrameElementBase;
64 class HTMLFrameOwnerElement; 65 class HTMLFrameOwnerElement;
65 class HTMLMediaElement; 66 class HTMLMediaElement;
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 virtual void didUpdateToUniqueOrigin() {} 270 virtual void didUpdateToUniqueOrigin() {}
270 271
271 virtual void didChangeSandboxFlags(Frame* childFrame, SandboxFlags) {} 272 virtual void didChangeSandboxFlags(Frame* childFrame, SandboxFlags) {}
272 273
273 virtual void didSetFeaturePolicyHeader( 274 virtual void didSetFeaturePolicyHeader(
274 const WebParsedFeaturePolicyHeader& parsedHeader) {} 275 const WebParsedFeaturePolicyHeader& parsedHeader) {}
275 276
276 // Called when a new Content Security Policy is added to the frame's document. 277 // Called when a new Content Security Policy is added to the frame's document.
277 // This can be triggered by handling of HTTP headers, handling of <meta> 278 // This can be triggered by handling of HTTP headers, handling of <meta>
278 // element, or by inheriting CSP from the parent (in case of about:blank). 279 // element, or by inheriting CSP from the parent (in case of about:blank).
279 virtual void didAddContentSecurityPolicy(const String& headerValue, 280 virtual void didAddContentSecurityPolicy(
280 ContentSecurityPolicyHeaderType, 281 const String& headerValue,
281 ContentSecurityPolicyHeaderSource) {} 282 ContentSecurityPolicyHeaderType,
283 ContentSecurityPolicyHeaderSource,
284 const std::vector<WebContentSecurityPolicyPolicy>&) {}
282 285
283 virtual void didChangeFrameOwnerProperties(HTMLFrameElementBase*) {} 286 virtual void didChangeFrameOwnerProperties(HTMLFrameElementBase*) {}
284 287
285 virtual void dispatchWillStartUsingPeerConnectionHandler( 288 virtual void dispatchWillStartUsingPeerConnectionHandler(
286 WebRTCPeerConnectionHandler*) {} 289 WebRTCPeerConnectionHandler*) {}
287 290
288 virtual bool allowWebGL(bool enabledPerSettings) { 291 virtual bool allowWebGL(bool enabledPerSettings) {
289 return enabledPerSettings; 292 return enabledPerSettings;
290 } 293 }
291 294
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 virtual KURL overrideFlashEmbedWithHTML(const KURL&) { return KURL(); } 341 virtual KURL overrideFlashEmbedWithHTML(const KURL&) { return KURL(); }
339 342
340 virtual BlameContext* frameBlameContext() { return nullptr; } 343 virtual BlameContext* frameBlameContext() { return nullptr; }
341 344
342 virtual void setHasReceivedUserGesture() {} 345 virtual void setHasReceivedUserGesture() {}
343 }; 346 };
344 347
345 } // namespace blink 348 } // namespace blink
346 349
347 #endif // FrameLoaderClient_h 350 #endif // FrameLoaderClient_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698