Compare commits

..

1 Commits
master ... f19

Author SHA1 Message Date
Petr Písař
d7d25fe0ca Fix possible crash on uninitialized object 2014-03-12 10:42:53 +01:00
5 changed files with 105 additions and 191 deletions

17
.gitignore vendored
View File

@ -1,4 +1,4 @@
/Digest-SHA-5.45.tar.gz
Digest-SHA-5.45.tar.gz
/Digest-SHA-5.70.tar.gz
/Digest-SHA-5.71.tar.gz
/Digest-SHA-5.72.tar.gz
@ -10,18 +10,3 @@
/Digest-SHA-5.83.tar.gz
/Digest-SHA-5.84.tar.gz
/Digest-SHA-5.85.tar.gz
/Digest-SHA-5.86.tar.gz
/Digest-SHA-5.87.tar.gz
/Digest-SHA-5.88.tar.gz
/Digest-SHA-5.89.tar.gz
/Digest-SHA-5.90.tar.gz
/Digest-SHA-5.91.tar.gz
/Digest-SHA-5.92.tar.gz
/Digest-SHA-5.93.tar.gz
/Digest-SHA-5.95.tar.gz
/Digest-SHA-5.96.tar.gz
/Digest-SHA-5.97.tar.gz
/Digest-SHA-5.98.tar.gz
/Digest-SHA-6.00.tar.gz
/Digest-SHA-6.01.tar.gz
/Digest-SHA-6.02.tar.gz

View File

@ -1,21 +1,17 @@
From 6c9234f3b27b3be7d89c277302464015f413e462 Mon Sep 17 00:00:00 2001
From 77ac96bd42f3986dd77e5f1afcdb3e71d2aa03b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Mon, 11 Mar 2013 09:44:22 +0100
Subject: [PATCH] Reset CFLAGS
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
Makefile.PL | 6 ------
1 file changed, 6 deletions(-)
diff --git a/Makefile.PL b/Makefile.PL
index af2c0c3..65f4771 100644
index 3d83865..f0d08a1 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -64,12 +64,6 @@ if ($^O eq 'VMS') {
@@ -27,12 +27,6 @@ if ($^O eq 'VMS') {
}
}
@ -25,9 +21,9 @@ index af2c0c3..65f4771 100644
- push(@extra, OPTIMIZE => '-O1 -fomit-frame-pointer');
-}
-
my $fussy = '-Wall -Wextra -Wconversion -Wcast-align -Wpointer-arith ';
push(@extra, CCFLAGS => $fussy . $Config{ccflags}) if $opt_w;
my %att = (
'NAME' => 'Digest::SHA',
'VERSION_FROM' => $PM,
--
1.9.3
1.8.1.4

View File

@ -0,0 +1,68 @@
From c898bd4f5880bd7ddbf5987024c2748eae3d88a7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Wed, 12 Mar 2014 10:17:16 +0100
Subject: [PATCH] Check for ISA when invoking methods
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
After:
use Digest::SHA;
my $d=Digest::SHA->add(qq(a));
calling $d->hashsize() and other methods resulted in crash.
This is relevant patch from Digest-SHA-5.87.
Perl RT#121421
<https://bugzilla.redhat.com/show_bug.cgi?id=1075478>
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
SHA.xs | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/SHA.xs b/SHA.xs
index 3caf8ef..69908a0 100644
--- a/SHA.xs
+++ b/SHA.xs
@@ -34,6 +34,8 @@ shaclose(s)
CODE:
RETVAL = shaclose(s);
sv_setiv(SvRV(ST(0)), 0);
+OUTPUT:
+ RETVAL
int
shadump(file, s)
@@ -186,6 +188,8 @@ PREINIT:
SHA *state;
int result;
PPCODE:
+ if (!sv_isa(self, "Digest::SHA"))
+ XSRETURN_UNDEF;
state = INT2PTR(SHA *, SvIV(SvRV(SvRV(self))));
result = ix ? shaalg(state) : shadsize(state) << 3;
ST(0) = sv_2mortal(newSViv(result));
@@ -200,6 +204,8 @@ PREINIT:
STRLEN len;
SHA *state;
PPCODE:
+ if (!sv_isa(self, "Digest::SHA"))
+ XSRETURN_UNDEF;
state = INT2PTR(SHA *, SvIV(SvRV(SvRV(self))));
for (i = 1; i < items; i++) {
data = (unsigned char *) (SvPVbyte(ST(i), len));
@@ -224,6 +230,8 @@ PREINIT:
SHA *state;
char *result;
PPCODE:
+ if (!sv_isa(self, "Digest::SHA"))
+ XSRETURN_UNDEF;
state = INT2PTR(SHA *, SvIV(SvRV(SvRV(self))));
shafinish(state);
len = 0;
--
1.8.5.3

View File

@ -1,66 +1,43 @@
# Inherit additional methods from Digest::Base
%bcond_without perl_Digest_SHA_enables_digest_base
# Run optional test
%if ! (0%{?rhel})
%bcond_without perl_Digest_SHA_enables_optional_test
%else
%bcond_with perl_Digest_SHA_enables_optional_test
%endif
Name: perl-Digest-SHA
Epoch: 1
Version: 6.02
Release: 4%{?dist}
Version: 5.85
Release: 2%{?dist}
Summary: Perl extension for SHA-1/224/256/384/512
License: GPL+ or Artistic
URL: https://metacpan.org/release/Digest-SHA
Source0: https://cpan.metacpan.org/authors/id/M/MS/MSHELOR/Digest-SHA-%{version}.tar.gz
Group: Development/Libraries
URL: http://search.cpan.org/dist/Digest-SHA/
Source0: http://www.cpan.org/authors/id/M/MS/MSHELOR/Digest-SHA-%{version}.tar.gz
# Since 5.80, upstream overrides CFLAGS because they think it improves
# performance. Revert it.
Patch0: Digest-SHA-5.93-Reset-CFLAGS.patch
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: gcc
BuildRequires: make
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: perl-interpreter
Patch0: Digest-SHA-5.84-Reset-CFLAGS.patch
# Fix possible crash on uninitialized object, fixed in 5.87, bug #1075478,
# RT#121421
Patch1: Digest-SHA-5.85-Check-for-ISA-when-invoking-methods.patch
BuildRequires: perl
BuildRequires: perl(Config)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(Getopt::Std)
BuildRequires: perl(strict)
BuildRequires: perl(vars)
# Run-time
BuildRequires: perl(Carp)
BuildRequires: perl(DynaLoader)
BuildRequires: perl(Exporter)
BuildRequires: perl(Fcntl)
# Getopt::Long not used at tests
BuildRequires: perl(integer)
BuildRequires: perl(warnings)
# XSLoader or DynaLoader
BuildRequires: perl(XSLoader)
BuildRequires: perl(vars)
# Optional run-time
%if %{with perl_Digest_SHA_enables_digest_base}
BuildRequires: perl(Digest::base)
%endif
# Tests
BuildRequires: perl(FileHandle)
%if %{with perl_Digest_SHA_enables_optional_test}
# Optional tests
%if !%{defined perl_bootstrap}
BuildRequires: perl(Test::More)
BuildRequires: perl(Test::Pod) >= 1.00
BuildRequires: perl(Test::Pod::Coverage) >= 0.08
%endif
%endif
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Requires: perl(Carp)
# Optional but recommended
%if %{with perl_Digest_SHA_enables_digest_base}
Requires: perl(Digest::base)
%endif
# XSLoader or DynaLoader
Requires: perl(XSLoader)
%{?perl_default_filter}
@ -73,146 +50,34 @@ handle all types of input, including partial-byte data.
%prep
%setup -q -n Digest-SHA-%{version}
%patch0 -p1
%patch1 -p1
chmod -x examples/*
perl -MExtUtils::MakeMaker -e 'ExtUtils::MM_Unix->fixin(q{examples/dups})'
%build
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 OPTIMIZE='%{optflags}'
%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS"
make %{?_smp_mflags}
%install
make pure_install DESTDIR='%{buildroot}'
find '%{buildroot}' -type f -name '*.bs' -empty -delete
%{_fixperms} -c '%{buildroot}'
make pure_install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -exec rm -f {} \;
%{_fixperms} $RPM_BUILD_ROOT/*
%check
make test
%files
%doc Changes examples/ README
%{_bindir}/shasum
%{perl_vendorarch}/auto/Digest/
%{perl_vendorarch}/Digest/
%{_mandir}/man1/shasum.1*
%{_mandir}/man3/Digest::SHA.3*
%doc Changes examples README
%{_bindir}/*
%{perl_vendorarch}/auto/*
%{perl_vendorarch}/Digest*
%{_mandir}/man1/*
%{_mandir}/man3/*
%changelog
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:6.02-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sun Jul 01 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:6.02-3
- Perl 5.28 re-rebuild of bootstrapped packages
* Tue Jun 26 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:6.02-2
- Perl 5.28 rebuild
* Mon Apr 23 2018 Paul Howarth <paul@city-fan.org> - 1:6.02-1
- 6.02 bump
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:6.01-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Jan 02 2018 Petr Pisar <ppisar@redhat.com> - 1:6.01-1
- 6.01 bump
* Mon Dec 11 2017 Petr Pisar <ppisar@redhat.com> - 1:6.00-1
- 6.00 bump
* Thu Oct 12 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.98-1
- 5.98 bump
* Fri Sep 08 2017 Petr Pisar <ppisar@redhat.com> - 1:5.97-1
- 5.97 bump
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.96-396
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.96-395
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Wed Jun 07 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.96-394
- Perl 5.26 re-rebuild of bootstrapped packages
* Sat Jun 03 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.96-393
- Perl 5.26 rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.96-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jul 29 2016 Petr Pisar <ppisar@redhat.com> - 1:5.96-1
- 5.96 bump
* Wed May 18 2016 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.95-366
- Perl 5.24 re-rebuild of bootstrapped packages
* Sat May 14 2016 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.95-365
- Increase release to favour standalone package
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.95-348
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:5.95-347
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed Jun 10 2015 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.95-346
- Perl 5.22 re-rebuild of bootstrapped packages
* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.95-345
- Increase release to favour standalone package
* Wed Jun 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.95-2
- Perl 5.22 rebuild
* Fri Jan 30 2015 Petr Pisar <ppisar@redhat.com> - 1:5.95-1
- 5.95 bump
* Wed Oct 29 2014 Petr Pisar <ppisar@redhat.com> - 1:5.93-2
- Do not build-require version module
* Mon Oct 27 2014 Petr Pisar <ppisar@redhat.com> - 1:5.93-1
- 5.93 bump
* Mon Sep 08 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.92-5
- Perl 5.20 re-rebuild of bootstrapped packages
* Tue Aug 26 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.92-4
- Perl 5.20 rebuild
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:5.92-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:5.92-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Jun 02 2014 Petr Pisar <ppisar@redhat.com> - 1:5.92-1
- 5.92 bump
* Mon May 26 2014 Petr Pisar <ppisar@redhat.com> - 1:5.91-1
- 5.91 bump
* Fri May 09 2014 Petr Pisar <ppisar@redhat.com> - 1:5.90-1
- 5.90 bump
* Fri Apr 25 2014 Petr Pisar <ppisar@redhat.com> - 1:5.89-1
- 5.89 bump
* Tue Mar 18 2014 Petr Pisar <ppisar@redhat.com> - 1:5.88-1
- 5.88 bump
* Wed Feb 19 2014 Petr Pisar <ppisar@redhat.com> - 1:5.87-1
- 5.87 bump
* Mon Feb 03 2014 Petr Pisar <ppisar@redhat.com> - 1:5.86-1
- 5.86 bump
* Wed Aug 14 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1:5.85-4
- Perl 5.18 re-rebuild of bootstrapped packages
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:5.85-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri Jul 12 2013 Petr Pisar <ppisar@redhat.com> - 1:5.85-2
- Perl 5.18 rebuild
* Wed Mar 12 2014 Petr Pisar <ppisar@redhat.com> - 1:5.85-2
- Fix possible crash on uninitialized object (bug #1075478)
* Fri Jun 28 2013 Petr Pisar <ppisar@redhat.com> - 1:5.85-1
- 5.85 bump

View File

@ -1 +1 @@
SHA512 (Digest-SHA-6.02.tar.gz) = 405da790a409e22fa266d0915c26223ed64c1bed96ce78d83931bab7b8a1b27deefcb05e366e5088b7aa722530f0d70f03d83a85b98637e477930aad7212a806
7e9d19d00a66363012a6fdb3ae3ffd22 Digest-SHA-5.85.tar.gz