msg_auth_status/
auth_results.rs

1//! Parsed Authetication-Results
2
3use crate::auth::AuthProperty;
4use crate::dkim::DkimProperty;
5use crate::iprev::IpRevProperty;
6use crate::spf::SpfProperty;
7
8/// Host and version relating to the results
9#[derive(Clone, Debug, PartialEq)]
10pub struct HostVersion<'hdr> {
11    /// Host
12    pub host: &'hdr str,
13    /// Version
14    pub version: Option<u32>,
15}
16
17/// Auth-Result properties
18#[derive(Clone, Debug, PartialEq)]
19pub enum Prop<'hdr> {
20    /// auth method properties
21    Auth(AuthProperty<'hdr>),
22    /// dkim method properties
23    Dkim(DkimProperty<'hdr>),
24    //dmarc method properties
25    //Dmarc(DmarcProperty<'hdr>),
26    /// iprev method properties
27    IpRev(IpRevProperty<'hdr>),
28    /// spf method properties
29    Spf(SpfProperty<'hdr>),
30    /// unknown method properties
31    Unknown(UnknownProperty<'hdr>),
32}
33
34/// Unknown method properties
35#[derive(Clone, Debug, PartialEq)]
36pub struct UnknownProperty<'hdr> {
37    /// Unknown ptype
38    ptype: &'hdr str,
39    /// Unknown property key
40    pkey: &'hdr str,
41    /// Unknown property value
42    pval: &'hdr str,
43}