Thu Jul 14 09:49:01 2011 UTC ()
add patch from upstream to fix crash by invalid PAF files
(DOS problem, SA45125)
bump PKGREV


(drochner)
diff -r1.60 -r1.61 pkgsrc/audio/libsndfile/Makefile
diff -r1.32 -r1.33 pkgsrc/audio/libsndfile/distinfo
diff -r0 -r1.17 pkgsrc/audio/libsndfile/patches/patch-aa
diff -r0 -r1.11 pkgsrc/audio/libsndfile/patches/patch-ab
diff -r0 -r1.13 pkgsrc/audio/libsndfile/patches/patch-ac

cvs diff -r1.60 -r1.61 pkgsrc/audio/libsndfile/Makefile (expand / switch to unified diff)

--- pkgsrc/audio/libsndfile/Makefile 2011/03/23 21:14:31 1.60
+++ pkgsrc/audio/libsndfile/Makefile 2011/07/14 09:49:01 1.61
@@ -1,16 +1,17 @@ @@ -1,16 +1,17 @@
1# $NetBSD: Makefile,v 1.60 2011/03/23 21:14:31 adam Exp $ 1# $NetBSD: Makefile,v 1.61 2011/07/14 09:49:01 drochner Exp $
2 2
3DISTNAME= libsndfile-1.0.24 3DISTNAME= libsndfile-1.0.24
 4PKGREVISION= 1
4CATEGORIES= audio 5CATEGORIES= audio
5MASTER_SITES= http://www.mega-nerd.com/libsndfile/files/ 6MASTER_SITES= http://www.mega-nerd.com/libsndfile/files/
6 7
7MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
8HOMEPAGE= http://www.mega-nerd.com/libsndfile/ 9HOMEPAGE= http://www.mega-nerd.com/libsndfile/
9COMMENT= Library for reading and writing audio files 10COMMENT= Library for reading and writing audio files
10LICENSE= gnu-lgpl-v2.1 11LICENSE= gnu-lgpl-v2.1
11 12
12PKG_DESTDIR_SUPPORT= user-destdir 13PKG_DESTDIR_SUPPORT= user-destdir
13PKG_INSTALLATION_TYPES= overwrite pkgviews 14PKG_INSTALLATION_TYPES= overwrite pkgviews
14 15
15USE_LANGUAGES= c c++ 16USE_LANGUAGES= c c++
16USE_LIBTOOL= yes 17USE_LIBTOOL= yes

cvs diff -r1.32 -r1.33 pkgsrc/audio/libsndfile/distinfo (expand / switch to unified diff)

--- pkgsrc/audio/libsndfile/distinfo 2011/03/23 21:14:31 1.32
+++ pkgsrc/audio/libsndfile/distinfo 2011/07/14 09:49:01 1.33
@@ -1,5 +1,8 @@ @@ -1,5 +1,8 @@
1$NetBSD: distinfo,v 1.32 2011/03/23 21:14:31 adam Exp $ 1$NetBSD: distinfo,v 1.33 2011/07/14 09:49:01 drochner Exp $
2 2
3SHA1 (libsndfile-1.0.24.tar.gz) = ade2dad272b52f61bb58aca3a4004b28549ee0f8 3SHA1 (libsndfile-1.0.24.tar.gz) = ade2dad272b52f61bb58aca3a4004b28549ee0f8
4RMD160 (libsndfile-1.0.24.tar.gz) = 5ace8823b3b44576e8cf5ec8fa8d46935d8fb350 4RMD160 (libsndfile-1.0.24.tar.gz) = 5ace8823b3b44576e8cf5ec8fa8d46935d8fb350
5Size (libsndfile-1.0.24.tar.gz) = 963034 bytes 5Size (libsndfile-1.0.24.tar.gz) = 963034 bytes
 6SHA1 (patch-aa) = 832fb2e44d692922403fccbfe23315a925e4f931
 7SHA1 (patch-ab) = 5b2139035c41b49c714fabdff40dd0d5db5a306e
 8SHA1 (patch-ac) = 5e7383f4332f24f609ae208aa75044f9863c5205

File Added: pkgsrc/audio/libsndfile/patches/Attic/patch-aa
$NetBSD: patch-aa,v 1.17 2011/07/14 09:49:01 drochner Exp $

SA45125

--- src/common.h.orig	2011-03-23 09:01:02.000000000 +0000
+++ src/common.h
@@ -557,6 +557,7 @@ enum
 	SFE_PAF_VERSION,
 	SFE_PAF_UNKNOWN_FORMAT,
 	SFE_PAF_SHORT_HEADER,
+	SFE_PAF_BAD_CHANNELS,
 
 	SFE_SVX_NO_FORM,
 	SFE_SVX_NO_BODY,

File Added: pkgsrc/audio/libsndfile/patches/Attic/patch-ab
$NetBSD: patch-ab,v 1.11 2011/07/14 09:49:01 drochner Exp $

SA45125

--- src/paf.c.orig	2011-03-23 09:01:02.000000000 +0000
+++ src/paf.c
@@ -163,6 +163,9 @@ paf_read_header	(SF_PRIVATE *psf)
 {	PAF_FMT		paf_fmt ;
 	int			marker ;
 
+	if (psf->filelength < PAF_HEADER_LENGTH)
+		return SFE_PAF_SHORT_HEADER ;
+
 	memset (&paf_fmt, 0, sizeof (paf_fmt)) ;
 	psf_binheader_readf (psf, "pm", 0, &marker) ;
 
@@ -199,8 +202,8 @@ paf_read_header	(SF_PRIVATE *psf)
 		psf->endian = SF_ENDIAN_BIG ;
 		} ;
 
-	if (psf->filelength < PAF_HEADER_LENGTH)
-		return SFE_PAF_SHORT_HEADER ;
+	if (paf_fmt.channels > SF_MAX_CHANNELS)
+		return SFE_PAF_BAD_CHANNELS ;
 
 	psf->datalength = psf->filelength - psf->dataoffset ;
 

File Added: pkgsrc/audio/libsndfile/patches/Attic/patch-ac
$NetBSD: patch-ac,v 1.13 2011/07/14 09:49:01 drochner Exp $

SA45125

--- src/sndfile.c.orig	2011-03-23 09:01:02.000000000 +0000
+++ src/sndfile.c
@@ -173,6 +173,7 @@ ErrorStruct SndfileErrors [] =
 	{	SFE_PAF_VERSION			, "Error in PAF file, bad version." },
 	{	SFE_PAF_UNKNOWN_FORMAT	, "Error in PAF file, unknown format." },
 	{	SFE_PAF_SHORT_HEADER	, "Error in PAF file. File shorter than minimal header." },
+	{	SFE_PAF_BAD_CHANNELS	, "Error in PAF file. Bad channel count." },
 
 	{	SFE_SVX_NO_FORM			, "Error in 8SVX / 16SV file, no 'FORM' marker." },
 	{	SFE_SVX_NO_BODY			, "Error in 8SVX / 16SV file, no 'BODY' marker." },