Mail::...DNSEval(3pm)

πŸ’– DNSEVAL πŸ’–

okay so bestie, we're looking at Mail::...DNSEval(3pm) β€” she's part of the User Contributed Perl Documentation era and she is THAT girl. Let's get into it. πŸ¦‹


✨ NAME ✨

DNSEVAL β€” look up URLs against DNS blocklists πŸ’…


🌸 SYNOPSIS 🌸

loadplugin Mail::SpamAssassin::Plugin::DNSEval

rbl_headers EnvelopeFrom,Reply-To,Disposition-Notification-To
header     RBL_IP    eval:check_rbl_headers('rbl', 'rbl.example.com.', '127.0.0.2')
describe   RBL_IP    From address associated with spam domains
tflags     RBL_IP    net
reuse      RBL_IP

Supported extra tflags from SpamAssassin 3.4.3:
 domains_only - only non-IP-address "host" components are queried
 ips_only - only IP addresses as the "host" component will be queried

no cap, those two extra tflags are literally the glow-up from SpamAssassin 3.4.3 β€” use them wisely πŸ‘‘


πŸŽ€ DESCRIPTION πŸŽ€

So the DNSEval plugin slides into DNS and asks, politely: is this domain or IP address, sitting in one of the email's headers, on a particular rbl? That's the whole vibe check. ✨

Also FYI β€” any host, or its domain part, that matches uridnsbl_skip_domains gets ignored by default. She doesn't even look at them. periodt. πŸ™ˆ


πŸ‘‘ USER PREFERENCES πŸ‘‘

These options are iconic enough to work in both site-wide (local.cf) and user-specific (user_prefs) configuration files, so you can customize exactly how SpamAssassin handles incoming email messages. πŸ₯°

  • rbl_headers β€” this one tells SpamAssassin which headers to peep into for content that'll be used to query the specified rbl. If the header content has an email address, an ip address, or a domain name in it, that thing gets checked against the specified rbl. πŸ•΅οΈβ€β™€οΈ You can override this config option by passing a headers list as the last parameter to check_rbl_headers. And the default headers she checks are:
    • EnvelopeFrom
    • Reply-To
    • Disposition-Notification-To
    • X-WebmailclientIP
    • X-Source-IP
  • check_rbl_from_domain β€” this one checks all the from addrs domain names, as an alternate to check_rbl_from_host. And bestie, as of v3.4.1 she got improved β€” now she includes a subtest for a specific octet. ate and left no crumbs πŸ’…
  • check_rbl_ns_from β€” this checks the dns server of the from addrs domain name. You can also include a subtest for a specific octet here too. πŸ”₯
  • check_rbl_rcvd β€” this one checks all received headers' domains or ip addresses against a specific rbl. Yep, you guessed it: it's possible to include a subtest for a specific octet. πŸ’€ she does it all.

lowkey a reminder bestie: those octet subtests are optional, not required. Don't come for me, I'm just relaying what the page says 🫢

and that's the whole page!! this one's been living her life as User Contributed Perl Documentation under perl v5.40.1, dated 2026-07-23 β€” an absolute classic, we stan a documented queen. bye bestie, go blocklist some domains πŸ’–πŸŒˆβ­

πŸ“¦ where this page comes from