dmarc

Crates.iodmarc
lib.rsdmarc
version0.1.8
sourcesrc
created_at2022-01-20 20:53:05.258509
updated_at2023-09-21 12:50:39.126628
descriptionDMARC (RFC7489) implementation
homepage
repositoryhttps://github.com/cloudflare/dmarc
max_upload_size
id517858
size29,749
André Cruz (edevil)

documentation

https://docs.rs/dmarc

README

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:

  • logger: slog::Logger
  • from_domain: &str (RFC5322.From's domain)

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.

Commit count: 20

cargo fmt