9 releases
0.1.8 | Sep 21, 2023 |
---|---|
0.1.7 | Mar 23, 2023 |
0.1.6 | Sep 14, 2022 |
0.1.5 | Jul 21, 2022 |
0.1.1 | Jan 25, 2022 |
#59 in Email
29KB
667 lines
dmarc
DMARC (RFC7489) implementation
Features
Load the policy for a domain
let policy: Option<dmarc::Policy> = dmarc::load_policy(&logger, &from_domain).await?;
The load_policy
arguments are the following:
Apply a policy
let dkim_result: cfdkim::DKIMResult = ...;
let spf_result: SPFResult = ...;
let ctx = dmarc::PolicyContext {
from_domain: &from_domain,
logger: &logger,
dkim_result,
spf_result,
};
let res: DMARCResult = policy.apply(&ctx);
println!("dmarc={}", res.to_str());
dkim_result
is the result of verifying DKIM using the cfdkim crate. In the future it should be a trait.
spf_result
is the result of verifying SPF.
Sending feedback report
Not planned yet.
Dependencies
~20–28MB
~565K SLoC