Date: Fri, 12 Oct 2018 07:35:47 +0000 (UTC) From: "Jason E. Hale" <jhale@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r481881 - in head/archivers/libunrar5: . files Message-ID: <201810120735.w9C7ZlgE052626@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jhale Date: Fri Oct 12 07:35:46 2018 New Revision: 481881 URL: https://svnweb.freebsd.org/changeset/ports/481881 Log: Fix build with OpenSSL 1.1.x Reported by: pkg-fallout (head) Modified: head/archivers/libunrar5/Makefile head/archivers/libunrar5/files/patch-rijndael.cpp head/archivers/libunrar5/files/patch-rijndael.hpp Modified: head/archivers/libunrar5/Makefile ============================================================================== --- head/archivers/libunrar5/Makefile Fri Oct 12 07:22:46 2018 (r481880) +++ head/archivers/libunrar5/Makefile Fri Oct 12 07:35:46 2018 (r481881) @@ -36,7 +36,6 @@ 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 \ Modified: head/archivers/libunrar5/files/patch-rijndael.cpp ============================================================================== --- head/archivers/libunrar5/files/patch-rijndael.cpp Fri Oct 12 07:22:46 2018 (r481880) +++ head/archivers/libunrar5/files/patch-rijndael.cpp Fri Oct 12 07:35:46 2018 (r481881) @@ -1,4 +1,4 @@ ---- 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 @@ ***************************************************************************/ @@ -17,7 +17,7 @@ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 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() { @@ -46,14 +46,20 @@ + 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(); @@ -61,19 +67,23 @@ } 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); @@ -81,19 +91,23 @@ } -@@ -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); @@ -102,7 +116,7 @@ } -@@ -314,7 +352,7 @@ void Rijndael::blockDecryptSSE(const byt +@@ -314,7 +366,7 @@ void Rijndael::blockDecryptSSE(const byt } #endif @@ -111,7 +125,7 @@ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 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); } } Modified: head/archivers/libunrar5/files/patch-rijndael.hpp ============================================================================== --- head/archivers/libunrar5/files/patch-rijndael.hpp Fri Oct 12 07:22:46 2018 (r481880) +++ head/archivers/libunrar5/files/patch-rijndael.hpp Fri Oct 12 07:35:46 2018 (r481881) @@ -1,16 +1,20 @@ ---- 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();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201810120735.w9C7ZlgE052626>