mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-23 17:33:12 +00:00
29 lines
1 KiB
C++
29 lines
1 KiB
C++
/*
|
|
* Copyright (c) 2024, Luke Wilde <luke@ladybird.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibWeb/ContentSecurityPolicy/Directives/Directive.h>
|
|
|
|
namespace Web::ContentSecurityPolicy::Directives {
|
|
|
|
// https://w3c.github.io/webappsec-csp/#directive-style-src
|
|
class StyleSourceDirective final : public Directive {
|
|
GC_CELL(StyleSourceDirective, Directive)
|
|
GC_DECLARE_ALLOCATOR(StyleSourceDirective);
|
|
|
|
public:
|
|
virtual ~StyleSourceDirective() = default;
|
|
|
|
virtual Result pre_request_check(GC::Heap&, GC::Ref<Fetch::Infrastructure::Request const>, GC::Ref<Policy const>) const override;
|
|
virtual Result post_request_check(GC::Heap&, GC::Ref<Fetch::Infrastructure::Request const>, GC::Ref<Fetch::Infrastructure::Response const>, GC::Ref<Policy const>) const override;
|
|
virtual Result inline_check(GC::Heap&, GC::Ptr<DOM::Element const>, InlineType, GC::Ref<Policy const>, String const&) const override;
|
|
|
|
private:
|
|
StyleSourceDirective(String name, Vector<String> value);
|
|
};
|
|
|
|
}
|