import perl-5.26.3-419.el8_4.1
This commit is contained in:
parent
7a2a4dea1e
commit
8deb8cf2a6
62
SOURCES/perl-5.26.3-Net-Ping-Fix-_resolv-return-value.patch
Normal file
62
SOURCES/perl-5.26.3-Net-Ping-Fix-_resolv-return-value.patch
Normal file
@ -0,0 +1,62 @@
|
||||
From 47d2c70bde8c0bdc67e85578133338fc63c33f13 Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 17 Jun 2021 11:41:48 +0200
|
||||
Subject: [PATCH 2/2] Fix _resolv return value
|
||||
|
||||
in case of the new warnings.
|
||||
Thanks to @nlv02636
|
||||
|
||||
Backported fromn Net-Ping 2.68
|
||||
---
|
||||
dist/Net-Ping/lib/Net/Ping.pm | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dist/Net-Ping/lib/Net/Ping.pm b/dist/Net-Ping/lib/Net/Ping.pm
|
||||
index 9e2497c..87087fc 100644
|
||||
--- a/dist/Net-Ping/lib/Net/Ping.pm
|
||||
+++ b/dist/Net-Ping/lib/Net/Ping.pm
|
||||
@@ -1794,6 +1794,7 @@ sub _resolv {
|
||||
# Clean up port
|
||||
if (defined($h{port}) && (($h{port} !~ /^\d{1,5}$/) || ($h{port} < 1) || ($h{port} > 65535))) {
|
||||
croak("Invalid port `$h{port}' in `$name'");
|
||||
+ return undef;
|
||||
}
|
||||
# END - host:port
|
||||
|
||||
@@ -1850,18 +1851,21 @@ sub _resolv {
|
||||
} else {
|
||||
(undef, $h{addr_in}, undef, undef) = Socket::unpack_sockaddr_in6 $getaddr[0]->{addr};
|
||||
}
|
||||
- return \%h
|
||||
+ return \%h;
|
||||
} else {
|
||||
carp("getnameinfo($getaddr[0]->{addr}) failed - $err");
|
||||
+ return undef;
|
||||
}
|
||||
} else {
|
||||
warn(sprintf("getaddrinfo($h{host},,%s) failed - $err",
|
||||
$family == AF_INET ? "AF_INET" : "AF_INET6"));
|
||||
+ return undef;
|
||||
}
|
||||
# old way
|
||||
} else {
|
||||
if ($family == $AF_INET6) {
|
||||
croak("Socket >= 1.94 required for IPv6 - found Socket $Socket::VERSION");
|
||||
+ return undef;
|
||||
}
|
||||
|
||||
my @gethost = gethostbyname($h{host});
|
||||
@@ -1872,8 +1876,10 @@ sub _resolv {
|
||||
return \%h
|
||||
} else {
|
||||
carp("gethostbyname($h{host}) failed - $^E");
|
||||
+ return undef;
|
||||
}
|
||||
}
|
||||
+ return undef;
|
||||
}
|
||||
|
||||
sub _pack_sockaddr_in($$) {
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,99 @@
|
||||
From 5a3f94a3f0e21d8e685ede4e851a318578a2151f Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 17 Jun 2021 11:12:30 +0200
|
||||
Subject: [PATCH 1/2] carp, not croak on most name lookup failures
|
||||
|
||||
See RT #124830, a regression.
|
||||
Return undef instead.
|
||||
|
||||
Backported from Net-Ping 2.67
|
||||
---
|
||||
dist/Net-Ping/lib/Net/Ping.pm | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/dist/Net-Ping/lib/Net/Ping.pm b/dist/Net-Ping/lib/Net/Ping.pm
|
||||
index 13cbe81..9e2497c 100644
|
||||
--- a/dist/Net-Ping/lib/Net/Ping.pm
|
||||
+++ b/dist/Net-Ping/lib/Net/Ping.pm
|
||||
@@ -144,7 +144,7 @@ sub new
|
||||
if ($self->{'host'}) {
|
||||
my $host = $self->{'host'};
|
||||
my $ip = _resolv($host)
|
||||
- or croak("could not resolve host $host");
|
||||
+ or carp("could not resolve host $host");
|
||||
$self->{host} = $ip;
|
||||
$self->{family} = $ip->{family};
|
||||
}
|
||||
@@ -152,7 +152,7 @@ sub new
|
||||
if ($self->{bind}) {
|
||||
my $addr = $self->{bind};
|
||||
my $ip = _resolv($addr)
|
||||
- or croak("could not resolve local addr $addr");
|
||||
+ or carp("could not resolve local addr $addr");
|
||||
$self->{local_addr} = $ip;
|
||||
} else {
|
||||
$self->{local_addr} = undef; # Don't bind by default
|
||||
@@ -323,7 +323,7 @@ sub bind
|
||||
($self->{proto} eq "udp" || $self->{proto} eq "icmp");
|
||||
|
||||
$ip = $self->_resolv($local_addr);
|
||||
- croak("nonexistent local address $local_addr") unless defined($ip);
|
||||
+ carp("nonexistent local address $local_addr") unless defined($ip);
|
||||
$self->{local_addr} = $ip;
|
||||
|
||||
if (($self->{proto} ne "udp") &&
|
||||
@@ -1129,13 +1129,14 @@ sub open
|
||||
$self->{family_local} = $self->{family};
|
||||
}
|
||||
|
||||
- $ip = $self->_resolv($host);
|
||||
$timeout = $self->{timeout} unless $timeout;
|
||||
+ $ip = $self->_resolv($host);
|
||||
|
||||
- if($self->{proto} eq "stream") {
|
||||
- if(defined($self->{fh}->fileno())) {
|
||||
+ if ($self->{proto} eq "stream") {
|
||||
+ if (defined($self->{fh}->fileno())) {
|
||||
croak("socket is already open");
|
||||
} else {
|
||||
+ return () unless $ip;
|
||||
$self->tcp_connect($ip, $timeout);
|
||||
}
|
||||
}
|
||||
@@ -1851,12 +1852,11 @@ sub _resolv {
|
||||
}
|
||||
return \%h
|
||||
} else {
|
||||
- croak("getnameinfo($getaddr[0]->{addr}) failed - $err");
|
||||
+ carp("getnameinfo($getaddr[0]->{addr}) failed - $err");
|
||||
}
|
||||
} else {
|
||||
- my $error = sprintf "getaddrinfo($h{host},,%s) failed - $err",
|
||||
- ($family == AF_INET) ? "AF_INET" : "AF_INET6";
|
||||
- croak("$error");
|
||||
+ warn(sprintf("getaddrinfo($h{host},,%s) failed - $err",
|
||||
+ $family == AF_INET ? "AF_INET" : "AF_INET6"));
|
||||
}
|
||||
# old way
|
||||
} else {
|
||||
@@ -1871,7 +1871,7 @@ sub _resolv {
|
||||
$h{family} = AF_INET;
|
||||
return \%h
|
||||
} else {
|
||||
- croak("gethostbyname($h{host}) failed - $^E");
|
||||
+ carp("gethostbyname($h{host}) failed - $^E");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1913,7 +1913,7 @@ sub _inet_ntoa {
|
||||
if (defined($address)) {
|
||||
$ret = $address;
|
||||
} else {
|
||||
- croak("getnameinfo($addr) failed - $err");
|
||||
+ carp("getnameinfo($addr) failed - $err");
|
||||
}
|
||||
} else {
|
||||
$ret = inet_ntoa($addr)
|
||||
--
|
||||
2.31.1
|
||||
|
@ -81,7 +81,7 @@ License: GPL+ or Artistic
|
||||
Epoch: %{perl_epoch}
|
||||
Version: %{perl_version}
|
||||
# release number must be even higher, because dual-lived modules will be broken otherwise
|
||||
Release: 419%{?dist}
|
||||
Release: 419%{?dist}.1
|
||||
Summary: Practical Extraction and Report Language
|
||||
Url: http://www.perl.org/
|
||||
Source0: http://www.cpan.org/src/5.0/perl-%{perl_version}.tar.bz2
|
||||
@ -306,6 +306,12 @@ Patch93: perl-5.26.3-CVE-2020-10543.patch
|
||||
# for the regex engine
|
||||
Patch94: perl-5.26.3-CVE-2020-10878.patch
|
||||
|
||||
# Fix bug #1973176, fixed in Net-Ping 2.68
|
||||
# Fixed _resolv return value on failing DNS name lookup
|
||||
Patch95: perl-5.26.3-Net-Ping-carp-not-croak-on-most-name-lookup-failures.patch
|
||||
Patch96: perl-5.26.3-Net-Ping-Fix-_resolv-return-value.patch
|
||||
|
||||
|
||||
# Link XS modules to libperl.so with EU::CBuilder on Linux, bug #960048
|
||||
Patch200: perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
|
||||
|
||||
@ -2918,6 +2924,8 @@ Perl extension for Version Objects
|
||||
%patch92 -p1
|
||||
%patch93 -p1
|
||||
%patch94 -p1
|
||||
%patch95 -p1
|
||||
%patch96 -p1
|
||||
%patch200 -p1
|
||||
%patch201 -p1
|
||||
|
||||
@ -2925,9 +2933,9 @@ Perl extension for Version Objects
|
||||
# Local patch tracking
|
||||
perl -x patchlevel.h \
|
||||
'Fedora Patch1: Removes date check, Fedora/RHEL specific' \
|
||||
%ifarch %{multilib_64_archs} \
|
||||
%ifarch %{multilib_64_archs}
|
||||
'Fedora Patch3: support for libdir64' \
|
||||
%endif \
|
||||
%endif
|
||||
'Fedora Patch4: use libresolv instead of libbind' \
|
||||
'Fedora Patch5: USE_MM_LD_RUN_PATH' \
|
||||
'Fedora Patch6: Provide MM::maybe_command independently (bug #1129443)' \
|
||||
@ -2977,8 +2985,9 @@ perl -x patchlevel.h \
|
||||
'Fedora Patch90: Pass the correct CFLAGS to dtrace' \
|
||||
'RHEL Patch91: Fix Time-Local tests to pass after year 2019 (bug #1807120)' \
|
||||
'RHEL Patch92: Fix CVE-2020-12723 (GH#16947)' \
|
||||
'RHEL Patch92: Fix CVE-2020-10543' \
|
||||
'RHEL Patch92: Fix CVE-2020-10878' \
|
||||
'RHEL Patch93: Fix CVE-2020-10543' \
|
||||
'RHEL Patch94: Fix CVE-2020-10878' \
|
||||
'RHEL Patch95: Fix Net-Ping _resolv return value on failing DNS name lookup (bug #1973176)' \
|
||||
'Fedora Patch200: Link XS modules to libperl.so with EU::CBuilder on Linux' \
|
||||
'Fedora Patch201: Link XS modules to libperl.so with EU::MM on Linux' \
|
||||
%{nil}
|
||||
@ -5266,6 +5275,9 @@ popd
|
||||
|
||||
# Old changelog entries are preserved in CVS.
|
||||
%changelog
|
||||
* Thu Jun 17 2021 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.3-419.1
|
||||
- Fix _resolv return value in Net-Ping (bug #1973176)
|
||||
|
||||
* Wed Jan 06 2021 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.3-419
|
||||
- Fix CVE-2020-10543 (bug #1839273)
|
||||
- Fix CVE-2020-10878 (bug #1839276)
|
||||
|
Loading…
Reference in New Issue
Block a user