summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/frame/policy_container.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/frame/policy_container.h')
-rw-r--r--chromium/third_party/blink/renderer/core/frame/policy_container.h19
1 files changed, 16 insertions, 3 deletions
diff --git a/chromium/third_party/blink/renderer/core/frame/policy_container.h b/chromium/third_party/blink/renderer/core/frame/policy_container.h
index 1c7aa1661bf..4639781a003 100644
--- a/chromium/third_party/blink/renderer/core/frame/policy_container.h
+++ b/chromium/third_party/blink/renderer/core/frame/policy_container.h
@@ -6,6 +6,8 @@
#define THIRD_PARTY_BLINK_RENDERER_CORE_FRAME_POLICY_CONTAINER_H_
#include "mojo/public/cpp/bindings/associated_remote.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "services/network/public/mojom/ip_address_space.mojom-shared.h"
#include "services/network/public/mojom/referrer_policy.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/policy_container.mojom-blink.h"
#include "third_party/blink/public/platform/web_policy_container.h"
@@ -27,11 +29,12 @@ class CORE_EXPORT PolicyContainer {
PolicyContainer() = delete;
PolicyContainer(
mojo::PendingAssociatedRemote<mojom::blink::PolicyContainerHost> remote,
- mojom::blink::PolicyContainerDocumentPoliciesPtr policies);
+ mojom::blink::PolicyContainerPoliciesPtr policies);
PolicyContainer(const PolicyContainer&) = delete;
PolicyContainer& operator=(const PolicyContainer&) = delete;
~PolicyContainer() = default;
+ static std::unique_ptr<PolicyContainer> CreateEmpty();
static std::unique_ptr<PolicyContainer> CreateFromWebPolicyContainer(
std::unique_ptr<WebPolicyContainer> container);
@@ -40,10 +43,20 @@ class CORE_EXPORT PolicyContainer {
void UpdateReferrerPolicy(network::mojom::blink::ReferrerPolicy policy);
network::mojom::blink::ReferrerPolicy GetReferrerPolicy() const;
- const mojom::blink::PolicyContainerDocumentPoliciesPtr& GetPolicies() const;
+ network::mojom::blink::IPAddressSpace GetIPAddressSpace() const;
+
+ const mojom::blink::PolicyContainerPoliciesPtr& GetPolicies() const;
+
+ // Return a keep alive handle for the browser process' PolicyContainerHost. If
+ // that PolicyContainerHost is owned by a RenderFrameHost, holding a keep
+ // alive handle ensures that the PolicyContainerHost will still be retrievable
+ // via RenderFrameHostImpl::GetPolicyContainerHost, even if the
+ // RenderFrameHost has been deleted in between.
+ mojo::PendingRemote<mojom::blink::PolicyContainerHostKeepAliveHandle>
+ IssueKeepAliveHandle();
private:
- mojom::blink::PolicyContainerDocumentPoliciesPtr policies_;
+ mojom::blink::PolicyContainerPoliciesPtr policies_;
mojo::AssociatedRemote<mojom::blink::PolicyContainerHost>
policy_container_host_remote_;