mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-21 03:55:24 +00:00
LibWeb/CSP: Add Keyword Sources FlyStrings
This commit is contained in:
parent
493213db18
commit
adb8afede2
4 changed files with 45 additions and 2 deletions
|
@ -39,6 +39,7 @@ set(SOURCES
|
|||
ContentSecurityPolicy/Directives/Directive.cpp
|
||||
ContentSecurityPolicy/Directives/DirectiveFactory.cpp
|
||||
ContentSecurityPolicy/Directives/DirectiveOperations.cpp
|
||||
ContentSecurityPolicy/Directives/KeywordSources.cpp
|
||||
ContentSecurityPolicy/Directives/Names.cpp
|
||||
ContentSecurityPolicy/Directives/SerializedDirective.cpp
|
||||
ContentSecurityPolicy/BlockingAlgorithms.cpp
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
/*
|
||||
* Copyright (c) 2025, Luke Wilde <luke@ladybird.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <LibWeb/ContentSecurityPolicy/Directives/KeywordSources.h>
|
||||
|
||||
namespace Web::ContentSecurityPolicy::Directives::KeywordSources {
|
||||
|
||||
#define __ENUMERATE_KEYWORD_SOURCE(name, value) \
|
||||
FlyString name = value##_fly_string;
|
||||
ENUMERATE_KEYWORD_SOURCES
|
||||
#undef __ENUMERATE_KEYWORD_SOURCE
|
||||
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Copyright (c) 2025, Luke Wilde <luke@ladybird.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AK/FlyString.h>
|
||||
|
||||
namespace Web::ContentSecurityPolicy::Directives::KeywordSources {
|
||||
|
||||
// https://w3c.github.io/webappsec-csp/#grammardef-keyword-source
|
||||
#define ENUMERATE_KEYWORD_SOURCES \
|
||||
__ENUMERATE_KEYWORD_SOURCE(Self, "'self'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(UnsafeInline, "'unsafe-inline'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(UnsafeEval, "'unsafe-eval'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(StrictDynamic, "'strict-dynamic'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(UnsafeHashes, "'unsafe-hashes'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(ReportSample, "'report-sample'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(UnsafeAllowRedirects, "'unsafe-allow-redirects'") \
|
||||
__ENUMERATE_KEYWORD_SOURCE(WasmUnsafeEval, "'wasm-unsafe-eval'")
|
||||
|
||||
#define __ENUMERATE_KEYWORD_SOURCE(name, value) extern FlyString name;
|
||||
ENUMERATE_KEYWORD_SOURCES
|
||||
#undef __ENUMERATE_KEYWORD_SOURCE
|
||||
|
||||
}
|
|
@ -39,6 +39,4 @@ namespace Web::ContentSecurityPolicy::Directives::Names {
|
|||
ENUMERATE_DIRECTIVE_NAMES
|
||||
#undef __ENUMERATE_DIRECTIVE_NAME
|
||||
|
||||
void initialize_strings();
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue