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

Side by Side Diff: third_party/WebKit/Source/core/loader/FrameLoadRequest.h

Issue 2080653002: SameSite: Correctly set requests' initiator for new tabs. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Minimal. 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003, 2006, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2006, 2010 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 13 matching lines...) Expand all
24 */ 24 */
25 25
26 #ifndef FrameLoadRequest_h 26 #ifndef FrameLoadRequest_h
27 #define FrameLoadRequest_h 27 #define FrameLoadRequest_h
28 28
29 #include "core/dom/Document.h" 29 #include "core/dom/Document.h"
30 #include "core/events/Event.h" 30 #include "core/events/Event.h"
31 #include "core/fetch/ResourceLoaderOptions.h" 31 #include "core/fetch/ResourceLoaderOptions.h"
32 #include "core/fetch/SubstituteData.h" 32 #include "core/fetch/SubstituteData.h"
33 #include "core/loader/FrameLoaderTypes.h" 33 #include "core/loader/FrameLoaderTypes.h"
34 #include "platform/network/ResourceRequest.h"
35 34
36 namespace blink { 35 namespace blink {
37 36
38 class HTMLFormElement; 37 class HTMLFormElement;
38 class ResourceRequest;
39 class SubstituteData;
39 40
40 struct FrameLoadRequest { 41 struct CORE_EXPORT FrameLoadRequest {
41 STACK_ALLOCATED(); 42 STACK_ALLOCATED();
42 public: 43 public:
43 explicit FrameLoadRequest(Document* originDocument) 44 explicit FrameLoadRequest(Document* originDocument);
44 : FrameLoadRequest(originDocument, ResourceRequest()) 45 FrameLoadRequest(Document* originDocument, const ResourceRequest&);
45 { 46 FrameLoadRequest(Document* originDocument, const ResourceRequest&, const Ato micString& frameName);
46 } 47 FrameLoadRequest(Document* originDocument, const ResourceRequest&, const Sub stituteData&);
47 48 FrameLoadRequest(Document* originDocument, const ResourceRequest&, const Ato micString& frameName, ContentSecurityPolicyDisposition);
48 FrameLoadRequest(Document* originDocument, const ResourceRequest& resourceRe quest)
49 : FrameLoadRequest(originDocument, resourceRequest, AtomicString())
50 {
51 }
52
53 FrameLoadRequest(Document* originDocument, const ResourceRequest& resourceRe quest, const AtomicString& frameName)
54 : FrameLoadRequest(originDocument, resourceRequest, frameName, CheckCont entSecurityPolicy)
55 {
56 }
57
58 FrameLoadRequest(Document* originDocument, const ResourceRequest& resourceRe quest, const SubstituteData& substituteData)
59 : FrameLoadRequest(originDocument, resourceRequest, AtomicString(), subs tituteData, CheckContentSecurityPolicy)
60 {
61 }
62
63 FrameLoadRequest(Document* originDocument, const ResourceRequest& resourceRe quest, const AtomicString& frameName, ContentSecurityPolicyDisposition shouldChe ckMainWorldContentSecurityPolicy)
64 : FrameLoadRequest(originDocument, resourceRequest, frameName, Substitut eData(), shouldCheckMainWorldContentSecurityPolicy)
65 {
66 }
67 49
68 Document* originDocument() const { return m_originDocument.get(); } 50 Document* originDocument() const { return m_originDocument.get(); }
69 51
70 ResourceRequest& resourceRequest() { return m_resourceRequest; } 52 ResourceRequest& resourceRequest() { return m_resourceRequest; }
71 const ResourceRequest& resourceRequest() const { return m_resourceRequest; } 53 const ResourceRequest& resourceRequest() const { return m_resourceRequest; }
72 54
73 const AtomicString& frameName() const { return m_frameName; } 55 const AtomicString& frameName() const { return m_frameName; }
74 void setFrameName(const AtomicString& frameName) { m_frameName = frameName; } 56 void setFrameName(const AtomicString& frameName) { m_frameName = frameName; }
75 57
76 const SubstituteData& substituteData() const { return m_substituteData; } 58 const SubstituteData& substituteData() const { return m_substituteData; }
(...skipping 12 matching lines...) Expand all
89 71
90 ShouldSendReferrer getShouldSendReferrer() const { return m_shouldSendReferr er; } 72 ShouldSendReferrer getShouldSendReferrer() const { return m_shouldSendReferr er; }
91 void setShouldSendReferrer(ShouldSendReferrer shouldSendReferrer) { m_should SendReferrer = shouldSendReferrer; } 73 void setShouldSendReferrer(ShouldSendReferrer shouldSendReferrer) { m_should SendReferrer = shouldSendReferrer; }
92 74
93 ShouldSetOpener getShouldSetOpener() const { return m_shouldSetOpener; } 75 ShouldSetOpener getShouldSetOpener() const { return m_shouldSetOpener; }
94 void setShouldSetOpener(ShouldSetOpener shouldSetOpener) { m_shouldSetOpener = shouldSetOpener; } 76 void setShouldSetOpener(ShouldSetOpener shouldSetOpener) { m_shouldSetOpener = shouldSetOpener; }
95 77
96 ContentSecurityPolicyDisposition shouldCheckMainWorldContentSecurityPolicy() const { return m_shouldCheckMainWorldContentSecurityPolicy; } 78 ContentSecurityPolicyDisposition shouldCheckMainWorldContentSecurityPolicy() const { return m_shouldCheckMainWorldContentSecurityPolicy; }
97 79
98 private: 80 private:
99 FrameLoadRequest(Document* originDocument, const ResourceRequest& resourceRe quest, const AtomicString& frameName, const SubstituteData& substituteData, Cont entSecurityPolicyDisposition shouldCheckMainWorldContentSecurityPolicy) 81 FrameLoadRequest(Document* originDocument, const ResourceRequest&, const Ato micString& frameName, const SubstituteData&, ContentSecurityPolicyDisposition);
100 : m_originDocument(originDocument) 82
101 , m_resourceRequest(resourceRequest)
102 , m_frameName(frameName)
103 , m_substituteData(substituteData)
104 , m_replacesCurrentItem(false)
105 , m_clientRedirect(ClientRedirectPolicy::NotClientRedirect)
106 , m_shouldSendReferrer(MaybeSendReferrer)
107 , m_shouldSetOpener(MaybeSetOpener)
108 , m_shouldCheckMainWorldContentSecurityPolicy(shouldCheckMainWorldConten tSecurityPolicy)
109 {
110 initializeFetchFlags();
111 if (originDocument)
112 m_resourceRequest.setRequestorOrigin(SecurityOrigin::create(originDo cument->url()));
113 }
114 void initializeFetchFlags()
115 {
116 // These flags are passed to a service worker which controls the page.
117 m_resourceRequest.setFetchRequestMode(WebURLRequest::FetchRequestModeNav igate);
118 m_resourceRequest.setFetchCredentialsMode(WebURLRequest::FetchCredential sModeInclude);
119 m_resourceRequest.setFetchRedirectMode(WebURLRequest::FetchRedirectModeM anual);
120 }
121 Member<Document> m_originDocument; 83 Member<Document> m_originDocument;
122 ResourceRequest m_resourceRequest; 84 ResourceRequest m_resourceRequest;
123 AtomicString m_frameName; 85 AtomicString m_frameName;
124 SubstituteData m_substituteData; 86 SubstituteData m_substituteData;
125 bool m_replacesCurrentItem; 87 bool m_replacesCurrentItem;
126 ClientRedirectPolicy m_clientRedirect; 88 ClientRedirectPolicy m_clientRedirect;
127 Member<Event> m_triggeringEvent; 89 Member<Event> m_triggeringEvent;
128 Member<HTMLFormElement> m_form; 90 Member<HTMLFormElement> m_form;
129 ShouldSendReferrer m_shouldSendReferrer; 91 ShouldSendReferrer m_shouldSendReferrer;
130 ShouldSetOpener m_shouldSetOpener; 92 ShouldSetOpener m_shouldSetOpener;
131 ContentSecurityPolicyDisposition m_shouldCheckMainWorldContentSecurityPolicy ; 93 ContentSecurityPolicyDisposition m_shouldCheckMainWorldContentSecurityPolicy ;
132 }; 94 };
133 95
134 } // namespace blink 96 } // namespace blink
135 97
136 #endif // FrameLoadRequest_h 98 #endif // FrameLoadRequest_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/core.gypi ('k') | third_party/WebKit/Source/core/loader/FrameLoadRequest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698