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,
}