Hello community,

here is the log from the commit of package libmspack.3580 for 
openSUSE:13.1:Update checked in at 2015-03-09 10:53:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.1:Update/libmspack.3580 (Old)
 and      /work/SRC/openSUSE:13.1:Update/.libmspack.3580.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libmspack.3580"

Changes:
--------
New Changes file:

--- /dev/null   2015-02-28 12:43:00.252025756 +0100
+++ /work/SRC/openSUSE:13.1:Update/.libmspack.3580.new/libmspack.changes        
2015-03-09 10:53:06.000000000 +0100
@@ -0,0 +1,112 @@
+-------------------------------------------------------------------
+Fri Feb 27 18:08:17 CET 2015 - [email protected]
+
+- Replace problematic libmspack-qtmd_decompress-loop.patch from
+  clamav by the mainline fix (bnc#912214#c10).
+
+-------------------------------------------------------------------
+Tue Jan 20 18:12:19 CET 2015 - [email protected]
+
+- Fix possible infinite loop caused DoS (bnc912214, CVE-2014-9556,
+  libmspack-qtmd_decompress-loop.patch).
+
+-------------------------------------------------------------------
+Mon Jun 24 10:13:52 UTC 2013 - [email protected]
+
+- Avoid Source URL for http://www.cabextract.org.uk/ as this does
+  not work 
+
+-------------------------------------------------------------------
+Sat Jun 22 17:08:46 UTC 2013 - [email protected]
+
+- Update to version 0.4alpha:
+  + This release adds support for the Microsoft Exchange Offline
+    Address Book (OAB) format, both compressed and incremental
+    variants.
+
+-------------------------------------------------------------------
+Wed Jul 18 18:35:42 UTC 2012 - [email protected]
+
+- Remove autoreconf call and libtool buildrequires, they are not
+  needed anymore.
+
+-------------------------------------------------------------------
+Wed Jul 18 19:12:53 CEST 2012 - [email protected]
+
+- Update to version 0.3alpha:
+  * code cleanup and build system update
+  * handle corrupted cabinet files better
+  * handle special cases of cabinet files
+- License update: LGPL-2.1 only.
+
+-------------------------------------------------------------------
+Mon Feb 27 15:14:56 UTC 2012 - [email protected]
+
+- license update: LGPL-2.1+
+  No indication of GPL-2.0+ code in the package
+
+-------------------------------------------------------------------
+Mon Feb 13 10:48:55 UTC 2012 - [email protected]
+
+- patch license to follow spdx.org standard
+
+-------------------------------------------------------------------
+Sun Nov 20 20:44:56 UTC 2011 - [email protected]
+
+- Remove redundant/unwanted tags/section (cf. specfile guidelines)
+- Use %_smp_mflags for parallel building
+
+-------------------------------------------------------------------
+Sat Nov 19 20:42:31 UTC 2011 - [email protected]
+
+- add libtool as buildrequire to avoid implicit dependency
+
+-------------------------------------------------------------------
+Wed Dec 22 05:21:45 CET 2010 - [email protected]
+
+- update to version 0.2alpha (#660942):
+  * matches cabextract-1.3, fixing CVE-2010-2800 and CVE-2010-2801
+  * adds pkg-config support
+  * obsoletes half of libmspack-warnings.patch
+- remove self-obsoletion
+- drop -D_POSIX_SOURCE as it breaks the build with this version
+- drop empty NEWS file
+
+-------------------------------------------------------------------
+Tue Jan 15 17:30:34 CET 2008 - [email protected]
+
+- Applied shared library packaging policy.
+- Removed unneeded static library and .la file.
+
+-------------------------------------------------------------------
+Fri Oct 20 15:41:06 CEST 2006 - [email protected]
+
+- Updated to version 0.0.20060920alpha:
+  * Bug fixes.
+  * Write an mspack_system implementation that can handle normal
+    disk files, open file handles, open file descriptors and raw
+    memory all at the same time.
+  * Added a program for dumping useful data from CHM files.
+  * Added a new test example which shows an mspack_system
+    implementation that reads and writes from memory only.
+
+-------------------------------------------------------------------
+Wed Jan 25 21:37:34 CET 2006 - [email protected]
+
+- converted neededforbuild to BuildRequires
+
+-------------------------------------------------------------------
+Mon Nov 22 11:59:08 CET 2004 - [email protected]
+
+- "sed -i" does not work on older distributions
+
+-------------------------------------------------------------------
+Wed Apr 14 15:39:48 CEST 2004 - [email protected]
+
+- include some documentation
+
+-------------------------------------------------------------------
+Wed Apr 14 11:06:06 CEST 2004 - [email protected]
+
+- initial packaging
+

New:
----
  libmspack-0.4alpha.tar.gz
  libmspack-qtmd_decompress-loop.patch
  libmspack.changes
  libmspack.spec

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libmspack.spec ++++++
#
# spec file for package libmspack
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           libmspack
Version:        0.4
Release:        0
# "alpha" in the version string just says that it is an alpha version.
%define _version %{version}alpha
Summary:        Library That Implements Different Microsoft Compressions
License:        LGPL-2.1
Group:          System/Libraries
Url:            http://www.cabextract.org.uk/libmspack/
# Warning, OBS download service does not work at http://www.cabextract.org.uk/
#Source:        
http://www.cabextract.org.uk/libmspack/%{name}-%{_version}.tar.gz
Source:         %{name}-%{_version}.tar.gz
# PATCH-FIX-SECURITY libmspack-qtmd_decompress-loop.patch bnc912214 
CVE-2014-9556 [email protected] -- Fix possible infinite loop caused DoS.
Patch:          libmspack-qtmd_decompress-loop.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  pkg-config

%description
The purpose of libmspack is to provide both compression and
decompression of some loosely related file formats used by Microsoft.
Currently the most common formats are implemented.

%package -n libmspack0
Summary:        Library That Implements Different Microsoft Compressions
Group:          System/Libraries
# OpenSUSE <= 10.3, SLES <= 10:
Provides:       libmspack = %{version}-%{release}
Obsoletes:      libmspack < %{version}-%{release}

%description -n libmspack0
The purpose of libmspack is to provide both compression and
decompression of some loosely related file formats used by Microsoft.
Currently the most common formats are implemented.

%package devel
Summary:        Static libraries, header files and documentation for libmspack
Group:          Development/Libraries/C and C++
Requires:       libmspack0 = %{version}

%description devel
The libmspack-devel package contains the header files and static
libraries necessary for developing programs using libmspack.

%prep
%setup -q -n %{name}-%{_version}
%patch -p3

%build
%configure\
        --disable-static
make %{?_smp_mflags}

%install
%makeinstall
rm $RPM_BUILD_ROOT%{_libdir}/*.*a

%post -n libmspack0 -p /sbin/ldconfig

%postun -n libmspack0 -p /sbin/ldconfig

%files -n libmspack0
%defattr(-,root,root)
%{_libdir}/*.so.*
%doc AUTHORS COPYING.LIB ChangeLog README TODO

%files devel
%defattr(-,root,root)
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_includedir}/*

%changelog
++++++ libmspack-qtmd_decompress-loop.patch ++++++
https://sourceforge.net/p/libmspack/code/199/

2015-01-05  Stuart Caie <[email protected]>

        * cabd_can_merge_folders(): disallow folder merging if the combined
        folder would have more than 65535 data blocks.

        * cabd_decompress(): disallow files if their offset, length or
        offset+length is more than 65535*32768, the maximum size of any
        folder. Thanks to Jakub Wilk for identifying the problem and providing
        a sample file.

--- a/libmspack/trunk/mspack/cabd.c
+++ b/libmspack/trunk/mspack/cabd.c
@@ -937,6 +937,12 @@
         return 0;
     }
 
+    /* check there are not too many data blocks after merging */
+    if ((lfol->base.num_blocks + rfol->base.num_blocks) > CAB_FOLDERMAX) {
+        D(("folder merge: too many data blocks in merged folders"))
+        return 0;
+    }
+
     if (!(lfi = lfol->merge_next) || !(rfi = rfol->merge_prev)) {
         D(("folder merge: one cabinet has no files to merge"))
         return 0;
@@ -988,6 +994,13 @@
 
   sys = self->system;
   fol = (struct mscabd_folder_p *) file->folder;
+
+  /* validate the file's offset and length */
+  if ( (file->offset > CAB_LENGTHMAX) || (file->length > CAB_LENGTHMAX) ||
+      ((file->offset + file->length) > CAB_LENGTHMAX))
+  {
+    return self->error = MSPACK_ERR_DATAFORMAT;
+  }
 
   /* check if file can be extracted */
   if ((!fol) || (fol->merge_prev) ||
--- a/libmspack/trunk/mspack/cab.h
+++ b/libmspack/trunk/mspack/cab.h
@@ -70,6 +70,13 @@
 #define CAB_BLOCKMAX (32768)
 #define CAB_INPUTMAX (CAB_BLOCKMAX+6144)
 
+/* There are no more than 65535 data blocks per folder, so a folder cannot
+ * be more than 32768*65535 bytes in length. As files cannot span more than
+ * one folder, this is also their max offset, length and offset+length limit.
+ */
+#define CAB_FOLDERMAX (65535)
+#define CAB_LENGTHMAX (CAB_BLOCKMAX * CAB_FOLDERMAX)
+
 /* CAB compression definitions */
 
 struct mscab_compressor_p {
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to