Resolv::DNS: timeouts

Resolv::DNS: timeouts if multiple IPv6 name servers are given and address
contains leading zero

Resolves: rhbz#1944227
This commit is contained in:
Vít Ondruch 2021-04-15 16:20:13 +02:00
parent 0ac9ccaebf
commit 6261d5976c
2 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,26 @@
From 2becb920e431110c4afc4fa069b051c5940c2096 Mon Sep 17 00:00:00 2001
From: Jeremy Evans <code@jeremyevans.net>
Date: Fri, 29 May 2020 14:13:30 -0700
Subject: [PATCH] Convert ip addresses to canonical form in
Resolv::DNS::Requester::UnconnectedUDP#sender
Otherwise, if the IP address given is not in canonical form, it
won't match, and Resolv will ignore it.
Fixes [Bug #16439]
---
lib/resolv.rb | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/resolv.rb b/lib/resolv.rb
index e7b45e785a85..d78531e174fd 100644
--- a/lib/resolv.rb
+++ b/lib/resolv.rb
@@ -767,6 +767,7 @@ def recv_reply(readable_socks)
end
def sender(msg, data, host, port=Port)
+ host = Addrinfo.ip(host).ip_address
lazy_initialize
sock = @socks_hash[host.index(':') ? "::" : "0.0.0.0"]
return nil if !sock

View File

@ -152,6 +152,10 @@ Patch13: ruby-2.8.0-remove-unneeded-gem-require-for-ipaddr.patch
# Avoid possible timeout errors in TestBugReporter#test_bug_reporter_add.
# https://bugs.ruby-lang.org/issues/16492
Patch19: ruby-2.7.1-Timeout-the-test_bug_reporter_add-witout-raising-err.patch
# Resolv::DNS: timeouts if multiple IPv6 name servers are given and address
# contains leading zero
# https://bugzilla.redhat.com/show_bug.cgi?id=1944227
Patch20: ruby-3.0.0-Convert-ip-addresses-to-canonical-form.patch
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Suggests: rubypick
@ -563,6 +567,7 @@ rm -rf ext/fiddle/libffi*
%patch10 -p1
%patch13 -p1
%patch19 -p1
%patch20 -p1
# Provide an example of usage of the tapset:
cp -a %{SOURCE3} .
@ -1288,6 +1293,9 @@ sed -i '/^ def test_ignored_interrupt$/,/^ end$/ s/^/#/' \
* Wed Apr 07 2021 Pavel Valena <pvalena@redhat.com> - 2.7.3-136
- Upgrade to Ruby 2.7.3.
Resolves: rhbz#1947938
- Resolv::DNS: timeouts if multiple IPv6 name servers are given and address
contains leading zero
Resolves: rhbz#1944227
* Tue Oct 13 2020 Vít Ondruch <vondruch@redhat.com> - 2.7.2-135
- Upgrade to Ruby 2.7.2.