Date: Mon, 15 Oct 2018 17:27:42 +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: r482164 - in head/editors: openoffice-4 openoffice-4/files openoffice-devel openoffice-devel/files Message-ID: <201810151727.w9FHRg1Z083071@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: truckman Date: Mon Oct 15 17:27:41 2018 New Revision: 482164 URL: https://svnweb.freebsd.org/changeset/ports/482164 Log: editors/openoffice-4, editors/openoffice-devel: Fix build with OpenSSL 1.1.x Pet portlint (USES block location) PR: 232265 Reported by: pkg-fallout Added: head/editors/openoffice-4/files/patch-oox_source_core_filterdetect.cxx (contents, props changed) head/editors/openoffice-devel/files/patch-oox_source_core_filterdetect.cxx (contents, props changed) Modified: head/editors/openoffice-4/Makefile head/editors/openoffice-devel/Makefile Modified: head/editors/openoffice-4/Makefile ============================================================================== --- head/editors/openoffice-4/Makefile Mon Oct 15 17:10:53 2018 (r482163) +++ head/editors/openoffice-4/Makefile Mon Oct 15 17:27:41 2018 (r482164) @@ -3,7 +3,7 @@ PORTNAME= apache-openoffice PORTVERSION= ${AOOVERSION} -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= editors java MASTER_SITES= APACHE/openoffice/${PORTVERSION}/sources \ http://tools.openoffice.org/unowinreg_prebuild/680/:unoreg \ @@ -96,6 +96,21 @@ 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 +USES= autoreconf bison compiler:c++11-lib cpe \ + desktop-file-utils \ + gettext-runtime gmake iconv jpeg perl5 pkgconfig python:2.7 \ + shared-mime-info ssl tar:bzip2 +USE_GL= gl glu +USE_GNOME= gtk20 libxslt libidl glib20 +USE_JAVA= yes +JAVA_BUILD= jdk +JAVA_RUN= jdk +JAVA_VENDOR= openjdk +JAVA_VERSION= 1.6+ +USE_PERL5= build +USE_XORG= ice sm x11 xau xaw xcomposite xcursor xdamage xext xfixes xi \ + xinerama xrandr xrender xt + CONFLICTS_INSTALL= apache-openoffice-devel-* AOOVERSION1= 4 @@ -119,20 +134,6 @@ XDGDIR= ${OOPATH}/share/xdg XDGREL= ../../${INSTALLATION_BASEDIR}/openoffice${AOOVERSION1}/share/xdg EXECBASE?= openoffice-${AOOSUFFIX} -USES= autoreconf bison compiler:c++11-lib cpe \ - desktop-file-utils \ - gettext-runtime gmake iconv jpeg perl5 pkgconfig python:2.7 \ - shared-mime-info ssl tar:bzip2 -USE_GL= gl glu -USE_GNOME= gtk20 libxslt libidl glib20 -USE_JAVA= yes -JAVA_BUILD= jdk -JAVA_RUN= jdk -JAVA_VENDOR= openjdk -JAVA_VERSION= 1.6+ -USE_PERL5= build -USE_XORG= ice sm x11 xau xaw xcomposite xcursor xdamage xext xfixes xi \ - xinerama xrandr xrender xt INSTALLS_ICONS= yes WITHOUT_CPU_CFLAGS= true CPE_PRODUCT= ${PORTNAME:S|apache-||} Added: head/editors/openoffice-4/files/patch-oox_source_core_filterdetect.cxx ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/openoffice-4/files/patch-oox_source_core_filterdetect.cxx Mon Oct 15 17:27:41 2018 (r482164) @@ -0,0 +1,95 @@ +--- oox/source/core/filterdetect.cxx.orig 2017-11-27 13:44:08 UTC ++++ oox/source/core/filterdetect.cxx +@@ -26,6 +26,7 @@ + #include <com/sun/star/io/XStream.hpp> + #include <comphelper/docpasswordhelper.hxx> + #include <comphelper/mediadescriptor.hxx> ++#include <openssl/opensslv.h> + #include <openssl/evp.h> + #include <rtl/digest.h> + #include "oox/core/fastparser.hxx" +@@ -355,25 +356,39 @@ bool lclCheckEncryptionData( const sal_uInt8* pnKey, s + if ( nKeySize == 16 && nVerifierSize == 16 && nVerifierHashSize == 32 ) + { + // check password ++ EVP_CIPHER_CTX *pAes_ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX aes_ctx; + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++ pAes_ctx = &aes_ctx; ++#else ++ pAes_ctx = EVP_CIPHER_CTX_new(); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + int nOutLen = 0; + sal_uInt8 pnTmpVerifier[ 16 ]; + (void) memset( pnTmpVerifier, 0, sizeof(pnTmpVerifier) ); + +- /*int*/ EVP_DecryptUpdate( &aes_ctx, pnTmpVerifier, &nOutLen, pnVerifier, nVerifierSize ); ++ /*int*/ EVP_DecryptUpdate( pAes_ctx, pnTmpVerifier, &nOutLen, pnVerifier, nVerifierSize ); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); + + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++#else ++ EVP_CIPHER_CTX_reset( pAes_ctx ); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + sal_uInt8 pnTmpVerifierHash[ 32 ]; + (void) memset( pnTmpVerifierHash, 0, sizeof(pnTmpVerifierHash) ); + +- /*int*/ EVP_DecryptUpdate( &aes_ctx, pnTmpVerifierHash, &nOutLen, pnVerifierHash, nVerifierHashSize ); ++ /*int*/ EVP_DecryptUpdate( pAes_ctx, pnTmpVerifierHash, &nOutLen, pnVerifierHash, nVerifierHashSize ); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); ++#else ++ EVP_CIPHER_CTX_free( pAes_ctx ); ++#endif + + rtlDigest aDigest = rtl_digest_create( rtl_Digest_AlgorithmSHA1 ); + rtlDigestError aError = rtl_digest_update( aDigest, pnTmpVerifier, sizeof( pnTmpVerifier ) ); +@@ -562,10 +577,16 @@ Reference< XInputStream > FilterDetect::extractUnencry + BinaryXOutputStream aDecryptedPackage( xDecryptedPackage, true ); + BinaryXInputStream aEncryptedPackage( xEncryptedPackage, true ); + ++ EVP_CIPHER_CTX *pAes_ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX aes_ctx; + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, aVerifier.getKey(), 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++ pAes_ctx = &aes_ctx; ++#else ++ pAes_ctx = EVP_CIPHER_CTX_new(); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, aVerifier.getKey(), 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + + sal_uInt8 pnInBuffer[ 1024 ]; + sal_uInt8 pnOutBuffer[ 1024 ]; +@@ -574,13 +595,17 @@ Reference< XInputStream > FilterDetect::extractUnencry + aEncryptedPackage.skip( 8 ); // decrypted size + while( (nInLen = aEncryptedPackage.readMemory( pnInBuffer, sizeof( pnInBuffer ) )) > 0 ) + { +- EVP_DecryptUpdate( &aes_ctx, pnOutBuffer, &nOutLen, pnInBuffer, nInLen ); ++ EVP_DecryptUpdate( pAes_ctx, pnOutBuffer, &nOutLen, pnInBuffer, nInLen ); + aDecryptedPackage.writeMemory( pnOutBuffer, nOutLen ); + } +- EVP_DecryptFinal_ex( &aes_ctx, pnOutBuffer, &nOutLen ); ++ EVP_DecryptFinal_ex( pAes_ctx, pnOutBuffer, &nOutLen ); + aDecryptedPackage.writeMemory( pnOutBuffer, nOutLen ); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); ++#else ++ EVP_CIPHER_CTX_free( pAes_ctx ); ++#endif + xDecryptedPackage->flush(); + aDecryptedPackage.seekToStart(); + Modified: head/editors/openoffice-devel/Makefile ============================================================================== --- head/editors/openoffice-devel/Makefile Mon Oct 15 17:10:53 2018 (r482163) +++ head/editors/openoffice-devel/Makefile Mon Oct 15 17:27:41 2018 (r482164) @@ -3,7 +3,7 @@ PORTNAME= apache-openoffice PORTVERSION= ${AOOVERSION1}.${AOOVERSION2}.${SVNREVISION} -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 4 CATEGORIES= editors java MASTER_SITES= https://dist.apache.org/repos/dist/dev/openoffice/${AOOVERSION}-${AOORC}-r${SVNREVISION}/source/ \ @@ -98,6 +98,21 @@ 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 +USES= autoreconf bison compiler:c++11-lib cpe \ + desktop-file-utils \ + gettext-runtime gmake iconv jpeg perl5 pkgconfig python:2.7 \ + shared-mime-info ssl tar:${TARTYPE} +USE_GL= gl glu +USE_GNOME= gtk20 libxslt libidl glib20 +USE_JAVA= yes +JAVA_BUILD= jdk +JAVA_RUN= jdk +JAVA_VENDOR= openjdk +JAVA_VERSION= 1.6+ +USE_PERL5= build +USE_XORG= ice sm x11 xau xaw xcomposite xcursor xdamage xext xfixes xi \ + xinerama xrandr xrender xt + CONFLICTS_INSTALL= apache-openoffice-4* AOOVERSION1= 4 @@ -131,20 +146,6 @@ XDGDIR= ${OOPATH}/share/xdg XDGREL= ../../${INSTALLATION_BASEDIR}/openoffice${AOOVERSION1}/share/xdg EXECBASE?= openoffice-${AOOSUFFIX} -USES= autoreconf bison compiler:c++11-lib cpe \ - desktop-file-utils \ - gettext-runtime gmake iconv jpeg perl5 pkgconfig python:2.7 \ - shared-mime-info ssl tar:${TARTYPE} -USE_GL= gl glu -USE_GNOME= gtk20 libxslt libidl glib20 -USE_JAVA= yes -JAVA_BUILD= jdk -JAVA_RUN= jdk -JAVA_VENDOR= openjdk -JAVA_VERSION= 1.6+ -USE_PERL5= build -USE_XORG= ice sm x11 xau xaw xcomposite xcursor xdamage xext xfixes xi \ - xinerama xrandr xrender xt INSTALLS_ICONS= yes WITHOUT_CPU_CFLAGS= true CPE_PRODUCT= ${PORTNAME:S|apache-||} Added: head/editors/openoffice-devel/files/patch-oox_source_core_filterdetect.cxx ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/openoffice-devel/files/patch-oox_source_core_filterdetect.cxx Mon Oct 15 17:27:41 2018 (r482164) @@ -0,0 +1,95 @@ +--- oox/source/core/filterdetect.cxx.orig 2018-04-13 00:54:08 UTC ++++ oox/source/core/filterdetect.cxx +@@ -26,6 +26,7 @@ + #include <com/sun/star/io/XStream.hpp> + #include <comphelper/docpasswordhelper.hxx> + #include <comphelper/mediadescriptor.hxx> ++#include <openssl/opensslv.h> + #include <openssl/evp.h> + #include <rtl/digest.h> + #include "oox/core/fastparser.hxx" +@@ -355,25 +356,39 @@ bool lclCheckEncryptionData( const sal_uInt8* pnKey, s + if ( nKeySize == 16 && nVerifierSize == 16 && nVerifierHashSize == 32 ) + { + // check password ++ EVP_CIPHER_CTX *pAes_ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX aes_ctx; + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++ pAes_ctx = &aes_ctx; ++#else ++ pAes_ctx = EVP_CIPHER_CTX_new(); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + int nOutLen = 0; + sal_uInt8 pnTmpVerifier[ 16 ]; + (void) memset( pnTmpVerifier, 0, sizeof(pnTmpVerifier) ); + +- /*int*/ EVP_DecryptUpdate( &aes_ctx, pnTmpVerifier, &nOutLen, pnVerifier, nVerifierSize ); ++ /*int*/ EVP_DecryptUpdate( pAes_ctx, pnTmpVerifier, &nOutLen, pnVerifier, nVerifierSize ); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); + + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++#else ++ EVP_CIPHER_CTX_reset( pAes_ctx ); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, pnKey, 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + sal_uInt8 pnTmpVerifierHash[ 32 ]; + (void) memset( pnTmpVerifierHash, 0, sizeof(pnTmpVerifierHash) ); + +- /*int*/ EVP_DecryptUpdate( &aes_ctx, pnTmpVerifierHash, &nOutLen, pnVerifierHash, nVerifierHashSize ); ++ /*int*/ EVP_DecryptUpdate( pAes_ctx, pnTmpVerifierHash, &nOutLen, pnVerifierHash, nVerifierHashSize ); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); ++#else ++ EVP_CIPHER_CTX_free( pAes_ctx ); ++#endif + + rtlDigest aDigest = rtl_digest_create( rtl_Digest_AlgorithmSHA1 ); + rtlDigestError aError = rtl_digest_update( aDigest, pnTmpVerifier, sizeof( pnTmpVerifier ) ); +@@ -562,10 +577,16 @@ Reference< XInputStream > FilterDetect::extractUnencry + BinaryXOutputStream aDecryptedPackage( xDecryptedPackage, true ); + BinaryXInputStream aEncryptedPackage( xEncryptedPackage, true ); + ++ EVP_CIPHER_CTX *pAes_ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX aes_ctx; + EVP_CIPHER_CTX_init( &aes_ctx ); +- EVP_DecryptInit_ex( &aes_ctx, EVP_aes_128_ecb(), 0, aVerifier.getKey(), 0 ); +- EVP_CIPHER_CTX_set_padding( &aes_ctx, 0 ); ++ pAes_ctx = &aes_ctx; ++#else ++ pAes_ctx = EVP_CIPHER_CTX_new(); ++#endif ++ EVP_DecryptInit_ex( pAes_ctx, EVP_aes_128_ecb(), 0, aVerifier.getKey(), 0 ); ++ EVP_CIPHER_CTX_set_padding( pAes_ctx, 0 ); + + sal_uInt8 pnInBuffer[ 1024 ]; + sal_uInt8 pnOutBuffer[ 1024 ]; +@@ -574,13 +595,17 @@ Reference< XInputStream > FilterDetect::extractUnencry + aEncryptedPackage.skip( 8 ); // decrypted size + while( (nInLen = aEncryptedPackage.readMemory( pnInBuffer, sizeof( pnInBuffer ) )) > 0 ) + { +- EVP_DecryptUpdate( &aes_ctx, pnOutBuffer, &nOutLen, pnInBuffer, nInLen ); ++ EVP_DecryptUpdate( pAes_ctx, pnOutBuffer, &nOutLen, pnInBuffer, nInLen ); + aDecryptedPackage.writeMemory( pnOutBuffer, nOutLen ); + } +- EVP_DecryptFinal_ex( &aes_ctx, pnOutBuffer, &nOutLen ); ++ EVP_DecryptFinal_ex( pAes_ctx, pnOutBuffer, &nOutLen ); + aDecryptedPackage.writeMemory( pnOutBuffer, nOutLen ); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_cleanup( &aes_ctx ); ++#else ++ EVP_CIPHER_CTX_free( pAes_ctx ); ++#endif + xDecryptedPackage->flush(); + aDecryptedPackage.seekToStart(); +
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201810151727.w9FHRg1Z083071>