1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
enum DMARCPolicy {
None,
Quarantine,
Reject
}
enum DMARCAlignment {
Relaxed,
Strict
}
enum DMARCFailureOption {
AlignedPassFailure,
OtherAlignedPassFailure,
SignatureAlignmentFailure,
SPFFailure
}
struct DMARCRecord {
domain: String,
adkim: DMARCAlignment,
aspf: DMARCAlignment,
policy: DMARCPolicy,
subdomain_policy: DMARCPolicy,
percentage: u64,
failure_opt: DMARCFailureOption
}
pub struct DMARCReport {
id: String,
org: String,
record: DMARCRecord,
dkim_pass: bool,
spf_pass: bool
}
|