Sha256: 8256dc3b58300ddfa470f50a2f344e384b0c75f59bdb060d4be8d114b5f47e34

Contents?: true

Size: 556 Bytes

Versions: 1

Compression:

Stored size: 556 Bytes

Contents

# frozen_string_literal: true

module Truemail
  module Validate
    class MxBlacklist < Truemail::Validate::Base
      ERROR = 'blacklisted mx server ip address'

      def run
        return false unless Truemail::Validate::Mx.check(result)
        return true if success(mail_servers.none?(&blacklisted_ip?))
        add_error(Truemail::Validate::MxBlacklist::ERROR)
        false
      end

      private

      def blacklisted_ip?
        ->(mail_server) { configuration.blacklisted_mx_ip_addresses.include?(mail_server) }
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
truemail-2.4.0 lib/truemail/validate/mx_blacklist.rb