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
--- 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 | |
3 | DISTNAME= libsndfile-1.0.24 | | 3 | DISTNAME= libsndfile-1.0.24 |
| | | 4 | PKGREVISION= 1 |
4 | CATEGORIES= audio | | 5 | CATEGORIES= audio |
5 | MASTER_SITES= http://www.mega-nerd.com/libsndfile/files/ | | 6 | MASTER_SITES= http://www.mega-nerd.com/libsndfile/files/ |
6 | | | 7 | |
7 | MAINTAINER= pkgsrc-users@NetBSD.org | | 8 | MAINTAINER= pkgsrc-users@NetBSD.org |
8 | HOMEPAGE= http://www.mega-nerd.com/libsndfile/ | | 9 | HOMEPAGE= http://www.mega-nerd.com/libsndfile/ |
9 | COMMENT= Library for reading and writing audio files | | 10 | COMMENT= Library for reading and writing audio files |
10 | LICENSE= gnu-lgpl-v2.1 | | 11 | LICENSE= gnu-lgpl-v2.1 |
11 | | | 12 | |
12 | PKG_DESTDIR_SUPPORT= user-destdir | | 13 | PKG_DESTDIR_SUPPORT= user-destdir |
13 | PKG_INSTALLATION_TYPES= overwrite pkgviews | | 14 | PKG_INSTALLATION_TYPES= overwrite pkgviews |
14 | | | 15 | |
15 | USE_LANGUAGES= c c++ | | 16 | USE_LANGUAGES= c c++ |
16 | USE_LIBTOOL= yes | | 17 | USE_LIBTOOL= yes |
--- 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 | |
3 | SHA1 (libsndfile-1.0.24.tar.gz) = ade2dad272b52f61bb58aca3a4004b28549ee0f8 | | 3 | SHA1 (libsndfile-1.0.24.tar.gz) = ade2dad272b52f61bb58aca3a4004b28549ee0f8 |
4 | RMD160 (libsndfile-1.0.24.tar.gz) = 5ace8823b3b44576e8cf5ec8fa8d46935d8fb350 | | 4 | RMD160 (libsndfile-1.0.24.tar.gz) = 5ace8823b3b44576e8cf5ec8fa8d46935d8fb350 |
5 | Size (libsndfile-1.0.24.tar.gz) = 963034 bytes | | 5 | Size (libsndfile-1.0.24.tar.gz) = 963034 bytes |
| | | 6 | SHA1 (patch-aa) = 832fb2e44d692922403fccbfe23315a925e4f931 |
| | | 7 | SHA1 (patch-ab) = 5b2139035c41b49c714fabdff40dd0d5db5a306e |
| | | 8 | SHA1 (patch-ac) = 5e7383f4332f24f609ae208aa75044f9863c5205 |
$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,
$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 ;
$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." },