Index: branches/2018Q4/archivers/libunrar5/Makefile =================================================================== --- branches/2018Q4/archivers/libunrar5/Makefile (revision 482464) +++ branches/2018Q4/archivers/libunrar5/Makefile (revision 482465) @@ -1,53 +1,52 @@ # $FreeBSD$ PORTNAME= libunrar5 -PORTVERSION= 5.6.6 +PORTVERSION= 5.6.8 CATEGORIES= archivers MASTER_SITES= http://www.rarlab.com/rar/ DISTNAME= unrarsrc-${PORTVERSION} MAINTAINER= jhale@FreeBSD.org COMMENT= RAR archive extraction library LICENSE= UNRAR LICENSE_NAME= UnRAR License LICENSE_FILE= ${WRKSRC}/license.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept USES= gmake USE_LDCONFIG= yes ALL_TARGET= lib MAKEFILE= makefile MAKE_ARGS= AR="${AR}" \ CXX="${CXX}" \ CXXFLAGS="${CXXFLAGS} -fPIC" \ LDFLAGS="-Wl,-soname,${SONAME} -pthread ${LDFLAGS}" \ STRIP="${STRIP_CMD}" SONAME= libunrar.so.5 WRKSRC= ${WRKDIR}/unrar CONFLICTS_INSTALL= libunrar-3* libunrar4-4* OPTIONS_DEFINE= OPENSSL_AES OPTIONS_DEFAULT= OPENSSL_AES OPENSSL_AES_DESC= Use OpenSSL implementation of AES OPENSSL_AES_CPPFLAGS= -DOPENSSL_AES -I${OPENSSLINC} OPENSSL_AES_LDFLAGS= -L${OPENSSLLIB} -lcrypto OPENSSL_AES_USES= ssl -OPENSSL_AES_VARS= BROKEN_SSL=openssl-devel PLIST_FILES= lib/libunrar.a \ lib/libunrar.so \ lib/${SONAME} \ include/libunrar5/dll.hpp do-install: ${INSTALL_DATA} ${WRKSRC}/libunrar.a ${STAGEDIR}${PREFIX}/lib/libunrar.a ${INSTALL_LIB} ${WRKSRC}/libunrar.so ${STAGEDIR}${PREFIX}/lib/${SONAME} (cd ${STAGEDIR}${PREFIX}/lib; ${LN} -sf ${SONAME} libunrar.so) @${MKDIR} ${STAGEDIR}${PREFIX}/include/libunrar5 ${INSTALL_DATA} ${WRKSRC}/dll.hpp ${STAGEDIR}${PREFIX}/include/libunrar5/dll.hpp .include Index: branches/2018Q4/archivers/libunrar5/distinfo =================================================================== --- branches/2018Q4/archivers/libunrar5/distinfo (revision 482464) +++ branches/2018Q4/archivers/libunrar5/distinfo (revision 482465) @@ -1,3 +1,3 @@ -TIMESTAMP = 1536063861 -SHA256 (unrarsrc-5.6.6.tar.gz) = 5dbdd3cff955c4bc54dd50bf58120af7cb30dec0763a79ffff350f26f96c4430 -SIZE (unrarsrc-5.6.6.tar.gz) = 226484 +TIMESTAMP = 1539042126 +SHA256 (unrarsrc-5.6.8.tar.gz) = a4cc0ac14a354827751912d2af4a0a09e2c2129df5766576fa7e151791dd3dff +SIZE (unrarsrc-5.6.8.tar.gz) = 226647 Index: branches/2018Q4/archivers/libunrar5/files/patch-rijndael.cpp =================================================================== --- branches/2018Q4/archivers/libunrar5/files/patch-rijndael.cpp (revision 482464) +++ branches/2018Q4/archivers/libunrar5/files/patch-rijndael.cpp (revision 482465) @@ -1,122 +1,136 @@ ---- rijndael.cpp.orig 2017-04-28 17:28:47 UTC +--- rijndael.cpp.orig 2018-06-24 15:10:31 UTC +++ rijndael.cpp @@ -7,6 +7,8 @@ ***************************************************************************/ #include "rar.hpp" +#ifndef OPENSSL_AES + #ifdef USE_SSE #include #endif @@ -56,6 +58,7 @@ inline void Copy128(byte *dest,const byt #endif } +#endif // OPENSSL_AES ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // API -@@ -63,14 +66,35 @@ inline void Copy128(byte *dest,const byt +@@ -63,14 +66,41 @@ inline void Copy128(byte *dest,const byt Rijndael::Rijndael() { +#ifndef OPENSSL_AES if (S[0]==0) GenerateTables(); +#endif // OPENSSL_AES CBCMode = true; // Always true for RAR. } void Rijndael::Init(bool Encrypt,const byte *key,uint keyLen,const byte * initVector) { +#ifdef OPENSSL_AES + const EVP_CIPHER *cipher; + switch(keyLen) + { + case 128: + cipher = EVP_aes_128_cbc(); + break; + case 192: + cipher = EVP_aes_192_cbc(); + break; + case 256: + cipher = EVP_aes_256_cbc(); + break; + } + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX_init(&ctx); + EVP_CipherInit_ex(&ctx, cipher, NULL, key, initVector, Encrypt); + EVP_CIPHER_CTX_set_padding(&ctx, 0); ++#else ++ EVP_CIPHER_CTX_init(ctx); ++ EVP_CipherInit_ex(ctx, cipher, NULL, key, initVector, Encrypt); ++ EVP_CIPHER_CTX_set_padding(ctx, 0); ++#endif +#else // OPENSSL_AES #ifdef USE_SSE // Check SSE here instead of constructor, so if object is a part of some // structure memset'ed before use, this variable is not lost. -@@ -111,6 +135,7 @@ void Rijndael::Init(bool Encrypt,const b +@@ -111,6 +141,7 @@ void Rijndael::Init(bool Encrypt,const b if(!Encrypt) keyEncToDec(); +#endif // OPENSSL_AES } void Rijndael::blockEncrypt(const byte *input,size_t inputLen,byte *outBuffer) -@@ -118,6 +143,11 @@ void Rijndael::blockEncrypt(const byte * +@@ -118,6 +149,15 @@ void Rijndael::blockEncrypt(const byte * if (inputLen <= 0) return; +#ifdef OPENSSL_AES + int outLen; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CipherUpdate(&ctx, outBuffer, &outLen, input, inputLen); ++#else ++ EVP_CipherUpdate(ctx, outBuffer, &outLen, input, inputLen); ++#endif + return; +#else // OPENSSL_AES size_t numBlocks = inputLen/16; #ifdef USE_SSE if (AES_NI) -@@ -176,6 +206,7 @@ void Rijndael::blockEncrypt(const byte * +@@ -176,6 +216,7 @@ void Rijndael::blockEncrypt(const byte * input += 16; } Copy128(m_initVector,prevBlock); +#endif // OPENSSL_AES } -@@ -217,6 +248,11 @@ void Rijndael::blockDecrypt(const byte * +@@ -217,6 +258,15 @@ void Rijndael::blockDecrypt(const byte * if (inputLen <= 0) return; +#ifdef OPENSSL_AES + int outLen; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CipherUpdate(&ctx, outBuffer, &outLen, input, inputLen); ++#else ++ EVP_CipherUpdate(ctx, outBuffer, &outLen, input, inputLen); ++#endif + return; +#else // OPENSSL_AES size_t numBlocks=inputLen/16; #ifdef USE_SSE if (AES_NI) -@@ -279,6 +315,8 @@ void Rijndael::blockDecrypt(const byte * +@@ -279,6 +329,8 @@ void Rijndael::blockDecrypt(const byte * } memcpy(m_initVector,iv,16); + +#endif // OPENSSL_AES } -@@ -314,7 +352,7 @@ void Rijndael::blockDecryptSSE(const byt +@@ -314,7 +366,7 @@ void Rijndael::blockDecryptSSE(const byt } #endif - +#ifndef OPENSSL_AES ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ALGORITHM ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -@@ -454,7 +492,7 @@ void Rijndael::GenerateTables() +@@ -454,7 +506,7 @@ void Rijndael::GenerateTables() U1[b][0]=U2[b][1]=U3[b][2]=U4[b][3]=T5[i][0]=T6[i][1]=T7[i][2]=T8[i][3]=FFmul0e(b); } } - +#endif // OPENSSL_AES #if 0 static void TestRijndael(); Index: branches/2018Q4/archivers/libunrar5/files/patch-rijndael.hpp =================================================================== --- branches/2018Q4/archivers/libunrar5/files/patch-rijndael.hpp (revision 482464) +++ branches/2018Q4/archivers/libunrar5/files/patch-rijndael.hpp (revision 482465) @@ -1,20 +1,24 @@ ---- rijndael.hpp.orig 2017-04-28 17:28:47 UTC +--- rijndael.hpp.orig 2018-06-24 15:10:31 UTC +++ rijndael.hpp -@@ -16,6 +16,9 @@ +@@ -16,6 +16,13 @@ class Rijndael { private: +#ifdef OPENSSL_AES ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + EVP_CIPHER_CTX ctx; ++#else ++ EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new(); ++#endif +#else // OPENSSL_AES #ifdef USE_SSE void blockEncryptSSE(const byte *input,size_t numBlocks,byte *outBuffer); void blockDecryptSSE(const byte *input, size_t numBlocks, byte *outBuffer); -@@ -25,6 +28,7 @@ class Rijndael +@@ -25,6 +32,7 @@ class Rijndael void keySched(byte key[_MAX_KEY_COLUMNS][4]); void keyEncToDec(); void GenerateTables(); +#endif // OPENSSL_AES // RAR always uses CBC, but we may need to turn it off when calling // this code from other archive formats with CTR and other modes. Index: branches/2018Q4/sysutils/fusefs-rar2fs/Makefile =================================================================== --- branches/2018Q4/sysutils/fusefs-rar2fs/Makefile (revision 482464) +++ branches/2018Q4/sysutils/fusefs-rar2fs/Makefile (revision 482465) @@ -1,44 +1,44 @@ # Created by: Joris Vandalon # $FreeBSD$ PORTNAME= rar2fs PORTVERSION= 1.27.0 DISTVERSIONPREFIX= v -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= sysutils PKGNAMEPREFIX= fusefs- MAINTAINER= n_carlsson@outlook.com COMMENT= Mount rar archives as filesystem LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libunrar.so.5:${LIBUNRAR_PORT} BUILD_DEPENDS= ${NONEXISTENT}:${LIBUNRAR_PORT}:patch USE_GITHUB= yes GH_ACCOUNT= hasse69 USES= autoreconf gmake fuse GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-static-unrar \ --with-fuse-lib=${LOCALBASE}/lib \ --with-fuse=${LOCALBASE}/include/fuse \ --with-unrar=`${MAKE} -C ${PORTSDIR}/${LIBUNRAR_PORT} -VWRKSRC` \ --with-unrar-lib=${LOCALBASE}/lib CONFIGURE_ENV= LIBUNRAR_PKG=${LIBUNRAR_PKG} PLIST_FILES= bin/${PORTNAME} \ bin/mkr2i \ man/man1/rar2fs.1.gz LIBUNRAR_PORT= archivers/libunrar5 LIBUNRAR_PKG= ${LIBUNRAR_PORT:S|archivers/||} post-patch: @${REINPLACE_CMD} -e 's|-lstdc++||g' -e '/rar2fs_LINK =/s|CC|CXX|' \ ${WRKSRC}/Makefile.am .include Index: branches/2018Q4 =================================================================== --- branches/2018Q4 (revision 482464) +++ branches/2018Q4 (revision 482465) Property changes on: branches/2018Q4 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r481583,481881