OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef SourceListDirective_h | 5 #ifndef SourceListDirective_h |
6 #define SourceListDirective_h | 6 #define SourceListDirective_h |
7 | 7 |
8 #include "core/frame/csp/CSPDirective.h" | 8 #include "core/frame/csp/CSPDirective.h" |
9 #include "core/frame/csp/CSPSourceList.h" | 9 #include "core/frame/csp/CSPSourceList.h" |
10 #include "platform/network/ContentSecurityPolicyParsers.h" | 10 #include "platform/network/ContentSecurityPolicyParsers.h" |
11 #include "wtf/HashSet.h" | 11 #include "wtf/HashSet.h" |
12 #include "wtf/text/WTFString.h" | 12 #include "wtf/text/WTFString.h" |
13 | 13 |
14 namespace blink { | 14 namespace blink { |
15 | 15 |
16 class ContentSecurityPolicy; | 16 class ContentSecurityPolicy; |
17 class KURL; | 17 class KURL; |
18 | 18 |
19 class SourceListDirective FINAL : public CSPDirective { | 19 class SourceListDirective final : public CSPDirective { |
20 WTF_MAKE_NONCOPYABLE(SourceListDirective); | 20 WTF_MAKE_NONCOPYABLE(SourceListDirective); |
21 public: | 21 public: |
22 SourceListDirective(const String& name, const String& value, ContentSecurity
Policy*); | 22 SourceListDirective(const String& name, const String& value, ContentSecurity
Policy*); |
23 | 23 |
24 bool allows(const KURL&) const; | 24 bool allows(const KURL&) const; |
25 bool allowInline() const; | 25 bool allowInline() const; |
26 bool allowEval() const; | 26 bool allowEval() const; |
27 bool allowNonce(const String& nonce) const; | 27 bool allowNonce(const String& nonce) const; |
28 bool allowHash(const CSPHashValue&) const; | 28 bool allowHash(const CSPHashValue&) const; |
29 bool isHashOrNoncePresent() const; | 29 bool isHashOrNoncePresent() const; |
30 uint8_t hashAlgorithmsUsed() const; | 30 uint8_t hashAlgorithmsUsed() const; |
31 | 31 |
32 private: | 32 private: |
33 CSPSourceList m_sourceList; | 33 CSPSourceList m_sourceList; |
34 }; | 34 }; |
35 | 35 |
36 } // namespace blink | 36 } // namespace blink |
37 | 37 |
38 #endif | 38 #endif |
OLD | NEW |