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
36
37
38
39
40
41
42
43
//! Parsed Authetication-Results
use crate::auth::AuthProperty;
use crate::dkim::DkimProperty;
use crate::iprev::IpRevProperty;
use crate::spf::SpfProperty;
/// Host and version relating to the results
#[derive(Clone, Debug, PartialEq)]
pub struct HostVersion<'hdr> {
/// Host
pub host: &'hdr str,
/// Version
pub version: Option<u32>,
}
/// Auth-Result properties
#[derive(Clone, Debug, PartialEq)]
pub enum Prop<'hdr> {
/// auth method properties
Auth(AuthProperty<'hdr>),
/// dkim method properties
Dkim(DkimProperty<'hdr>),
//dmarc method properties
//Dmarc(DmarcProperty<'hdr>),
/// iprev method properties
IpRev(IpRevProperty<'hdr>),
/// spf method properties
Spf(SpfProperty<'hdr>),
/// unknown method properties
Unknown(UnknownProperty<'hdr>),
}
/// Unknown method properties
#[derive(Clone, Debug, PartialEq)]
pub struct UnknownProperty<'hdr> {
/// Unknown ptype
ptype: &'hdr str,
/// Unknown property key
pkey: &'hdr str,
/// Unknown property value
pval: &'hdr str,
}