2022-08-04 21:26:35 +02:00
|
|
|
/*
|
2024-10-04 13:19:50 +02:00
|
|
|
* Copyright (c) 2022, Andreas Kling <andreas@ladybird.org>
|
2022-08-04 21:26:35 +02:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2023-08-28 11:57:21 +02:00
|
|
|
#include <AK/EnumBits.h>
|
2022-09-13 17:42:39 +02:00
|
|
|
#include <AK/Types.h>
|
|
|
|
|
2022-08-04 21:26:35 +02:00
|
|
|
namespace Web::HTML {
|
|
|
|
|
|
|
|
// https://html.spec.whatwg.org/multipage/origin.html#sandboxing-flag-set
|
2023-08-28 11:57:21 +02:00
|
|
|
enum class SandboxingFlagSet {
|
|
|
|
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,
|
2022-08-04 21:26:35 +02:00
|
|
|
};
|
|
|
|
|
2023-08-28 11:57:21 +02:00
|
|
|
AK_ENUM_BITWISE_OPERATORS(SandboxingFlagSet);
|
|
|
|
inline bool is_empty(SandboxingFlagSet s) { return (to_underlying(s) & 0x1FFU) == 0; }
|
|
|
|
|
2022-08-04 21:26:35 +02:00
|
|
|
}
|