Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Oct 2017 18:38:56 +0000 (UTC)
From:      Don Lewis <truckman@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r452937 - in head/editors/openoffice-devel: . files
Message-ID:  <201710261838.v9QIcubp097757@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: truckman
Date: Thu Oct 26 18:38:56 2017
New Revision: 452937
URL: https://svnweb.freebsd.org/changeset/ports/452937

Log:
  Add a security patch taken from Apache OpenOffice 4.1.4.
  
  Add a LICENSE entry for MPL10.  Code containing both MPL10 and MPL11
  licenses is bundled.
  
  Add CONFLICTS_INSTALL.
  
  Move --with-ant-home and -with-jdk-home to Makefile from Makefile.knobs.
  
  MFH:		2017Q4
  Security:	27229c67-b8ff-11e7-9f79-ac9e174be3af

Added:
  head/editors/openoffice-devel/files/patch-security   (contents, props changed)
Modified:
  head/editors/openoffice-devel/Makefile
  head/editors/openoffice-devel/files/Makefile.knobs

Modified: head/editors/openoffice-devel/Makefile
==============================================================================
--- head/editors/openoffice-devel/Makefile	Thu Oct 26 18:35:04 2017	(r452936)
+++ head/editors/openoffice-devel/Makefile	Thu Oct 26 18:38:56 2017	(r452937)
@@ -3,7 +3,7 @@
 
 PORTNAME=	apache-openoffice
 PORTVERSION=	${AOOVERSION1}.${AOOVERSION2}.${SVNREVISION}
-#PORTREVISION=	1
+PORTREVISION=	1
 PORTEPOCH=	4
 CATEGORIES=	editors java
 MASTER_SITES=	https://dist.apache.org/repos/dist/dev/openoffice/${AOOVERSION}-${AOORC}-r${SVNREVISION}/source/ \
@@ -25,8 +25,8 @@ MAINTAINER=	office@FreeBSD.org
 #Frequent Patch submitters should (optionally) sign the Apache iCLA
 COMMENT=	Integrated wordprocessor/dbase/spreadsheet/drawing/chart/browser (developer version)
 
-LICENSE=		APACHE20 ADOBE BSD3CLAUSE BSD4CLAUSE BSL ICU MIT MPL11 \
-			PSFL TWAIN W3C
+LICENSE=		APACHE20 ADOBE BSD3CLAUSE BSD4CLAUSE BSL ICU MIT MPL10 \
+			MPL11 PSFL TWAIN W3C
 LICENSE_COMB=		multi
 LICENSE_NAME_ADOBE=	Adobe Systems Incorporated license
 LICENSE_NAME_ICU=	ICU License
@@ -39,6 +39,7 @@ LICENSE_FILE_BSD4CLAUSE=	${WRKSRC}/LICENSE_BSD4CLAUSE
 LICENSE_FILE_BSL=	${WRKSRC}/LICENSE_BSL
 LICENSE_FILE_ICU=	${WRKSRC}/LICENSE_ICU
 LICENSE_FILE_MIT=	${WRKSRC}/LICENSE_MIT
+LICENSE_FILE_MPL10=	${WRKSRC}/LICENSE_MPL10
 LICENSE_FILE_MPL11=	${WRKSRC}/LICENSE_MPL11
 LICENSE_FILE_PSFL=	${WRKSRC}/LICENSE_PSFL
 LICENSE_FILE_TWAIN=	${WRKSRC}/LICENSE_TWAIN
@@ -97,6 +98,8 @@ RUN_DEPENDS=								\
 		${LOCALBASE}/share/fonts/Carlito/Carlito-Bold.ttf:x11-fonts/crosextrafonts-carlito-ttf \
 		${LOCALBASE}/share/fonts/ChromeOS/Arimo-Bold.ttf:x11-fonts/croscorefonts-fonts-ttf
 
+CONFLICTS_INSTALL=	apache-openoffice-4*
+
 AOOVERSION1=	4
 AOOVERSION2=	2
 AOOVERSION3=	0
@@ -263,6 +266,7 @@ SUB_LIST=	EXECBASE=${EXECBASE} AOOTAG=${AOOTAG} AOOUDI
 CONFIGURE_ARGS+=							\
 			--with-unix-wrapper=${EXECBASE}			\
 			--with-alloc=system				\
+			--with-ant-home=${LOCALBASE}/share/java/apache-ant \
 			--with-system-apache-commons=yes		\
 			--with-commons-lang-jar=${JAVALIBDIR}/commons-lang3.jar \
 			--with-system-apr				\
@@ -288,6 +292,7 @@ CONFIGURE_ARGS+=							\
 			--with-external-dict-dir=${LOCALBASE}/share/hunspell \
 			--with-system-hyphen				\
 			--with-external-hyph-dir=${LOCALBASE}/share/hyphen \
+			--with-jdk-home=${JAVA_HOME}			\
 			--with-system-jpeg				\
 			--with-junit=${JAVALIBDIR}/junit.jar		\
 			--with-system-libtextcat			\
@@ -362,18 +367,20 @@ post-extract:
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_BSL}
 	${SED}  -e '\|^For main/i18npool/source/breakiterator|,/^__/p'	\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_ICU}
-	${SED}  -e '\|^For Multi-Dimensional Data|,/^__/p'	\
+	${SED}  -e '\|^For Multi-Dimensional Data|,/^__/p'		\
 		-e '\|^For XSLT MathML Library|,/^__/p'			\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_MIT}
-	${SED}  -e '\|^For XMLSec Library|,/^__/p'	\
+	${SED}  -e '\|^For XMLSec Library|,/^__/p'			\
 		-e d  ${WRKSRC}/LICENSE_category_b >> ${LICENSE_FILE_MIT}
-	${SED}  -e '\|^For Graphite|,$$d'	\
+	${SED}  -e '\|^For Saxon|,/^__/p'				\
+		-e d ${WRKSRC}/LICENSE_category_b > ${LICENSE_FILE_MPL10}
+	${SED}  -e '\|^For Saxon|,$$d'					\
 		      ${WRKSRC}/LICENSE_category_b > ${LICENSE_FILE_MPL11}
 	${SED}  -e '\|^For main/filter/source/config/tools/merge/pyAltFCFGMerge|,/^__/p'	\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_PSFL}
-	${SED}  -e '\|^For main/twain|,/^__/p'	\
+	${SED}  -e '\|^For main/twain|,/^__/p'				\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_TWAIN}
-	${SED}  -e '\|^For main/MathMLDTD|,/^__/p'	\
+	${SED}  -e '\|^For main/MathMLDTD|,/^__/p'			\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_W3C}
 
 post-patch:

Modified: head/editors/openoffice-devel/files/Makefile.knobs
==============================================================================
--- head/editors/openoffice-devel/files/Makefile.knobs	Thu Oct 26 18:35:04 2017	(r452936)
+++ head/editors/openoffice-devel/files/Makefile.knobs	Thu Oct 26 18:38:56 2017	(r452937)
@@ -2,7 +2,6 @@
 # Whom:         Maho Nakata <maho@FreeBSD.org>
 # $FreeBSD$
 
-CONFIGURE_ARGS+=	--with-jdk-home="${JAVA_HOME}" --with-ant-home="${LOCALBASE}/share/java/apache-ant"
 CONFIGURE_ARGS+=	--with-lang=${LOCALIZED_LANG}
 
 pre-fetch:

Added: head/editors/openoffice-devel/files/patch-security
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/openoffice-devel/files/patch-security	Thu Oct 26 18:38:56 2017	(r452937)
@@ -0,0 +1,215 @@
+Index: comphelper/source/container/embeddedobjectcontainer.cxx
+===================================================================
+--- comphelper/source/container/embeddedobjectcontainer.cxx	(revision 1813062)
++++ comphelper/source/container/embeddedobjectcontainer.cxx	(working copy)
+@@ -127,7 +127,7 @@
+     pImpl = new EmbedImpl;
+     pImpl->mxStorage = ::comphelper::OStorageHelper::GetTemporaryStorage();
+     pImpl->mbOwnsStorage = true;
+-    pImpl->mbUserAllowsLinkUpdate = false;
++    pImpl->mbUserAllowsLinkUpdate = true;
+     pImpl->mpTempObjectContainer = 0;
+ }
+ 
+@@ -136,7 +136,7 @@
+     pImpl = new EmbedImpl;
+     pImpl->mxStorage = rStor;
+     pImpl->mbOwnsStorage = false;
+-    pImpl->mbUserAllowsLinkUpdate = false;
++    pImpl->mbUserAllowsLinkUpdate = true;
+     pImpl->mpTempObjectContainer = 0;
+ }
+ 
+@@ -145,7 +145,7 @@
+     pImpl = new EmbedImpl;
+     pImpl->mxStorage = rStor;
+     pImpl->mbOwnsStorage = false;
+-    pImpl->mbUserAllowsLinkUpdate = false;
++    pImpl->mbUserAllowsLinkUpdate = true;
+     pImpl->mpTempObjectContainer = 0;
+     pImpl->m_xModel = xModel;
+ }
+Index: sc/source/core/data/documen2.cxx
+===================================================================
+--- sc/source/core/data/documen2.cxx	(revision 1813062)
++++ sc/source/core/data/documen2.cxx	(working copy)
+@@ -229,7 +229,10 @@
+ 	if ( eMode == SCDOCMODE_DOCUMENT )
+ 	{
+ 		if ( pDocShell )
+-			pLinkManager = new sfx2::LinkManager( pDocShell );
++		{
++			pLinkManager = new sfx2::LinkManager(pDocShell);
++			pLinkManager->SetAutoAskUpdateAllLinks();
++		}
+ 
+ 		xPoolHelper = new ScPoolHelper( this );
+ 
+@@ -269,6 +272,7 @@
+     if ( bAutoCalc && !pLinkManager && pShell)
+ 	{
+ 		pLinkManager = new sfx2::LinkManager( pShell );
++		pLinkManager->SetAutoAskUpdateAllLinks();
+     }
+     return pLinkManager; 
+ }
+Index: sfx2/inc/sfx2/linkmgr.hxx
+===================================================================
+--- sfx2/inc/sfx2/linkmgr.hxx	(revision 1813062)
++++ sfx2/inc/sfx2/linkmgr.hxx	(working copy)
+@@ -54,6 +54,13 @@
+ 	SvLinkSources aServerTbl;
+ 
+     SfxObjectShell *pPersist; // LinkMgr has to be deallocated before SfxObjectShell
++
++	sal_Bool mAutoAskUpdateAllLinks;
++	sal_Bool mUpdateAsked;
++	sal_Bool mAllowUpdate;
++
++	sal_Bool GetUserAllowsLinkUpdate(Window *pParent);
++	void SetUserAllowsLinkUpdate(SvBaseLink *pLink, sal_Bool allows);
+ protected:
+ 	sal_Bool 		InsertLink( SvBaseLink* pLink, sal_uInt16 nObjType, sal_uInt16 nUpdateType,
+ 							const String* pName = 0 );
+@@ -104,6 +111,10 @@
+ 
+     SvLinkSourceRef CreateObj( SvBaseLink* );
+ 
++	
++	// Automatically ask user about update all links, on first insert
++	void SetAutoAskUpdateAllLinks();
++
+ 	void 		UpdateAllLinks( sal_Bool bAskUpdate = sal_True,
+ 								sal_Bool bCallErrHdl = sal_True,
+                                 sal_Bool bUpdateGrfLinks = sal_False,
+Index: sfx2/source/appl/linkmgr2.cxx
+===================================================================
+--- sfx2/source/appl/linkmgr2.cxx	(revision 1813062)
++++ sfx2/source/appl/linkmgr2.cxx	(working copy)
+@@ -65,11 +65,12 @@
+ SV_IMPL_PTRARR( SvBaseLinks, SvBaseLinkRefPtr )
+ 
+ LinkManager::LinkManager(SfxObjectShell* p)
+-	: pPersist( p )
++	: pPersist(p),
++	mUpdateAsked(sal_False),
++	mAutoAskUpdateAllLinks(sal_False)
+ {
+ }
+ 
+-
+ LinkManager::~LinkManager()
+ {
+ 	SvBaseLinkRef** ppRef = (SvBaseLinkRef**)aLinkTbl.GetData();
+@@ -157,6 +158,12 @@
+ 	SvBaseLinkRef* pTmp = new SvBaseLinkRef( pLink );
+     pLink->SetLinkManager( this );
+ 	aLinkTbl.Insert( pTmp, aLinkTbl.Count() );
++	Window *parent = GetPersist()->GetDialogParent();
++	if (mAutoAskUpdateAllLinks)
++	{
++		SetUserAllowsLinkUpdate(pLink, GetUserAllowsLinkUpdate(parent));
++	}
++	
+ 	return sal_True;
+ }
+ 
+@@ -268,7 +275,36 @@
+ 	return bRet;
+ }
+ 
++void LinkManager::SetAutoAskUpdateAllLinks()
++{
++	mAutoAskUpdateAllLinks = sal_True;
++}
+ 
++sal_Bool LinkManager::GetUserAllowsLinkUpdate(Window *pParentWin)
++{
++	if (!mUpdateAsked)
++	{
++		if (QueryBox(pParentWin, WB_YES_NO | WB_DEF_NO, SfxResId(STR_QUERY_UPDATE_LINKS)).Execute() == RET_YES)
++			mAllowUpdate = sal_True;
++		else
++			mAllowUpdate = sal_False;
++		mUpdateAsked = sal_True;
++	}
++	return mAllowUpdate;
++}
++
++void LinkManager::SetUserAllowsLinkUpdate(SvBaseLink *pLink, sal_Bool allows)
++{
++	SfxObjectShell* pShell = pLink->GetLinkManager()->GetPersist();
++
++	if (pShell)
++	{
++		comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pShell->getEmbeddedObjectContainer();
++		rEmbeddedObjectContainer.setUserAllowsLinkUpdate(allows);
++	}
++}
++
++
+ void LinkManager::UpdateAllLinks( 
+     sal_Bool bAskUpdate, 
+     sal_Bool /*bCallErrHdl*/,
+@@ -312,26 +348,20 @@
+ 		if( !pLink->IsVisible() ||
+ 			( !bUpdateGrfLinks && OBJECT_CLIENT_GRF == pLink->GetObjType() ))
+ 			continue;
+-
+-		if( bAskUpdate )
++		
++		sal_Bool allows = sal_True;
++			
++		if (bAskUpdate)
+ 		{
+-            int nRet = QueryBox( pParentWin, WB_YES_NO | WB_DEF_NO, SfxResId( STR_QUERY_UPDATE_LINKS ) ).Execute();
+-            SfxObjectShell* pShell = pLink->GetLinkManager()->GetPersist();
++			allows = GetUserAllowsLinkUpdate(pParentWin);
++		}
+ 
+-            if(pShell)
+-            {
+-                comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pShell->getEmbeddedObjectContainer();
+-                rEmbeddedObjectContainer.setUserAllowsLinkUpdate(RET_YES == nRet);
+-            }
++		SetUserAllowsLinkUpdate(pLink, allows);
++	    bAskUpdate = sal_False;		// one time is OK
+ 
+-		    if (RET_YES != nRet)
+-			{
+-				return;		// nothing should be updated
+-            }
+-			bAskUpdate = sal_False;		// one time is OK
+-		}
++		if (allows)
++			pLink->Update();
+ 
+-		pLink->Update();
+ 	}
+ }
+ 
+Index: sw/source/filter/ww8/ww8scan.cxx
+===================================================================
+--- sw/source/filter/ww8/ww8scan.cxx	(revision 1813062)
++++ sw/source/filter/ww8/ww8scan.cxx	(working copy)
+@@ -6467,6 +6467,12 @@
+ 
+     if( nMax )
+     {
++        // Check size consistency
++        if(nMax > nFFn)
++        {
++			throw std::out_of_range("WW8 beyond end of buffer");            
++        }
++
+         // allocate Index Array
+         pFontA = new WW8_FFN[ nMax ];
+         p = pFontA;
+@@ -6585,6 +6591,7 @@
+ 
+                 // Zeiger auf Ursprungsarray einen Font nach hinten setzen
+                 pVer8 = (WW8_FFN_Ver8*)( ((sal_uInt8*)pVer8) + pVer8->cbFfnM1 + 1 );
++
+             }
+         }
+     }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201710261838.v9QIcubp097757>