Skip to content

Commit a6e47cd

Browse files
committed
integrate feedback
1 parent c3577e0 commit a6e47cd

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

src/security/csp.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
use crate::Headers;
2-
use serde::Serialize;
2+
use serde::{Deserialize, Serialize};
33
use std::collections::HashMap;
44
use std::fmt;
55

66
/// Define source value
77
///
88
/// [read more](https://content-security-policy.com)
9-
#[derive(Debug)]
9+
#[derive(Debug, PartialEq, Eq, Copy, Clone, Hash)]
1010
pub enum Source {
1111
/// Set source `'self'`
1212
SameOrigin,
1313
/// Set source `'src'`
14-
SRC,
14+
Src,
1515
/// Set source `'none'`
1616
None,
1717
/// Set source `'unsafe-inline'`
@@ -21,7 +21,7 @@ pub enum Source {
2121
/// Set source `mediastream:`
2222
Mediastream,
2323
/// Set source `https:`
24-
HTTPS,
24+
Https,
2525
/// Set source `blob:`
2626
Blob,
2727
/// Set source `filesystem:`
@@ -38,12 +38,12 @@ impl fmt::Display for Source {
3838
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
3939
match *self {
4040
Source::SameOrigin => write!(f, "'self'"),
41-
Source::SRC => write!(f, "'src'"),
41+
Source::Src => write!(f, "'src'"),
4242
Source::None => write!(f, "'none'"),
4343
Source::UnsafeInline => write!(f, "'unsafe-inline'"),
4444
Source::Data => write!(f, "data:"),
4545
Source::Mediastream => write!(f, "mediastream:"),
46-
Source::HTTPS => write!(f, "https:"),
46+
Source::Https => write!(f, "https:"),
4747
Source::Blob => write!(f, "blob:"),
4848
Source::Filesystem => write!(f, "filesystem:"),
4949
Source::StrictDynamic => write!(f, "'strict-dynamic'"),
@@ -57,12 +57,12 @@ impl AsRef<str> for Source {
5757
fn as_ref(&self) -> &str {
5858
match *self {
5959
Source::SameOrigin => "'self'",
60-
Source::SRC => "'src'",
60+
Source::Src => "'src'",
6161
Source::None => "'none'",
6262
Source::UnsafeInline => "'unsafe-inline'",
6363
Source::Data => "data:",
6464
Source::Mediastream => "mediastream:",
65-
Source::HTTPS => "https:",
65+
Source::Https => "https:",
6666
Source::Blob => "blob:",
6767
Source::Filesystem => "filesystem:",
6868
Source::StrictDynamic => "'strict-dynamic'",
@@ -75,7 +75,7 @@ impl AsRef<str> for Source {
7575
/// Define `report-to` directive value
7676
///
7777
/// [MDN | report-to](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/report-to)
78-
#[derive(Serialize, Debug)]
78+
#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
7979
pub struct ReportTo {
8080
#[serde(skip_serializing_if = "Option::is_none")]
8181
group: Option<String>,
@@ -88,7 +88,7 @@ pub struct ReportTo {
8888
/// Define `endpoints` for `report-to` directive value
8989
///
9090
/// [MDN | report-to](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/report-to)
91-
#[derive(Serialize, Debug)]
91+
#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
9292
pub struct ReportToEndpoint {
9393
url: String,
9494
}
@@ -127,7 +127,7 @@ pub struct ReportToEndpoint {
127127
/// let header = headers.iter().next().unwrap();
128128
/// assert_eq!(header, "base-uri 'none'; default-src 'self' areweasyncyet.rs; object-src 'none'; script-src 'self' 'unsafe-inline'; upgrade-insecure-requests");
129129
/// ```
130-
#[derive(Debug)]
130+
#[derive(Debug, Clone, PartialEq, Eq)]
131131
pub struct ContentSecurityPolicy {
132132
policy: Vec<String>,
133133
report_only_flag: bool,

src/security/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ pub fn dns_prefetch_control(mut headers: impl AsMut<Headers>) {
5757
}
5858

5959
/// Set the frameguard level.
60-
#[derive(Debug, Clone)]
60+
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
6161
pub enum FrameOptions {
6262
/// Set to `sameorigin`
6363
SameOrigin,
@@ -178,7 +178,7 @@ pub fn xss_filter(mut headers: impl AsMut<Headers>) {
178178
}
179179

180180
/// Set the Referrer-Policy level
181-
#[derive(Debug, Clone)]
181+
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
182182
pub enum ReferrerOptions {
183183
/// Set to "no-referrer"
184184
NoReferrer,

0 commit comments

Comments
 (0)