diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3864050 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/librevenge-0.0.2.tar.xz diff --git a/.librevenge.metadata b/.librevenge.metadata new file mode 100644 index 0000000..4af5c19 --- /dev/null +++ b/.librevenge.metadata @@ -0,0 +1 @@ +670c90182c4809ca8decb397c3b3970172775bc5 SOURCES/librevenge-0.0.2.tar.xz diff --git a/README.md b/README.md deleted file mode 100644 index 98f42b4..0000000 --- a/README.md +++ /dev/null @@ -1,4 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SOURCES/0001-rhbz-1248443-unbounded-heap-allocation.patch b/SOURCES/0001-rhbz-1248443-unbounded-heap-allocation.patch new file mode 100644 index 0000000..b5f037d --- /dev/null +++ b/SOURCES/0001-rhbz-1248443-unbounded-heap-allocation.patch @@ -0,0 +1,25 @@ +From 111c0f374ae8f9c4d2183fb9e826d7084c85488f Mon Sep 17 00:00:00 2001 +From: David Tardon +Date: Fri, 31 Jul 2015 17:58:29 +0200 +Subject: [PATCH] rhbz#1248443 unbounded heap allocation + +--- + src/lib/RVNGOLEStream.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/lib/RVNGOLEStream.cpp b/src/lib/RVNGOLEStream.cpp +index 89055f7..c75b135 100644 +--- a/src/lib/RVNGOLEStream.cpp ++++ b/src/lib/RVNGOLEStream.cpp +@@ -755,6 +755,8 @@ bool librevenge::Header::valid(const unsigned long fileSize) + if (m_threshold != 4096) return false; + // there must be at least the header, one bat sector and one dirent sector in the file + if ((fileSize / m_size_bbat) < 3) return false; ++ // sectors must fit into the file ++ if ((fileSize / m_size_bbat) < m_num_mbat) return false; + if (m_num_bat == 0) return false; + if ((m_num_bat > 109) && (m_num_bat > (m_num_mbat * (m_size_bbat/4-1)) + 109)) return false; + if ((m_num_bat < 109) && (m_num_mbat != 0)) return false; +-- +2.1.0 + diff --git a/SPECS/librevenge.spec b/SPECS/librevenge.spec new file mode 100644 index 0000000..9ee1a22 --- /dev/null +++ b/SPECS/librevenge.spec @@ -0,0 +1,108 @@ +%global apiversion 0.0 + +Name: librevenge +Version: 0.0.2 +Release: 2%{?dist} +Summary: A base library for writing document import filters + +# src/lib/RVNGOLEStream.{h,cpp} are BSD +License: (LGPLv2+ or MPLv2.0) and BSD +URL: http://sourceforge.net/p/libwpd/wiki/librevenge/ +Source: http://downloads.sourceforge.net/libwpd/%{name}-%{version}.tar.xz + +BuildRequires: boost-devel +BuildRequires: doxygen +BuildRequires: pkgconfig(cppunit) +BuildRequires: pkgconfig(zlib) + +Patch0: 0001-rhbz-1248443-unbounded-heap-allocation.patch + +%description +%{name} is a base library for writing document import filters. It has +interfaces for text documents, vector graphics, spreadsheets and +presentations. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package doc +Summary: Documentation of %{name} API +BuildArch: noarch + +%description doc +The %{name}-doc package contains documentation files for %{name}. + +%prep +%autosetup -p1 + +%build +%configure --disable-silent-rules --disable-static --disable-werror --enable-pretty-printers +sed -i \ + -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ + -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \ + libtool +make %{?_smp_mflags} + +%install +make install DESTDIR=%{buildroot} +rm -f %{buildroot}/%{_libdir}/*.la +# we install API docs directly from build +rm -rf %{buildroot}/%{_docdir}/%{name} + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%check +export LD_LIBRARY_PATH=%{buildroot}%{_libdir}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} +make %{?_smp_mflags} check + +%files +%doc COPYING.* README NEWS +%{_libdir}/%{name}-%{apiversion}.so.* +%{_libdir}/%{name}-generators-%{apiversion}.so.* +%{_libdir}/%{name}-stream-%{apiversion}.so.* + +%files devel +%doc ChangeLog +%{_includedir}/%{name}-%{apiversion} +%{_libdir}/%{name}-%{apiversion}.so +%{_libdir}/%{name}-generators-%{apiversion}.so +%{_libdir}/%{name}-stream-%{apiversion}.so +%{_libdir}/pkgconfig/%{name}-%{apiversion}.pc +%{_libdir}/pkgconfig/%{name}-generators-%{apiversion}.pc +%{_libdir}/pkgconfig/%{name}-stream-%{apiversion}.pc +%{_datadir}/gdb/auto-load%{_libdir}/%{name}-%{apiversion}.py* +%{_datadir}/gdb/auto-load%{_libdir}/%{name}-stream-%{apiversion}.py* +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/python + +%files doc +%doc COPYING.* +%doc docs/doxygen/html + +%changelog +* Wed Aug 05 2015 David Tardon - 0.0.2-2 +- Resolves: rhbz#1248443 unbounded heap allocation + +* Wed Dec 24 2014 David Tardon - 0.0.2-1 +- new upstream release + +* Sun Aug 17 2014 Fedora Release Engineering - 0.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue Jun 03 2014 David Tardon - 0.0.1-1 +- new upstream release + +* Tue May 27 2014 David Tardon - 0.0.0-2 +- remove extra dirs from filelist + +* Fri May 23 2014 David Tardon - 0.0.0-1 +- initial import