commit 1a1c528a16e05b421e455b813f3b7434958e2928 Author: James Antill Date: Mon Feb 20 02:05:14 2023 -0500 Import rpm: fea270ecda58d792b120fa7087cfeeb395cb130a diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b396629 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libnet-3.11_repackaged.tar.gz diff --git a/libnet-3.08-Do-not-create-Net-libnet.cfg.patch b/libnet-3.08-Do-not-create-Net-libnet.cfg.patch new file mode 100644 index 0000000..911bc10 --- /dev/null +++ b/libnet-3.08-Do-not-create-Net-libnet.cfg.patch @@ -0,0 +1,43 @@ +From a40f2774eede8e65dd6128b45525ec88f469e031 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Fri, 10 Jul 2015 13:02:00 +0200 +Subject: [PATCH 2/2] Do not create Net/libnet.cfg +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +I will remove the Net/libnet.cfg because: + +(1) it's content equals to default configuration hard-coded in the +code +(2) it's kind of configuration file we do not mark it as a configuration +file, so it's overwritten on each update +(3) it's loaded from directory based on Net::Config module location. +I.e. core module will search it in core path, vendor module in vendor +path and site module in site path. + +perl.spec does not provide it either. + + + +Signed-off-by: Petr PísaÅ™ +--- + Makefile.PL | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.PL b/Makefile.PL +index 64d6959..25fc626 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -235,7 +235,7 @@ MAIN: { + sub MY::post_initialize { + my $self = shift; + +- return '' if $self->{PERL_CORE}; ++ return ''; + + if (not -f $CfgFile) { + my @args = qw(Configure); +-- +2.5.0 + diff --git a/libnet-3.09-Normalize-Changes-encoding.patch b/libnet-3.09-Normalize-Changes-encoding.patch new file mode 100644 index 0000000..a7b2441 --- /dev/null +++ b/libnet-3.09-Normalize-Changes-encoding.patch @@ -0,0 +1,29 @@ +From 05e241bca2f48a271627a2fedcdb43f1fe5b9483 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Thu, 2 Jul 2015 13:37:47 +0200 +Subject: [PATCH] Normalize Changes encoding +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Petr PísaÅ™ +--- + Changes | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Changes b/Changes +index 831e061..27fda24 100644 +--- a/Changes ++++ b/Changes +@@ -236,7 +236,7 @@ Revision history for Perl distribution libnet + + 1.24 2014-01-06 + +- - Fix incorrect handling of CRLF in Net::FTP. [Willem Monsuwé, CPAN ++ - Fix incorrect handling of CRLF in Net::FTP. [Willem Monsuwé, CPAN + RT#41642/62029] + + - POD fixes. [Dominic Hargreaves, CPAN RT#91761] +-- +2.5.5 + diff --git a/libnetFAQ.pod b/libnetFAQ.pod new file mode 100644 index 0000000..8cd15d3 --- /dev/null +++ b/libnetFAQ.pod @@ -0,0 +1,6 @@ +=encoding utf-8 + +The L. You can +access the original document on +L. diff --git a/perl-libnet.spec b/perl-libnet.spec new file mode 100644 index 0000000..befd86b --- /dev/null +++ b/perl-libnet.spec @@ -0,0 +1,194 @@ +# Run optional test +%if ! (0%{?rhel}) +%bcond_without perl_libnet_enables_optional_test +%else +%bcond_with perl_libnet_enables_optional_test +%endif +# SASL support +%bcond_without perl_libnet_enables_sasl +# SSL support +%bcond_without perl_libnet_enables_ssl + +Name: perl-libnet +Version: 3.11 +Release: 4%{?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 +URL: http://search.cpan.org/dist/libnet/ +# 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 +BuildArch: noarch +BuildRequires: coreutils +BuildRequires: make +BuildRequires: perl-generators +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) +BuildRequires: perl(warnings) +# Run-time: +BuildRequires: perl(Carp) +BuildRequires: perl(constant) +# Convert::EBCDIC not used +BuildRequires: perl(Errno) +BuildRequires: perl(Exporter) +BuildRequires: perl(Fcntl) +# File::Basename not used at tests +BuildRequires: perl(FileHandle) +BuildRequires: perl(IO::Select) +BuildRequires: perl(IO::Socket) >= 1.05 +# Prefer IO::Socket::IP over IO::Socket::INET6 and IO::Socket::INET +# IO::Socket::INET6 not used +BuildRequires: perl(IO::Socket::IP) >= 0.25 +BuildRequires: perl(POSIX) +BuildRequires: perl(Socket) >= 2.016 +BuildRequires: perl(Symbol) +BuildRequires: perl(Time::Local) +# Optional run-time: +# Authen::SASL not used at tests +# Digest::MD5 not used at tests +%if %{with perl_libnet_enables_ssl} && !%{defined perl_bootstrap} +# Core modules must be built without non-core dependencies +BuildRequires: perl(IO::Socket::SSL) >= 2.007 +%endif +# MD5 not used because we prefer Digest::MD5 +# MIME::Base64 not used at tests +# Tests: +BuildRequires: perl(Config) +BuildRequires: perl(Cwd) +BuildRequires: perl(File::Temp) +BuildRequires: perl(IO::File) +BuildRequires: perl(Test::More) +%if %{with perl_libnet_enables_optional_test} +# Optional tests: +%if %{with perl_libnet_enables_ssl} && !%{defined perl_bootstrap} +# Core modules must be built without non-core dependencies +BuildRequires: perl(IO::Socket::SSL::Utils) +%endif +# Test::CPAN::Changes not used +# Test::Perl::Critic not used +# Test::Pod 1.00 not used +# Test::Pod::Coverage 0.08 not used +%endif +Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) +Requires: perl(File::Basename) +Requires: perl(IO::Socket) >= 1.05 +# Prefer IO::Socket::IP over IO::Socket::INET6 and IO::Socket::INET +Requires: perl(IO::Socket::IP) >= 0.25 +Requires: perl(POSIX) +Requires: perl(Socket) >= 2.016 +# Optional run-time: +# Core modules must be built without non-core dependencies +%if %{with perl_libnet_enables_sasl} && !%{defined perl_bootstrap} +Suggests: perl(Authen::SASL) +Suggests: perl(MIME::Base64) +%endif +# Digest::MD5 or MD5 +Requires: perl(Digest::MD5) +%if %{with perl_libnet_enables_ssl} && !%{defined perl_bootstrap} +Suggests: perl(IO::Socket::SSL) >= 2.007 +%endif +Conflicts: perl < 4:5.22.0-347 + +# Filter under-specified dependencies +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\((IO::Socket|Socket)\\)$ + +%description +This is a collection of Perl modules which provides a simple and +consistent programming interface (API) to the client side of various +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 + +%build +perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 - 3.11-4 +- Rebuild with enable hardening (bug #1636329) + +* Fri Feb 09 2018 Fedora Release Engineering - 3.11-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Dec 12 2017 Petr Pisar - 3.11-2 +- Require Digest::MD5 for APOP login method + +* Wed Nov 15 2017 Petr Pisar - 3.11-1 +- 3.11 bump + +* Thu Jul 27 2017 Fedora Release Engineering - 3.10-395 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Jun 07 2017 Jitka Plesnikova - 3.10-394 +- Perl 5.26 re-rebuild of bootstrapped packages + +* Sat Jun 03 2017 Jitka Plesnikova - 3.10-393 +- Perl 5.26 rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 3.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Sep 16 2016 Petr Pisar - 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 - 3.10-1 +- 3.10 bump + +* Wed Jul 27 2016 Petr Pisar - 3.09-2 +- Fix blocking in Net::FTP and other subclasses (bug #1360610) + +* Wed Jul 20 2016 Petr Pisar - 3.09-1 +- 3.09 bump + +* Wed May 18 2016 Jitka Plesnikova - 3.08-366 +- Perl 5.24 re-rebuild of bootstrapped packages + +* Sat May 14 2016 Jitka Plesnikova - 3.08-365 +- Increase release to favour standalone package + +* Thu Feb 04 2016 Fedora Release Engineering - 3.08-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jan 06 2016 Petr Pisar - 3.08-1 +- 8.08 bump + +* Mon Jul 20 2015 Petr Pisar - 3.07-1 +- 3.07 bump + +* Wed Jul 01 2015 Petr Pisar 3.06-1 +- Specfile autogenerated by cpanspec 1.78. +- Do not create Net/libnet.cfg (bug #1238689) diff --git a/repackage.sh b/repackage.sh new file mode 100755 index 0000000..b9b8a9a --- /dev/null +++ b/repackage.sh @@ -0,0 +1,59 @@ +#!/bin/bash +# +# Copyright (C) 2010 Red Hat, Inc. +# Authors: +# Thomas Woerner +# +# 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 . +# + +version=$1 +[ -z "$version" ] && { echo "Usage: $0 "; exit 1; } + +# files to be removed without the main libnet-/ 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 diff --git a/sources b/sources new file mode 100644 index 0000000..8c530ae --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA1 (libnet-3.11_repackaged.tar.gz) = a4d57be085667743c2d040bc309a61b036b2c6e0