0
0
Fork 0

Add DomainResource class to wrap MX lookup/normalize (#32864)

This commit is contained in:
Matt Jankowski 2024-11-14 08:47:29 -05:00 committed by GitHub
parent e8b6607ece
commit 62d65504f6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 46 additions and 19 deletions

View file

@ -0,0 +1,22 @@
# frozen_string_literal: true
class DomainResource
attr_reader :domain
RESOLVE_TIMEOUT = 5
def initialize(domain)
@domain = domain
end
def mx
Resolv::DNS.open do |dns|
dns.timeouts = RESOLVE_TIMEOUT
dns
.getresources(domain, Resolv::DNS::Resource::IN::MX)
.to_a
.map { |mx| mx.exchange.to_s }
.compact_blank
end
end
end