diff --git a/libsndfile-paf-zero-division-fix.diff b/libsndfile-paf-zero-division-fix.diff new file mode 100644 index 0000000..3debd8e --- /dev/null +++ b/libsndfile-paf-zero-division-fix.diff @@ -0,0 +1,16 @@ +=== modified file 'src/paf.c' +--- + src/paf.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/src/paf.c ++++ b/src/paf.c +@@ -202,7 +202,7 @@ + psf->endian = SF_ENDIAN_BIG ; + } ; + +- if (paf_fmt.channels > SF_MAX_CHANNELS) ++ if (paf_fmt.channels > SF_MAX_CHANNELS || paf_fmt.channels <= 0) + return SFE_PAF_BAD_CHANNELS ; + + psf->datalength = psf->filelength - psf->dataoffset ; diff --git a/libsndfile-progs.changes b/libsndfile-progs.changes index c6af06a..4e0bacb 100644 --- a/libsndfile-progs.changes +++ b/libsndfile-progs.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Jul 29 14:48:03 CEST 2011 - tiwai@suse.de + +- Fix zero-division in PAF parser (bnc#708988) + ------------------------------------------------------------------- Mon Jul 18 17:23:30 CEST 2011 - tiwai@suse.de diff --git a/libsndfile.changes b/libsndfile.changes index 30bfebc..4492e14 100644 --- a/libsndfile.changes +++ b/libsndfile.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Wed Aug 24 18:07:57 UTC 2011 - crrodriguez@opensuse.org + +- Enable speex support +- run make check + +------------------------------------------------------------------- +Fri Jul 29 14:48:03 CEST 2011 - tiwai@suse.de + +- Fix zero-division in PAF parser (bnc#708988) + ------------------------------------------------------------------- Wed Jul 27 23:39:43 UTC 2011 - crrodriguez@opensuse.org diff --git a/libsndfile.spec b/libsndfile.spec index 05b1adc..d9cc7f6 100644 --- a/libsndfile.spec +++ b/libsndfile.spec @@ -18,23 +18,32 @@ Name: libsndfile -BuildRequires: alsa-devel flac-devel gcc-c++ libvorbis-devel pkg-config sqlite-devel -Summary: A Library to Handle Various Audio File Formats Version: 1.0.25 Release: 2 License: LGPLv2.1+ +Summary: A Library to Handle Various Audio File Formats Group: System/Libraries +BuildRequires: alsa-devel +BuildRequires: flac-devel +BuildRequires: gcc-c++ +BuildRequires: libvorbis-devel +BuildRequires: pkg-config +BuildRequires: sqlite-devel +BuildRequires: speex-devel Obsoletes: libsnd Provides: libsnd # bug437293 %ifarch ppc64 Obsoletes: libsndfile-64bit %endif +Url: http://www.mega-nerd.com/libsndfile/ # Source: libsndfile-%{version}.tar.gz Source2: baselibs.conf -Patch: libsndfile-example-fix.diff -Url: http://www.mega-nerd.com/libsndfile/ +# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines +Patch0: libsndfile-example-fix.diff +# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines +Patch1: libsndfile-paf-zero-division-fix.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -43,17 +52,13 @@ AIFF, AU, and WAV files, through one standard interface. It can currently read and write 8, 16, 24, and 32-bit PCM files as well as 32-bit floating point WAV files and a number of compressed formats. - - -Authors: --------- - Erik de Castro Lopo - %package devel License: LGPLv2.1+ Summary: Development package for the libsndfile library Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} glibc-devel libstdc++-devel +Requires: %{name} = %{version} +Requires: glibc-devel +Requires: libstdc++-devel Obsoletes: libsndd Provides: libsndd # bug437293 @@ -66,44 +71,45 @@ Obsoletes: libsndfile-devel-64bit This package contains the files needed to compile programs that use the libsndfile library. - - -Authors: --------- - Erik de Castro Lopo - %prep %setup -q -%patch +%patch0 +%patch1 -p1 %build %define warn_flags -W -Wall -Wstrict-prototypes -Wpointer-arith -Wno-unused-parameter # autoreconf --force --install -CFLAGS="$RPM_OPT_FLAGS %{warn_flags}" +CFLAGS="%{optflags} %{warn_flags}" export CFLAGS %configure --disable-silent-rules \ --disable-static \ --enable-sqlite \ - --with-pic + --with-pic \ + --enable-experimental make %{?_smp_mflags} %install -make DESTDIR="$RPM_BUILD_ROOT" install +%make_install # remove unnecessary files -rm -f $RPM_BUILD_ROOT%{_libdir}/*.la +rm -f %{buildroot}%{_libdir}/*.la # remove programs; built in another spec file -rm -rf $RPM_BUILD_ROOT%{_bindir} -rm -rf $RPM_BUILD_ROOT%{_mandir}/man1 +rm -rf %{buildroot}%{_bindir} +rm -rf %{buildroot}%{_mandir}/man1 # remove binaries from examples directory make -C examples distclean -rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libsndfile1-dev +rm -rf %{buildroot}%{_datadir}/doc/libsndfile1-dev %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %clean -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot} + +%check +pushd src +make check +popd %files %defattr(-, root, root)