aboutsummaryrefslogtreecommitdiff
path: root/editors/openoffice-4
diff options
context:
space:
mode:
authorDon Lewis <truckman@FreeBSD.org>2016-01-29 00:44:00 +0000
committerDon Lewis <truckman@FreeBSD.org>2016-01-29 00:44:00 +0000
commit22094b3ee0dd582e712d69198c90c54a72406087 (patch)
treeb35336fd66a2807330aa5342588ebff94e8fca05 /editors/openoffice-4
parentfb8108a0d2a4cc6686b931c87be258766b766b36 (diff)
downloadports-22094b3ee0dd582e712d69198c90c54a72406087.tar.gz
ports-22094b3ee0dd582e712d69198c90c54a72406087.zip
Fix nss-related problems with password-protected documents.
Apply patches from upstream commits r1724971 and r1726068 to fix upstream bug <https://bz.apache.org/ooo/show_bug.cgi?id=125431>, "The Password is incorrect. The file cannot be opened." PR: 206234 Submitted by: Arrigo Marchiori <ardovm AT yahoo.it> MFH: 2106Q1
Notes
Notes: svn path=/head/; revision=407439
Diffstat (limited to 'editors/openoffice-4')
-rw-r--r--editors/openoffice-4/Makefile2
-rw-r--r--editors/openoffice-4/files/patch-nss69
2 files changed, 70 insertions, 1 deletions
diff --git a/editors/openoffice-4/Makefile b/editors/openoffice-4/Makefile
index 3ca89c39eb42..ad74b0050004 100644
--- a/editors/openoffice-4/Makefile
+++ b/editors/openoffice-4/Makefile
@@ -3,7 +3,7 @@
PORTNAME= apache-openoffice
PORTVERSION= ${AOOVERSION}
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= editors java
MASTER_SITES= APACHE/openoffice/${PORTVERSION}/source \
http://tools.openoffice.org/unowinreg_prebuild/680/:unoreg \
diff --git a/editors/openoffice-4/files/patch-nss b/editors/openoffice-4/files/patch-nss
new file mode 100644
index 000000000000..fa5938839e2a
--- /dev/null
+++ b/editors/openoffice-4/files/patch-nss
@@ -0,0 +1,69 @@
+--- extensions/source/mozbootstrap/MNSProfileDiscover.cxx.orig 2014-04-22 09:27:50 UTC
++++ extensions/source/mozbootstrap/MNSProfileDiscover.cxx
+@@ -123,9 +123,14 @@ namespace connectivity
+ {
+ isRelative = sIsRelative.toInt32();
+ }
++ if (isRelative)
++ {
++ // Make it absolute
++ profilePath = regDir + profilePath;
++ }
+
+ ProfileStruct* profileItem = new ProfileStruct(product,profileName,
+- regDir + profilePath);
++ profilePath);
+ m_Product.mProfileList[profileName] = profileItem;
+
+ sal_Int32 isDefault = 0;
+--- xmlsecurity/source/xmlsec/nss/makefile.mk.orig 2015-09-28 07:58:41 UTC
++++ xmlsecurity/source/xmlsec/nss/makefile.mk
+@@ -42,6 +42,10 @@ CFLAGS+=-DSYSTEM_LIBXML $(LIBXML_CFLAGS)
+ @echo "No nss -> no libxmlsec -> no xmlsecurity/nss"
+ .ENDIF
+
++.IF "$(SYSTEM_NSS)" == "YES"
++CFLAGS+=-DSYSTEM_NSS
++.ENDIF
++
+ .IF "$(SYSTEM_NSS)" != "YES"
+ MOZ_INC = $(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla
+ NSS_CFLAGS = -I$(MOZ_INC)$/nss
+--- xmlsecurity/source/xmlsec/nss/nssinitializer.cxx.orig 2015-09-24 07:42:09 UTC
++++ xmlsecurity/source/xmlsec/nss/nssinitializer.cxx
+@@ -234,7 +234,7 @@ void deleteRootsModule()
+ //the location of the roots module to the profile, which makes FF2 and TB2 use
+ //it instead of there own module.
+ //
+-//When using SYSTEM_MOZILLA then the libnss3.so lib is typically found in
++//When using SYSTEM_NSS then the libnss3.so lib is typically found in
+ ///usr/lib. This folder may, however, NOT contain the roots certificate
+ //module. That is, just providing the library name in SECMOD_LoadUserModule or
+ //SECMOD_AddNewModule will FAIL to load the mozilla unless the LD_LIBRARY_PATH
+@@ -289,7 +289,7 @@ bool nsscrypto_initialize( const css::un
+ out_nss_init = true;
+
+ #ifdef XMLSEC_CRYPTO_NSS
+-#if defined SYSTEM_MOZILLA
++#if defined SYSTEM_NSS
+ if (!SECMOD_HasRootCerts())
+ {
+ #endif
+@@ -298,7 +298,7 @@ bool nsscrypto_initialize( const css::un
+ #if defined OS2
+ // YD the nss system dlls names are ending with 'k'
+ OUString rootModule(RTL_CONSTASCII_USTRINGPARAM( "nssckbik" SAL_DLLEXTENSION));
+-#elif defined SYSTEM_MOZILLA
++#elif defined SYSTEM_NSS
+ OUString rootModule(RTL_CONSTASCII_USTRINGPARAM( "libnssckbi" SAL_DLLEXTENSION));
+ #else
+ OUString rootModule(RTL_CONSTASCII_USTRINGPARAM( "${OOO_BASE_DIR}/program/libnssckbi" SAL_DLLEXTENSION));
+@@ -352,7 +352,7 @@ bool nsscrypto_initialize( const css::un
+ xmlsec_trace("Adding new root certificate module failed.");
+ return_value = false;
+ }
+-#if SYSTEM_MOZILLA
++#if SYSTEM_NSS
+ }
+ #endif
+ #endif