def makequery_message
my_udp_size = @resolver.udp_size
message = makequery_with_udpsize(my_udp_size)
return message if message.is_a? Exception
return message if my_udp_size == 512
return message if (message.rcode != Dnsruby::RCode.FORMERR and
message.rcode != Dnsruby::RCode.NOTIMP and
message.rcode != Dnsruby::RCode.SERVFAIL)
Log.debug { "Possible failure by nameserver to understand EDNS0 - retry" }
message_retry = makequery_with_udpsize(512)
@resolver.udp_size = my_udp_size
return message if message_retry.is_a? Exception
return message if (message_retry.rcode == Dnsruby::RCode.FORMERR or
message_retry.rcode == Dnsruby::RCode.NOTIMP or
message_retry.rcode == Dnsruby::RCode.SERVFAIL)
warnings_add "#{message.answerfrom} doesn't seem to support EDNS0"
return message_retry
end