diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..74fb202 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libwpd-0.10.2.tar.xz diff --git a/.libwpd.metadata b/.libwpd.metadata new file mode 100644 index 0000000..3b16ba3 --- /dev/null +++ b/.libwpd.metadata @@ -0,0 +1 @@ +ad9d53e22e746b449f8a2937481e2b36766908b9 SOURCES/libwpd-0.10.2.tar.xz diff --git a/SOURCES/0001-Resolves-rhbz-1643752-bounds-check-m_currentTable-ac.patch b/SOURCES/0001-Resolves-rhbz-1643752-bounds-check-m_currentTable-ac.patch new file mode 100644 index 0000000..01cce98 --- /dev/null +++ b/SOURCES/0001-Resolves-rhbz-1643752-bounds-check-m_currentTable-ac.patch @@ -0,0 +1,29 @@ +diff -ru libwpd-0.10.2/src/lib/WP6ContentListener.cpp libwpd-0.10.2.new/src/lib/WP6ContentListener.cpp +--- libwpd-0.10.2/src/lib/WP6ContentListener.cpp 2017-09-08 18:04:25.000000000 +0100 ++++ libwpd-0.10.2.new/src/lib/WP6ContentListener.cpp 2018-10-30 10:54:22.326697162 +0000 +@@ -1311,7 +1311,10 @@ + m_ps->m_tableDefinition.m_columnsProperties.clear(); + + // pull a table definition off of our stack +- m_parseState->m_currentTable = m_parseState->m_tableList[m_parseState->m_nextTableIndice++]; ++ auto index = m_parseState->m_nextTableIndice++; ++ if (index >= m_parseState->m_tableList.size()) ++ throw ParseException(); ++ m_parseState->m_currentTable = m_parseState->m_tableList[index]; + if (!m_parseState->m_currentTable) + throw ParseException(); + m_parseState->m_currentTable->makeBordersConsistent(); +diff -ru libwpd-0.10.2/src/lib/WPXTable.h libwpd-0.10.2.new/src/lib/WPXTable.h +--- libwpd-0.10.2/src/lib/WPXTable.h 2015-12-30 08:27:30.000000000 +0000 ++++ libwpd-0.10.2.new/src/lib/WPXTable.h 2018-10-30 10:55:41.264362182 +0000 +@@ -92,6 +92,10 @@ + { + m_tableList->push_back(table); + } ++ size_t size() const ++ { ++ return m_tableList->size(); ++ } + + private: + void release(); diff --git a/SPECS/libwpd.spec b/SPECS/libwpd.spec new file mode 100644 index 0000000..8777a5d --- /dev/null +++ b/SPECS/libwpd.spec @@ -0,0 +1,327 @@ +%global apiversion 0.10 + +Name: libwpd +Summary: A library for import of WordPerfect documents +Version: 0.10.2 +Release: 2%{?dist} +Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.xz +URL: http://libwpd.sf.net/ +License: LGPLv2+ or MPLv2.0 + +BuildRequires: boost-devel +BuildRequires: doxygen +BuildRequires: help2man +BuildRequires: pkgconfig(librevenge-0.0) +BuildRequires: pkgconfig(zlib) + +Patch0: 0001-Resolves-rhbz-1643752-bounds-check-m_currentTable-ac.patch + +%description +%{name} is a library for import of WordPerfect documents. + +%package tools +Summary: Tools to transform WordPerfect documents into other formats +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description tools +Tools to transform WordPerfect documents into other formats. +Currently supported: HTML, raw, text. + +%package devel +Requires: %{name}%{?_isa} = %{version}-%{release} +Summary: Files for developing with libwpd + +%description devel +Includes and definitions for developing with libwpd. + +%package doc +Summary: Documentation of %{name} API +BuildArch: noarch + +%description doc +The %{name}-doc package contains API documentation for %{name}. + +%prep +%autosetup -p1 + +%build +%configure --disable-static --disable-werror --disable-silent-rules +sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool +sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool +make %{?_smp_mflags} + +%install +make DESTDIR=$RPM_BUILD_ROOT install +rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la +# we install API docs directly from build +rm -rf $RPM_BUILD_ROOT/%{_docdir}/%{name} + +# generate and install man pages +export LD_LIBRARY_PATH=%{buildroot}%{_libdir}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} +for tool in wpd2html wpd2raw wpd2text; do + help2man -N -S '%{name} %{version}' -o ${tool}.1 %{buildroot}%{_bindir}/${tool} +done +install -m 0755 -d %{buildroot}/%{_mandir}/man1 +install -m 0644 wpd2*.1 %{buildroot}/%{_mandir}/man1 + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%files +%doc CREDITS NEWS README +%license COPYING.LGPL COPYING.MPL +%{_libdir}/%{name}-%{apiversion}.so.* + +%files tools +%{_bindir}/wpd2html +%{_bindir}/wpd2raw +%{_bindir}/wpd2text +%{_mandir}/man1/wpd2html.1* +%{_mandir}/man1/wpd2raw.1* +%{_mandir}/man1/wpd2text.1* + +%files devel +%doc HACKING TODO +%{_libdir}/%{name}-%{apiversion}.so +%{_libdir}/pkgconfig/%{name}-%{apiversion}.pc +%{_includedir}/%{name}-%{apiversion} + +%files doc +%license COPYING.LGPL COPYING.MPL +%doc docs/doxygen/html +%doc docs/%{name}.dia +%doc docs/%{name}.png + +%changelog +* Tue Oct 30 2018 Caolán McNamara - 0.10.2-2 +- Resolves: rhbz#1644276 crash in specific wpd file + +* Tue Sep 12 2017 David Tardon - 0.10.2-1 +- new upstream release + +* Thu Sep 07 2017 Caolán McNamara - 0.10.1-8 +- Related: rhbz#1489337 extend to earlier file format version + +* Thu Sep 07 2017 Caolán McNamara - 0.10.1-7 +- Resolves: rhbz#1489337 crashing wpd + +* Thu Aug 03 2017 Fedora Release Engineering - 0.10.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.10.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 15 2017 Fedora Release Engineering - 0.10.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 0.10.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 0.10.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Dec 30 2015 David Tardon - 0.10.1-1 +- new upstream release + +* Wed Jun 17 2015 Fedora Release Engineering - 0.10.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 0.10.0-4 +- Rebuilt for GCC 5 C++11 ABI change + +* Sun Aug 17 2014 Fedora Release Engineering - 0.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon May 26 2014 David Tardon - 0.10.0-1 +- new upstream release + +* Wed Apr 09 2014 David Tardon - 0.9.9-2 +- generate man pages + +* Mon Aug 19 2013 David Tardon - 0.9.9-1 +- new release + +* Sat Aug 03 2013 Fedora Release Engineering - 0.9.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue May 21 2013 David Tardon - 0.9.8-2 +- drop build dep on libgsf-devel that has not been needed for years + +* Tue May 14 2013 David Tardon - 0.9.8-1 +- new release + +* Sun Apr 21 2013 David Tardon - 0.9.7-1 +- new release + +* Thu Feb 14 2013 Fedora Release Engineering - 0.9.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Tue Sep 25 2012 David Tardon - 0.9.6-1 +- new release + +* Thu Jul 19 2012 Fedora Release Engineering - 0.9.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Feb 28 2012 Fedora Release Engineering - 0.9.4-3 +- Rebuilt for c++ ABI breakage + +* Fri Jan 13 2012 Fedora Release Engineering - 0.9.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Dec 08 2011 Caolán McNamara - 0.9.4-1 +- latest version + +* Sun May 22 2011 Caolán McNamara - 0.9.2-1 +- latest version +- drop integrated libwpd-gcc4.6.0.patch + +* Tue Feb 08 2011 Fedora Release Engineering - 0.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Jan 24 2011 Caolán McNamara - 0.9.1-1 +- latest version + +* Sun Dec 05 2010 Caolán McNamara - 0.9.0-1 +- latest version + +* Sat Feb 13 2010 Caolán McNamara - 0.8.14-5 +- Resolves: rhbz#226060 merge review + +* Sat Jul 25 2009 Fedora Release Engineering - 0.8.14-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Wed Feb 25 2009 Fedora Release Engineering - 0.8.14-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Jan 06 2009 Lubomir Rintel - 0.8.14-2 +- Rebuild for provides + +* Wed Feb 13 2008 Caolán McNamara - 0.8.14-1 +- next version + +* Mon Dec 17 2007 Caolán McNamara - 0.8.13-2 +- strangely 0.8.13-1 never appeared in rawhide + +* Thu Dec 13 2007 Caolán McNamara - 0.8.13-1 +- next version + +* Sat Oct 13 2007 Caolán McNamara - 0.8.12-1 +- next version + +* Fri Aug 24 2007 Caolán McNamara - 0.8.11-1 +- next version + +* Fri Aug 03 2007 Caolán McNamara - 0.8.10-2 +- clarify license + +* Fri Jun 15 2007 Caolán McNamara - 0.8.10-1 +- next version + +* Tue Mar 27 2007 Caolán McNamara - 0.8.9-2 +- Resolves: rhbz#233876: add unowned directory fix from Michael Schwendt + +* Fri Mar 16 2007 Caolán McNamara - 0.8.9-1 +- next version + +* Fri Feb 09 2007 Caolán McNamara - 0.8.8-2 +- spec cleanups + +* Thu Jan 11 2007 Caolán McNamara - 0.8.8-1 +- next version + +* Mon Oct 09 2006 Caolán McNamara - 0.8.7-1 +- next version + +* Mon Jul 17 2006 Caolán McNamara - 0.8.6-1 +- next version + +* Wed Jul 12 2006 Jesse Keating - 0.8.5-3.1 +- rebuild + +* Sun Jun 11 2006 Caolán McNamara 0.8.5-3 +- add wp5nofontlistcrash + +* Fri Jun 02 2006 Caolán McNamara 0.8.5-2 +- build through brew + +* Thu Jun 01 2006 Caolán McNamara 0.8.5-1 +- next version + +* Tue Mar 21 2006 Caolán McNamara 0.8.4-2 +- rebuild for libgsf + +* Fri Feb 10 2006 Jesse Keating - 0.8.4-1.2.1 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 0.8.4-1.2 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Fri Dec 09 2005 Jesse Keating 0.8.4-1.1 +- rebuilt + +* Fri Dec 02 2005 Caolán McNamara 0.8.4-1 +- next version + +* Fri Dec 02 2005 Caolán McNamara 0.8.3-2 +- rebuild because of libgsf + +* Tue Jun 28 2005 Caolán McNamara 0.8.3-1 +- update to latest libwpd + +* Tue Jun 28 2005 Caolán McNamara 0.8.2-2.fc5 +- export to other formats twiddle + +* Wed Jun 22 2005 Caolán McNamara 0.8.2-1 +- bump to latest version + +* Fri Apr 29 2005 Caolán McNamara 0.8.1-1 +- bump to latest version kudos Fridrich Strba +- drop integrated patch + +* Wed Apr 6 2005 Caolán McNamara 0.8.0-4 +- add libwpd devel provided patch for endless loops on some wpd documents + +* Wed Mar 30 2005 Caolán McNamara 0.8.0-3 +- rh#152503# add some Requires for -devel package + +* Wed Mar 2 2005 Caolán McNamara 0.8.0-2 +- rebuild with gcc4 + +* Fri Feb 11 2005 Caolán McNamara 0.8.0-1 +- new version + +* Wed Feb 9 2005 Caolán McNamara 0.7.2-2 +- rebuild + +* Fri Jul 23 2004 Caolán McNamara 0.7.2-1 +- bump to 0.7.2 + +* Tue Jun 15 2004 Elliot Lee +- rebuilt + +* Tue Mar 02 2004 Elliot Lee +- rebuilt + +* Thu Feb 19 2004 Jeremy Katz - 0.7.1-1 +- update to 0.7.1 + +* Fri Feb 13 2004 Elliot Lee +- rebuilt + +* Tue Dec 16 2003 Jeremy Katz 0.6.6-1 +- 0.6.6 + +* Tue Nov 4 2003 Jeremy Katz 0.6.5-1 +- 0.6.5 + +* Mon Sep 15 2003 Jeremy Katz 0.6.2-1 +- 0.6.2 + +* Sun Jul 6 2003 Jeremy Katz 0.5.0-1 +- initial build for Red Hat Linux, tweak accordingly + +* Sat Apr 26 2003 Rui M. Seabra +- Create rpm spec