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

Side by Side Diff: content/common/frame_messages.h

Issue 2046733003: Replicate WebInsecureRequestPolicy instead of a bool for strict mixed content checks. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@securitycontext
Patch Set: alexmos@ 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
« no previous file with comments | « content/common/DEPS ('k') | content/common/frame_replication_state.h » ('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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 // IPC messages for interacting with frames. 5 // IPC messages for interacting with frames.
6 // Multiply-included message file, hence no include guard. 6 // Multiply-included message file, hence no include guard.
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 22 matching lines...) Expand all
33 #include "content/public/common/javascript_message_type.h" 33 #include "content/public/common/javascript_message_type.h"
34 #include "content/public/common/page_importance_signals.h" 34 #include "content/public/common/page_importance_signals.h"
35 #include "content/public/common/page_state.h" 35 #include "content/public/common/page_state.h"
36 #include "content/public/common/resource_response.h" 36 #include "content/public/common/resource_response.h"
37 #include "content/public/common/stop_find_action.h" 37 #include "content/public/common/stop_find_action.h"
38 #include "content/public/common/three_d_api_types.h" 38 #include "content/public/common/three_d_api_types.h"
39 #include "content/public/common/transition_element.h" 39 #include "content/public/common/transition_element.h"
40 #include "ipc/ipc_message_macros.h" 40 #include "ipc/ipc_message_macros.h"
41 #include "ipc/ipc_platform_file.h" 41 #include "ipc/ipc_platform_file.h"
42 #include "third_party/WebKit/public/platform/WebFocusType.h" 42 #include "third_party/WebKit/public/platform/WebFocusType.h"
43 #include "third_party/WebKit/public/platform/WebInsecureRequestPolicy.h"
43 #include "third_party/WebKit/public/web/WebFindOptions.h" 44 #include "third_party/WebKit/public/web/WebFindOptions.h"
44 #include "third_party/WebKit/public/web/WebFrameOwnerProperties.h" 45 #include "third_party/WebKit/public/web/WebFrameOwnerProperties.h"
45 #include "third_party/WebKit/public/web/WebFrameSerializerCacheControlPolicy.h" 46 #include "third_party/WebKit/public/web/WebFrameSerializerCacheControlPolicy.h"
46 #include "third_party/WebKit/public/web/WebTreeScopeType.h" 47 #include "third_party/WebKit/public/web/WebTreeScopeType.h"
47 #include "ui/gfx/geometry/rect.h" 48 #include "ui/gfx/geometry/rect.h"
48 #include "ui/gfx/geometry/rect_f.h" 49 #include "ui/gfx/geometry/rect_f.h"
49 #include "ui/gfx/ipc/gfx_param_traits.h" 50 #include "ui/gfx/ipc/gfx_param_traits.h"
50 #include "ui/gfx/ipc/skia/gfx_skia_param_traits.h" 51 #include "ui/gfx/ipc/skia/gfx_skia_param_traits.h"
51 #include "url/gurl.h" 52 #include "url/gurl.h"
52 #include "url/origin.h" 53 #include "url/origin.h"
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
283 // RenderFrameProxies. 284 // RenderFrameProxies.
284 IPC_STRUCT_MEMBER(url::Origin, origin) 285 IPC_STRUCT_MEMBER(url::Origin, origin)
285 286
286 // How navigation metrics starting on UI action for this load should be 287 // How navigation metrics starting on UI action for this load should be
287 // reported. 288 // reported.
288 IPC_STRUCT_MEMBER(FrameMsg_UILoadMetricsReportType::Value, report_type) 289 IPC_STRUCT_MEMBER(FrameMsg_UILoadMetricsReportType::Value, report_type)
289 290
290 // Timestamp at which the UI action that triggered the navigation originated. 291 // Timestamp at which the UI action that triggered the navigation originated.
291 IPC_STRUCT_MEMBER(base::TimeTicks, ui_timestamp) 292 IPC_STRUCT_MEMBER(base::TimeTicks, ui_timestamp)
292 293
293 // True if the document for the load is enforcing strict mixed content 294 // The insecure request policy the document for the load is enforcing.
294 // checking. 295 IPC_STRUCT_MEMBER(blink::WebInsecureRequestPolicy, insecure_request_policy)
295 IPC_STRUCT_MEMBER(bool, should_enforce_strict_mixed_content_checking)
296 296
297 // True if the document for the load is a unique origin that should be 297 // True if the document for the load is a unique origin that should be
298 // considered potentially trustworthy. 298 // considered potentially trustworthy.
299 IPC_STRUCT_MEMBER(bool, has_potentially_trustworthy_unique_origin) 299 IPC_STRUCT_MEMBER(bool, has_potentially_trustworthy_unique_origin)
300 300
301 // True if the navigation originated as an srcdoc attribute. 301 // True if the navigation originated as an srcdoc attribute.
302 IPC_STRUCT_MEMBER(bool, is_srcdoc) 302 IPC_STRUCT_MEMBER(bool, is_srcdoc)
303 IPC_STRUCT_END() 303 IPC_STRUCT_END()
304 304
305 IPC_STRUCT_BEGIN(FrameMsg_PostMessage_Params) 305 IPC_STRUCT_BEGIN(FrameMsg_PostMessage_Params)
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 #endif 384 #endif
385 IPC_STRUCT_TRAITS_END() 385 IPC_STRUCT_TRAITS_END()
386 386
387 IPC_STRUCT_TRAITS_BEGIN(content::FrameReplicationState) 387 IPC_STRUCT_TRAITS_BEGIN(content::FrameReplicationState)
388 IPC_STRUCT_TRAITS_MEMBER(origin) 388 IPC_STRUCT_TRAITS_MEMBER(origin)
389 IPC_STRUCT_TRAITS_MEMBER(sandbox_flags) 389 IPC_STRUCT_TRAITS_MEMBER(sandbox_flags)
390 IPC_STRUCT_TRAITS_MEMBER(name) 390 IPC_STRUCT_TRAITS_MEMBER(name)
391 IPC_STRUCT_TRAITS_MEMBER(unique_name) 391 IPC_STRUCT_TRAITS_MEMBER(unique_name)
392 IPC_STRUCT_TRAITS_MEMBER(accumulated_csp_headers) 392 IPC_STRUCT_TRAITS_MEMBER(accumulated_csp_headers)
393 IPC_STRUCT_TRAITS_MEMBER(scope) 393 IPC_STRUCT_TRAITS_MEMBER(scope)
394 IPC_STRUCT_TRAITS_MEMBER(should_enforce_strict_mixed_content_checking) 394 IPC_STRUCT_TRAITS_MEMBER(insecure_request_policy)
395 IPC_STRUCT_TRAITS_MEMBER(has_potentially_trustworthy_unique_origin) 395 IPC_STRUCT_TRAITS_MEMBER(has_potentially_trustworthy_unique_origin)
396 IPC_STRUCT_TRAITS_END() 396 IPC_STRUCT_TRAITS_END()
397 397
398 IPC_STRUCT_BEGIN(FrameMsg_NewFrame_WidgetParams) 398 IPC_STRUCT_BEGIN(FrameMsg_NewFrame_WidgetParams)
399 // Gives the routing ID for the RenderWidget that will be attached to the 399 // Gives the routing ID for the RenderWidget that will be attached to the
400 // new RenderFrame. If the RenderFrame does not need a RenderWidget, this 400 // new RenderFrame. If the RenderFrame does not need a RenderWidget, this
401 // is MSG_ROUTING_NONE and the other parameters are not read. 401 // is MSG_ROUTING_NONE and the other parameters are not read.
402 IPC_STRUCT_MEMBER(int, routing_id) 402 IPC_STRUCT_MEMBER(int, routing_id)
403 403
404 // Tells the new RenderWidget whether it is initially hidden. 404 // Tells the new RenderWidget whether it is initially hidden.
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after
784 std::string /* name */, 784 std::string /* name */,
785 std::string /* unique_name */) 785 std::string /* unique_name */)
786 786
787 // Updates replicated ContentSecurityPolicy in a frame proxy. 787 // Updates replicated ContentSecurityPolicy in a frame proxy.
788 IPC_MESSAGE_ROUTED1(FrameMsg_AddContentSecurityPolicy, 788 IPC_MESSAGE_ROUTED1(FrameMsg_AddContentSecurityPolicy,
789 content::ContentSecurityPolicyHeader) 789 content::ContentSecurityPolicyHeader)
790 790
791 // Resets ContentSecurityPolicy in a frame proxy / in RemoteSecurityContext. 791 // Resets ContentSecurityPolicy in a frame proxy / in RemoteSecurityContext.
792 IPC_MESSAGE_ROUTED0(FrameMsg_ResetContentSecurityPolicy) 792 IPC_MESSAGE_ROUTED0(FrameMsg_ResetContentSecurityPolicy)
793 793
794 // Update a proxy's replicated enforcement of strict mixed content 794 // Update a proxy's replicated enforcement of insecure request policy.
795 // checking. Used when the frame's mixed content setting is changed in 795 // Used when the frame's policy is changed in another process.
796 // another process. 796 IPC_MESSAGE_ROUTED1(FrameMsg_EnforceInsecureRequestPolicy,
797 IPC_MESSAGE_ROUTED1(FrameMsg_EnforceStrictMixedContentChecking, 797 blink::WebInsecureRequestPolicy)
798 bool /* should enforce */)
799 798
800 // Update a proxy's replicated origin. Used when the frame is navigated to a 799 // Update a proxy's replicated origin. Used when the frame is navigated to a
801 // new origin. 800 // new origin.
802 IPC_MESSAGE_ROUTED2(FrameMsg_DidUpdateOrigin, 801 IPC_MESSAGE_ROUTED2(FrameMsg_DidUpdateOrigin,
803 url::Origin /* origin */, 802 url::Origin /* origin */,
804 bool /* is potentially trustworthy unique origin */) 803 bool /* is potentially trustworthy unique origin */)
805 804
806 // Notifies this frame or proxy that it is now focused. This is used to 805 // Notifies this frame or proxy that it is now focused. This is used to
807 // support cross-process focused frame changes. 806 // support cross-process focused frame changes.
808 IPC_MESSAGE_ROUTED0(FrameMsg_SetFocusedFrame) 807 IPC_MESSAGE_ROUTED0(FrameMsg_SetFocusedFrame)
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 1014
1016 // Notifies the browser process about a new Content Security Policy that needs 1015 // Notifies the browser process about a new Content Security Policy that needs
1017 // to be applies to the frame. This message is sent when a frame commits 1016 // to be applies to the frame. This message is sent when a frame commits
1018 // navigation to a new location (reporting accumulated policies from HTTP 1017 // navigation to a new location (reporting accumulated policies from HTTP
1019 // headers and/or policies that might have been inherited from the parent frame) 1018 // headers and/or policies that might have been inherited from the parent frame)
1020 // or when a new policy has been discovered afterwards (i.e. found in a 1019 // or when a new policy has been discovered afterwards (i.e. found in a
1021 // dynamically added or a static <meta> element). 1020 // dynamically added or a static <meta> element).
1022 IPC_MESSAGE_ROUTED1(FrameHostMsg_DidAddContentSecurityPolicy, 1021 IPC_MESSAGE_ROUTED1(FrameHostMsg_DidAddContentSecurityPolicy,
1023 content::ContentSecurityPolicyHeader) 1022 content::ContentSecurityPolicyHeader)
1024 1023
1025 // Sent when the frame starts enforcing strict mixed content 1024 // Sent when the frame starts enforcing an insecure request policy. Sending
1026 // checking. Sending this information in DidCommitProvisionalLoad isn't 1025 // this information in DidCommitProvisionalLoad isn't sufficient; this
1027 // sufficient; this message is needed because, for example, a document 1026 // message is needed because, for example, a document can dynamically insert
1028 // can dynamically insert a <meta> tag that causes strict mixed content 1027 // a <meta> tag that causes strict mixed content checking to be enforced.
1029 // checking to be enforced. 1028 IPC_MESSAGE_ROUTED1(FrameHostMsg_EnforceInsecureRequestPolicy,
1030 IPC_MESSAGE_ROUTED0(FrameHostMsg_EnforceStrictMixedContentChecking) 1029 blink::WebInsecureRequestPolicy)
1031 1030
1032 // Sent when the frame is set to a unique origin. TODO(estark): this IPC 1031 // Sent when the frame is set to a unique origin. TODO(estark): this IPC
1033 // only exists to support dynamic sandboxing via a CSP delivered in a 1032 // only exists to support dynamic sandboxing via a CSP delivered in a
1034 // <meta> tag. This is not supposed to be allowed per the CSP spec and 1033 // <meta> tag. This is not supposed to be allowed per the CSP spec and
1035 // should be ripped out. https://crbug.com/594645 1034 // should be ripped out. https://crbug.com/594645
1036 IPC_MESSAGE_ROUTED1(FrameHostMsg_UpdateToUniqueOrigin, 1035 IPC_MESSAGE_ROUTED1(FrameHostMsg_UpdateToUniqueOrigin,
1037 bool /* is potentially trustworthy unique origin */) 1036 bool /* is potentially trustworthy unique origin */)
1038 1037
1039 // Sent when the renderer changed the progress of a load. 1038 // Sent when the renderer changed the progress of a load.
1040 IPC_MESSAGE_ROUTED1(FrameHostMsg_DidChangeLoadProgress, 1039 IPC_MESSAGE_ROUTED1(FrameHostMsg_DidChangeLoadProgress,
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 // nearest find result in the sending frame. 1505 // nearest find result in the sending frame.
1507 IPC_MESSAGE_ROUTED2(FrameHostMsg_GetNearestFindResult_Reply, 1506 IPC_MESSAGE_ROUTED2(FrameHostMsg_GetNearestFindResult_Reply,
1508 int /* nfr_request_id */, 1507 int /* nfr_request_id */,
1509 float /* distance */) 1508 float /* distance */)
1510 #endif 1509 #endif
1511 1510
1512 // Adding a new message? Stick to the sort order above: first platform 1511 // Adding a new message? Stick to the sort order above: first platform
1513 // independent FrameMsg, then ifdefs for platform specific FrameMsg, then 1512 // independent FrameMsg, then ifdefs for platform specific FrameMsg, then
1514 // platform independent FrameHostMsg, then ifdefs for platform specific 1513 // platform independent FrameHostMsg, then ifdefs for platform specific
1515 // FrameHostMsg. 1514 // FrameHostMsg.
OLDNEW
« no previous file with comments | « content/common/DEPS ('k') | content/common/frame_replication_state.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698