Module: DMARC

Defined in:
lib/dmarc/uri.rb,
lib/dmarc/dmarc.rb,
lib/dmarc/parser.rb,
lib/dmarc/record.rb,
lib/dmarc/version.rb,
lib/dmarc/exceptions.rb

Defined Under Namespace

Classes: InvalidRecord, Parser, Record, Uri

Constant Summary collapse

VERSION =

dmarc version

'0.6.0'

Class Method Summary collapse

Class Method Details

.query(domain, resolver = Resolv::DNS.new) ⇒ String?

Queries a domain for the DMARC record.

Parameters:

  • domain (String)

    The domain to query DMARC for.

  • resolver (Resolv::DNS) (defaults to: Resolv::DNS.new)

    The resolver to use.

Returns:

  • (String, nil)

    The domain's DMARC record or nil if none exists.

Since:

  • 0.3.0



20
21
22
23
24
25
26
27
28
29
# File 'lib/dmarc/dmarc.rb', line 20

def self.query(domain,resolver=Resolv::DNS.new)
  host = "_dmarc.#{domain}"

  begin
    return resolver.getresource(
      host, Resolv::DNS::Resource::IN::TXT
    ).strings.join
  rescue Resolv::ResolvError
  end
end