commit:     ba7ccf31e3da9b82f8dac073ef4eece87b72a43d
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 11 17:35:21 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Sep 11 17:37:32 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba7ccf31

app-text/libwpd: Security revbump for CVE-2017-14226

Package-Manager: Portage-2.3.6, Repoman-2.3.1

 .../files/libwpd-0.10.1-CVE-2017-14226.patch       | 50 ++++++++++++++++++++
 app-text/libwpd/libwpd-0.10.1-r1.ebuild            | 53 ++++++++++++++++++++++
 2 files changed, 103 insertions(+)

diff --git a/app-text/libwpd/files/libwpd-0.10.1-CVE-2017-14226.patch 
b/app-text/libwpd/files/libwpd-0.10.1-CVE-2017-14226.patch
new file mode 100644
index 00000000000..4a5c0df922f
--- /dev/null
+++ b/app-text/libwpd/files/libwpd-0.10.1-CVE-2017-14226.patch
@@ -0,0 +1,50 @@
+Gentoo-bug: 630682 (CVE-2017-14226)
+
+Change-Id: I0d8d6887fa360c05d5f9e2a070410c77926b9ce1
+Reviewed-on: https://gerrit.libreoffice.org/42054
+Tested-by: Jenkins <[email protected]>
+Reviewed-by: Caolán McNamara <[email protected]>
+Tested-by: Caolán McNamara <[email protected]>
+
+--- a/src/lib/WP5StylesListener.cpp
++++ b/src/lib/WP5StylesListener.cpp
+@@ -85,8 +85,9 @@
+               m_currentPage = WPXPageSpan(m_pageList.back(), 0.0, 0.0);
+               m_currentPage.setPageSpan(1);
+ 
+-              for (std::vector<WPXHeaderFooter>::const_iterator HFiter = 
(m_nextPage.getHeaderFooterList()).begin();
+-                      HFiter != (m_nextPage.getHeaderFooterList()).end(); 
++HFiter)
++              std::vector<WPXHeaderFooter> headerFooterList = 
m_nextPage.getHeaderFooterList();
++              for (std::vector<WPXHeaderFooter>::const_iterator HFiter = 
headerFooterList.begin();
++                      HFiter != headerFooterList.end(); ++HFiter)
+               {
+                       if ((*HFiter).getOccurrence() != NEVER)
+                       {
+--- a/src/lib/WP42StylesListener.cpp
++++ b/src/lib/WP42StylesListener.cpp
+@@ -84,8 +84,9 @@
+                       m_currentPage = WPXPageSpan(m_pageList.back(), 0.0, 
0.0);
+                       m_currentPage.setPageSpan(1);
+ 
+-                      for (std::vector<WPXHeaderFooter>::const_iterator 
HFiter = (m_nextPage.getHeaderFooterList()).begin();
+-                              HFiter != 
(m_nextPage.getHeaderFooterList()).end(); ++HFiter)
++                      std::vector<WPXHeaderFooter> headerFooterList = 
m_nextPage.getHeaderFooterList();
++                      for (std::vector<WPXHeaderFooter>::const_iterator 
HFiter = headerFooterList.begin();
++                              HFiter != headerFooterList.end(); ++HFiter)
+                       {
+                               if ((*HFiter).getOccurrence() != NEVER)
+                               {
+--- a/src/lib/WP1StylesListener.cpp
++++ b/src/lib/WP1StylesListener.cpp
+@@ -83,8 +83,9 @@
+                       m_currentPage = WPXPageSpan(m_pageList.back(), 0.0, 
0.0);
+                       m_currentPage.setPageSpan(1);
+ 
+-                      for (std::vector<WPXHeaderFooter>::const_iterator 
HFiter = (m_nextPage.getHeaderFooterList()).begin();
+-                              HFiter != 
(m_nextPage.getHeaderFooterList()).end(); ++HFiter)
++                      std::vector<WPXHeaderFooter> headerFooterList = 
m_nextPage.getHeaderFooterList();
++                      for (std::vector<WPXHeaderFooter>::const_iterator 
HFiter = headerFooterList.begin();
++                              HFiter != headerFooterList.end(); ++HFiter)
+                       {
+                               if ((*HFiter).getOccurrence() != NEVER)
+                               {

diff --git a/app-text/libwpd/libwpd-0.10.1-r1.ebuild 
b/app-text/libwpd/libwpd-0.10.1-r1.ebuild
new file mode 100644
index 00000000000..62f8a7d31f2
--- /dev/null
+++ b/app-text/libwpd/libwpd-0.10.1-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit alternatives
+
+DESCRIPTION="WordPerfect Document import/export library"
+HOMEPAGE="http://libwpd.sf.net";
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
+
+LICENSE="|| ( LGPL-2.1 MPL-2.0 )"
+SLOT="0.10"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~x86 ~x86-fbsd"
+IUSE="doc +tools"
+
+RDEPEND="dev-libs/librevenge"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig
+       doc? ( app-doc/doxygen )
+"
+
+PATCHES=( "${FILESDIR}/${P}-CVE-2017-14226.patch" )
+
+src_configure() {
+       econf \
+               --disable-static \
+               --disable-werror \
+               $(use_with doc docs) \
+               $(use_enable tools) \
+               --program-suffix=-${SLOT}
+}
+
+src_install() {
+       default
+       find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+       if use tools; then
+               alternatives_auto_makesym /usr/bin/wpd2html 
"/usr/bin/wpd2html-[0-9].[0-9][0-9]"
+               alternatives_auto_makesym /usr/bin/wpd2raw 
"/usr/bin/wpd2raw-[0-9].[0-9][0-9]"
+               alternatives_auto_makesym /usr/bin/wpd2text 
"/usr/bin/wpd2text-[0-9].[0-9][0-9]"
+       fi
+}
+
+pkg_postrm() {
+       if use tools; then
+               alternatives_auto_makesym /usr/bin/wpd2html 
"/usr/bin/wpd2html-[0-9].[0-9][0-9]"
+               alternatives_auto_makesym /usr/bin/wpd2raw 
"/usr/bin/wpd2raw-[0-9].[0-9][0-9]"
+               alternatives_auto_makesym /usr/bin/wpd2text 
"/usr/bin/wpd2text-[0-9].[0-9][0-9]"
+       fi
+}

Reply via email to