summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2009-01-31 12:39:37 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2009-01-31 12:39:37 +0000
commit7edab008dca7687d76026fb051cddf203a6ab08a (patch)
treed95ed57adab41eda3922d72d9c974ceecda5bf3b /sci-libs/cfitsio
parentFixing test failure, patch by Brian Harring. Fixes #216942 (diff)
downloadgentoo-2-7edab008dca7687d76026fb051cddf203a6ab08a.tar.gz
gentoo-2-7edab008dca7687d76026fb051cddf203a6ab08a.tar.bz2
gentoo-2-7edab008dca7687d76026fb051cddf203a6ab08a.zip
Added protection against null pointer dereferences, thanks to Paul Price, bug #256681
(Portage version: 2.2_rc23/cvs/Linux x86_64)
Diffstat (limited to 'sci-libs/cfitsio')
-rw-r--r--sci-libs/cfitsio/ChangeLog12
-rw-r--r--sci-libs/cfitsio/cfitsio-3.100-r1.ebuild (renamed from sci-libs/cfitsio/cfitsio-3.090.ebuild)5
-rw-r--r--sci-libs/cfitsio/files/cfitsio-3.100-null-protect.patch39
-rw-r--r--sci-libs/cfitsio/metadata.xml14
4 files changed, 59 insertions, 11 deletions
diff --git a/sci-libs/cfitsio/ChangeLog b/sci-libs/cfitsio/ChangeLog
index 613729136419..a892fc2aae9a 100644
--- a/sci-libs/cfitsio/ChangeLog
+++ b/sci-libs/cfitsio/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sci-libs/cfitsio
-# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/cfitsio/ChangeLog,v 1.21 2008/08/22 18:26:16 bicatali Exp $
+# Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/cfitsio/ChangeLog,v 1.22 2009/01/31 12:39:37 bicatali Exp $
+
+*cfitsio-3.100-r1 (31 Jan 2009)
+
+ 31 Jan 2009; Sébastien Fabbro <bicatali@gentoo.org>
+ +files/cfitsio-3.100-null-protect.patch, metadata.xml,
+ -cfitsio-3.090.ebuild, +cfitsio-3.100-r1.ebuild:
+ Added protection against null pointer dereferences, thanks to Paul Price,
+ bug #256681
*cfitsio-3.100 (22 Aug 2008)
diff --git a/sci-libs/cfitsio/cfitsio-3.090.ebuild b/sci-libs/cfitsio/cfitsio-3.100-r1.ebuild
index 83a3de67cc79..24ea7ea58707 100644
--- a/sci-libs/cfitsio/cfitsio-3.090.ebuild
+++ b/sci-libs/cfitsio/cfitsio-3.100-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/cfitsio/cfitsio-3.090.ebuild,v 1.1 2008/06/18 21:47:57 bicatali Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/cfitsio/cfitsio-3.100-r1.ebuild,v 1.1 2009/01/31 12:39:37 bicatali Exp $
inherit eutils fortran autotools
@@ -27,6 +27,7 @@ pkg_setup() {
src_unpack() {
unpack ${A}
+ epatch "${FILESDIR}"/${P}-null-protect.patch
cd "${S}"
# avoid internal cfortran
if use fortran; then
diff --git a/sci-libs/cfitsio/files/cfitsio-3.100-null-protect.patch b/sci-libs/cfitsio/files/cfitsio-3.100-null-protect.patch
new file mode 100644
index 000000000000..5959b7fd3035
--- /dev/null
+++ b/sci-libs/cfitsio/files/cfitsio-3.100-null-protect.patch
@@ -0,0 +1,39 @@
+diff -Naur cfitsio.orig/edithdu.c cfitsio/edithdu.c
+--- cfitsio.orig/edithdu.c 2009-01-31 12:30:07.196101165 +0000
++++ cfitsio/edithdu.c 2009-01-31 12:32:03.467511681 +0000
+@@ -556,7 +556,9 @@
+ return(*status);
+
+ extnm[0] = '\0';
+- strncat(extnm, extnmx, FLEN_VALUE-1);
++ if (extnmx) {
++ strncat(extnm, extnmx, FLEN_VALUE-1);
++ }
+
+ if (fptr->HDUposition != (fptr->Fptr)->curhdu)
+ ffmahd(fptr, (fptr->HDUposition) + 1, NULL, status);
+@@ -692,7 +694,9 @@
+ return(*status);
+
+ extnm[0] = '\0';
+- strncat(extnm, extnmx, FLEN_VALUE-1);
++ if (extnmx) {
++ strncat(extnm, extnmx, FLEN_VALUE-1);
++ }
+
+ if (fptr->HDUposition != (fptr->Fptr)->curhdu)
+ ffmahd(fptr, (fptr->HDUposition) + 1, NULL, status);
+diff -Naur cfitsio.orig/putkey.c cfitsio/putkey.c
+--- cfitsio.orig/putkey.c 2009-01-31 12:30:07.220108134 +0000
++++ cfitsio/putkey.c 2009-01-31 12:32:49.566075447 +0000
+@@ -2729,7 +2729,9 @@
+ }
+
+ xtension[0] = '\0';
+- strncat(xtension, xtensionx, FLEN_VALUE-1);
++ if (xtensionx) {
++ strncat(xtension, xtensionx, FLEN_VALUE-1);
++ }
+
+ ffpkys(fptr, "XTENSION", xtension, "extension type", status);
+ ffpkyj(fptr, "BITPIX", bitpix, "number of bits per data pixel", status);
diff --git a/sci-libs/cfitsio/metadata.xml b/sci-libs/cfitsio/metadata.xml
index cbd007c16aca..b455c7145fe3 100644
--- a/sci-libs/cfitsio/metadata.xml
+++ b/sci-libs/cfitsio/metadata.xml
@@ -4,12 +4,12 @@
<herd>sci</herd>
<maintainer><email>nerdboy@gentoo.org</email></maintainer>
<longdescription lang="en">
-CFITSIO is a library of C and Fortran subroutines for reading and
-writing data files in FITS (Flexible Image Transport System) data
-format. CFITSIO provides simple high-level routines for reading and
-writing FITS files that insulate the programmer from the internal
-complexities of the FITS format. CFITSIO also provides advanced
-features for manipulating and filtering the information in FITS
-files.
+ CFITSIO is a library of C and Fortran subroutines for reading and
+ writing data files in FITS (Flexible Image Transport System) data
+ format. CFITSIO provides simple high-level routines for reading and
+ writing FITS files that insulate the programmer from the internal
+ complexities of the FITS format. CFITSIO also provides advanced
+ features for manipulating and filtering the information in FITS
+ files.
</longdescription>
</pkgmetadata>