Compare commits
4 Commits
Author | SHA1 | Date |
---|---|---|
Petr Písař | 3115b494e7 | |
Petr Písař | 0e451c58bd | |
Petr Písař | 65e2880ba4 | |
Jitka Plesnikova | 1694750fa8 |
|
@ -2,3 +2,7 @@
|
|||
/libnet-3.07.tar.gz
|
||||
/libnet-3.08.tar.gz
|
||||
/libnet-3.09.tar.gz
|
||||
/libnet-3.10.tar.gz
|
||||
/libnet-3.10_repackaged.tar.gz
|
||||
/libnetFAQ.pod
|
||||
/libnet-3.11_repackaged.tar.gz
|
||||
|
|
|
@ -1,91 +0,0 @@
|
|||
From 72d07cb0d6a2e32a6a18a1794a592a8f6bf71665 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Wed, 27 Jul 2016 12:57:23 +0200
|
||||
Subject: [PATCH] Override timeout method in Net::FTP and other subclasses
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
After adding Net::Cmd::timeout() in commit
|
||||
91e593b615334fa76ef0454c4e601b98b6663841, the method masked
|
||||
IO::Socket:IP::timeout() in Net::FTP objects causing infitive block in
|
||||
select() on a FTP connection.
|
||||
|
||||
CPAN RT#116345
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
lib/Net/FTP.pm | 5 +++++
|
||||
lib/Net/NNTP.pm | 6 ++++++
|
||||
lib/Net/POP3.pm | 5 +++++
|
||||
lib/Net/SMTP.pm | 5 +++++
|
||||
4 files changed, 21 insertions(+)
|
||||
|
||||
diff --git a/lib/Net/FTP.pm b/lib/Net/FTP.pm
|
||||
index 905d830..42c33f5 100644
|
||||
--- a/lib/Net/FTP.pm
|
||||
+++ b/lib/Net/FTP.pm
|
||||
@@ -1210,6 +1210,11 @@ sub _data_cmd {
|
||||
##
|
||||
|
||||
|
||||
+sub timeout {
|
||||
+ $IOCLASS->can('timeout')->(@_);
|
||||
+}
|
||||
+
|
||||
+
|
||||
sub debug_text { $_[2] =~ /^(pass|resp|acct)/i ? "$1 ....\n" : $_[2]; }
|
||||
|
||||
|
||||
diff --git a/lib/Net/NNTP.pm b/lib/Net/NNTP.pm
|
||||
index 764d580..f1b5c17 100644
|
||||
--- a/lib/Net/NNTP.pm
|
||||
+++ b/lib/Net/NNTP.pm
|
||||
@@ -419,6 +419,12 @@ sub slave {
|
||||
$nntp->_SLAVE;
|
||||
}
|
||||
|
||||
+
|
||||
+sub timeout {
|
||||
+ $ISA[-1]->can('timeout')->(@_);
|
||||
+}
|
||||
+
|
||||
+
|
||||
##
|
||||
## The following methods are not implemented by all servers
|
||||
##
|
||||
diff --git a/lib/Net/POP3.pm b/lib/Net/POP3.pm
|
||||
index bb18aaf..7f1cf5a 100644
|
||||
--- a/lib/Net/POP3.pm
|
||||
+++ b/lib/Net/POP3.pm
|
||||
@@ -387,6 +387,11 @@ sub quit {
|
||||
}
|
||||
|
||||
|
||||
+sub timeout {
|
||||
+ $ISA[-1]->can('timeout')->(@_);
|
||||
+}
|
||||
+
|
||||
+
|
||||
sub DESTROY {
|
||||
my $me = shift;
|
||||
|
||||
diff --git a/lib/Net/SMTP.pm b/lib/Net/SMTP.pm
|
||||
index 0dd966f..895c884 100644
|
||||
--- a/lib/Net/SMTP.pm
|
||||
+++ b/lib/Net/SMTP.pm
|
||||
@@ -586,6 +586,11 @@ sub quit {
|
||||
}
|
||||
|
||||
|
||||
+sub timeout {
|
||||
+ $ISA[-1]->can('timeout')->(@_);
|
||||
+}
|
||||
+
|
||||
+
|
||||
sub DESTROY {
|
||||
|
||||
# ignore
|
||||
--
|
||||
2.5.5
|
||||
|
|
@ -1,23 +1,30 @@
|
|||
Name: perl-libnet
|
||||
Version: 3.09
|
||||
Release: 2%{?dist}
|
||||
Version: 3.11
|
||||
Release: 1%{?dist}
|
||||
Summary: Perl clients for various network protocols
|
||||
# other files: GPL+ or Artistic
|
||||
## Not in binary packages
|
||||
# repackage.sh: GPLv2+
|
||||
## Removed from upstream sources:
|
||||
# lib/Net/libnetFAQ.pod: Artistic (CPAN RT#117888)
|
||||
License: GPL+ or Artistic
|
||||
Group: Development/Libraries
|
||||
URL: http://search.cpan.org/dist/libnet/
|
||||
Source0: http://www.cpan.org/authors/id/S/SH/SHAY/libnet-%{version}.tar.gz
|
||||
# Origin source archive contains Artistic only files, CPAN RT#117888.
|
||||
# Local archive produced by "./repackage.sh %%{version}" command.
|
||||
# http://www.cpan.org/authors/id/S/SH/SHAY/libnet-%%{version}.tar.gz
|
||||
Source0: libnet-%{version}_repackaged.tar.gz
|
||||
# Replacement for the Artistic only file, CPAN RT#117888.
|
||||
Source1: libnetFAQ.pod
|
||||
# Convert Changes to UTF-8
|
||||
Patch0: libnet-3.09-Normalize-Changes-encoding.patch
|
||||
# Do not create Net/libnet.cfg, bug #1238689
|
||||
Patch1: libnet-3.08-Do-not-create-Net-libnet.cfg.patch
|
||||
# Fix blocking in Net::FTP and other subclasses, bug #1360610, CPAN RT#116345
|
||||
Patch2: libnet-3.09-Override-timeout-method-in-Net-FTP-and-other-subclas.patch
|
||||
BuildArch: noarch
|
||||
BuildRequires: findutils
|
||||
BuildRequires: coreutils
|
||||
BuildRequires: make
|
||||
BuildRequires: perl
|
||||
BuildRequires: perl-generators
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.64
|
||||
BuildRequires: perl-interpreter
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
|
||||
# Getopt::Std not used because of Do-not-create-Net-libnet.cfg.patch
|
||||
# IO::File not used because of Do-not-create-Net-libnet.cfg.patch
|
||||
BuildRequires: perl(strict)
|
||||
|
@ -93,17 +100,17 @@ protocols used in the internet community.
|
|||
|
||||
%prep
|
||||
%setup -q -n libnet-%{version}
|
||||
# Provide dummy Net::libnetFAQ document, CPAN RT#117888
|
||||
install -m 0644 %{SOURCE1} lib/Net
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
|
||||
%build
|
||||
perl Makefile.PL INSTALLDIRS=vendor </dev/null
|
||||
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 </dev/null
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make pure_install DESTDIR=$RPM_BUILD_ROOT
|
||||
find $RPM_BUILD_ROOT -type f -name .packlist -delete
|
||||
%{_fixperms} $RPM_BUILD_ROOT/*
|
||||
|
||||
%check
|
||||
|
@ -116,6 +123,16 @@ make test
|
|||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Wed Nov 15 2017 Petr Pisar <ppisar@redhat.com> - 3.11-1
|
||||
- 3.11 bump
|
||||
|
||||
* Fri Sep 16 2016 Petr Pisar <ppisar@redhat.com> - 3.10-2
|
||||
- Net::libnetFAQ document replaced with a hyper link because of the Artistic
|
||||
license (CPAN RT#117888)
|
||||
|
||||
* Mon Aug 01 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.10-1
|
||||
- 3.10 bump
|
||||
|
||||
* Wed Jul 27 2016 Petr Pisar <ppisar@redhat.com> - 3.09-2
|
||||
- Fix blocking in Net::FTP and other subclasses (bug #1360610)
|
||||
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Copyright (C) 2010 Red Hat, Inc.
|
||||
# Authors:
|
||||
# Thomas Woerner <twoerner@redhat.com>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
version=$1
|
||||
[ -z "$version" ] && { echo "Usage: $0 <version>"; exit 1; }
|
||||
|
||||
# files to be removed without the main libnet-<version>/ prefix
|
||||
declare -a REMOVE
|
||||
REMOVE[${#REMOVE[*]}]="lib/Net/libnetFAQ.pod"
|
||||
|
||||
# no changes below this line should be needed
|
||||
|
||||
orig="libnet-${version}"
|
||||
orig_tgz="${orig}.tar.gz"
|
||||
repackaged="${orig}_repackaged"
|
||||
repackaged_tar="${repackaged}.tar"
|
||||
repackaged_tgz="${repackaged_tar}.gz"
|
||||
|
||||
# pre checks
|
||||
[ ! -f "${orig_tgz}" ] && { echo "ERROR: ${orig_tgz} does not exist"; exit 1; }
|
||||
[ -f "${repackaged_tgz}" ] && { echo "ERROR: ${repackaged_tgz} already exist"; exit 1; }
|
||||
|
||||
# repackage
|
||||
failure=0
|
||||
gzip -dc "${orig_tgz}" > "${repackaged_tar}"
|
||||
for file in "${REMOVE[@]}"; do
|
||||
tar -f "${repackaged_tar}" --delete "${orig}/${file}" >> repackage.log
|
||||
[ $? != 0 ] && { echo "ERROR: Could not remove file ${orig}/${file} from archive."; failure=1; } || echo "Removed ${orig}/${file} from archive."
|
||||
done
|
||||
[ $failure != 0 ] && { echo "See repackage.log for details."; exit 1; }
|
||||
gzip -9 -n "${repackaged_tar}"
|
||||
|
||||
# post checks
|
||||
RET=0
|
||||
for file in "${REMOVE[@]}"; do
|
||||
found=$(tar -ztvf "${repackaged_tgz}" | grep "${file}")
|
||||
[ -n "$found" ] && { echo "ERROR: file ${file} is still in the repackaged archive."; RET=1; }
|
||||
done
|
||||
|
||||
[ $RET == 0 ] && echo "Sucessfully repackaged ${orig}: ${repackaged_tgz}"
|
||||
|
||||
exit $RET
|
3
sources
3
sources
|
@ -1 +1,2 @@
|
|||
adb1ba477d02391860619f341cd58a50 libnet-3.09.tar.gz
|
||||
SHA512 (libnetFAQ.pod) = 234082350814967ac3bfc0e4c57e53f7473be69f6cc9618cef061aaaaaddfaaf0e1542d38e7775c2fc78fc16d92e45b30ccb48c07d118a0a4b5e1c90d030c42f
|
||||
SHA512 (libnet-3.11_repackaged.tar.gz) = 77f88f84d8669179c5a70a147822ae09b9a1f94f13c7df0a78d713d65754862cb9fdae41aa632885449b93adaf674990da65b8558a9ef116e5d5c2870be09100
|
||||
|
|
Loading…
Reference in New Issue