Sha256: 6650ec2aa54ab2a949d9803f93c443e0da6cd77f58128827130aa12af02b8f6e

Contents?: true

Size: 656 Bytes

Versions: 11

Compression:

Stored size: 656 Bytes

Contents

# frozen_string_literal: true

module Truemail
  module Audit
    class Dns < Truemail::Audit::Base
      VERIFIER_DOMAIN_NOT_REFER = 'A-record of verifier domain not refers to current host ip address'

      def run
        return if verifier_domain_refer_to_current_host_ip?
        add_warning(Truemail::Audit::Dns::VERIFIER_DOMAIN_NOT_REFER)
      end

      private

      def a_record
        Truemail::Wrapper.call(configuration: configuration) do
          Resolv::DNS.new.getaddress(verifier_domain).to_s
        end
      end

      def verifier_domain_refer_to_current_host_ip?
        a_record.eql?(current_host_ip)
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
truemail-2.2.3 lib/truemail/audit/dns.rb
truemail-2.2.2 lib/truemail/audit/dns.rb
truemail-2.2.1 lib/truemail/audit/dns.rb
truemail-2.2.0 lib/truemail/audit/dns.rb
truemail-2.1.0 lib/truemail/audit/dns.rb
truemail-2.0.2 lib/truemail/audit/dns.rb
truemail-2.0.1 lib/truemail/audit/dns.rb
truemail-2.0.0 lib/truemail/audit/dns.rb
truemail-1.9.2 lib/truemail/audit/dns.rb
truemail-1.9.1 lib/truemail/audit/dns.rb
truemail-1.9.0 lib/truemail/audit/dns.rb