From 8909ef5b90405c38a0b8b9a55e7069656f22b3dc Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Thu, 4 Aug 2022 21:26:35 +0200 Subject: [PATCH] LibWeb: Add HTML::SandboxingFlagSet --- .../Libraries/LibWeb/HTML/SandboxingFlagSet.h | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Userland/Libraries/LibWeb/HTML/SandboxingFlagSet.h diff --git a/Userland/Libraries/LibWeb/HTML/SandboxingFlagSet.h b/Userland/Libraries/LibWeb/HTML/SandboxingFlagSet.h new file mode 100644 index 0000000000..29ec4f7311 --- /dev/null +++ b/Userland/Libraries/LibWeb/HTML/SandboxingFlagSet.h @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2022, Andreas Kling + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +namespace Web::HTML { + +// https://html.spec.whatwg.org/multipage/origin.html#sandboxing-flag-set +struct SandboxingFlagSet { + enum Flag { + SandboxedNavigation = 1u << 0u, + SandboxedAuxiliaryNavigation = 1u << 1u, + SandboxedTopLevelNavigationWithoutUserActivation = 1u << 2u, + SandboxedTopLevelNavigationWithUserActivation = 1u << 3u, + SandboxedPlugins = 1u << 4u, + SandboxedOrigin = 1u << 5u, + SandboxedForms = 1u << 6u, + SandboxedPointerLock = 1u << 7u, + SandboxedScripts = 1u << 8u, + SandboxedAutomaticFeatures = 1u << 9u, + SandboxedDocumentDomain = 1u << 10u, + SandboxPropagatesToAuxiliaryBrowsingContexts = 1u << 11u, + SandboxedModals = 1u << 12u, + SandboxedOrientationLock = 1u << 13u, + SandboxedPresentation = 1u << 14u, + SandboxedDownloads = 1u << 15u, + SandboxedCustomProtocols = 1u << 16u, + }; + + bool is_empty() const { return flags == 0; } + + u32 flags { 0 }; +}; + +}