module PeepRBL
Constants
- RBLS
Public Class Methods
display(rbl, listed)
click to toggle source
# File lib/peeprbl.rb, line 77 def self.display(rbl, listed) if listed puts rbl[0] + " LISTED!".red else puts rbl[0] + " PASS".green end end
report(options)
click to toggle source
# File lib/peeprbl.rb, line 85 def self.report(options) mail_server_ip = options[:mail_server_ip] display = options[:display] blacklist_report = {} rbl_fqdns = RBLS.map {|rbl| [rbl, reverse_ip(mail_server_ip) + '.' + rbl] } Resolv::DNS.open do |dns| dns.timeouts = 2 rbl_fqdns.each do |rbl| begin blacklist_report[rbl[0]] = dns.getaddress(rbl[1]) rescue display(rbl, false) if options[:display] else display(rbl, true) if options[:display] blacklist_report[rbl[0]] = true end end end return blacklist_report end
reverse_ip(ip)
click to toggle source
# File lib/peeprbl.rb, line 73 def self.reverse_ip(ip) ip.split('.').reverse!.join('.') end