Index: head/devel/qca/Makefile =================================================================== --- head/devel/qca/Makefile (revision 417967) +++ head/devel/qca/Makefile (revision 417968) @@ -1,50 +1,50 @@ # Created by: Vsevolod Stakhov # $FreeBSD$ PORTNAME= qca PORTVERSION= 2.1.1 CATEGORIES= devel MASTER_SITES= KDE/stable/qca/${PORTVERSION}/src MAINTAINER= kde@FreeBSD.org COMMENT= Cross-platform crypto API for Qt 4 BUILD_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss USES= cmake:outsource tar:xz CMAKE_ARGS= -DBUILD_PLUGINS=none -DBUILD_TESTS=no \ -DPKGCONFIG_INSTALL_PREFIX=${PREFIX}/libdata/pkgconfig \ -DQCA_FEATURE_INSTALL_DIR=${QT_MKSPECDIR}/features \ -DQCA_MAN_INSTALL_DIR=${PREFIX}/man CONFIGURE_ENV= QC_CERTSTORE_PATH=${LOCALBASE}/share/certs/ca-root-nss.crt USE_LDCONFIG= yes .if defined(PKGNAMESUFFIX) CMAKE_ARGS+= -DQCA_SUFFIX=qt5 USE_QT5= core buildtools_build qmake_build .else USE_QT4= corelib moc_build qmake_build rcc_build CMAKE_ARGS+= -DQT4_BUILD=yes .endif PLIST_SUB= SHLIB_VER=${PORTVERSION} OPTIONS_DEFINE= GNUPG OPENSSL SASL OPTIONS_DEFAULT=GNUPG OPENSSL OPTIONS_SUB= yes GNUPG_CMAKE_ON= -DWITH_gnupg_PLUGIN=yes GNUPG_RUN_DEPENDS= gpg2:security/gnupg OPENSSL_CMAKE_ON= -DWITH_ossl_PLUGIN=yes -OPENSSL_USE= OPENSSL=yes +OPENSSL_USES= ssl SASL_CMAKE_ON= -DWITH_cyrus-sasl_PLUGIN=yes SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2 post-patch: # Qt Network module is used for tests only ${REINPLACE_CMD} 's,Core Network,Core,' ${WRKSRC}/CMakeLists.txt .include Index: head/devel/qca/files/patch-libressl =================================================================== --- head/devel/qca/files/patch-libressl (revision 417967) +++ head/devel/qca/files/patch-libressl (nonexistent) @@ -1,15 +0,0 @@ ---- plugins/qca-ossl/qca-ossl.cpp.orig 2015-10-02 09:39:21 UTC -+++ plugins/qca-ossl/qca-ossl.cpp -@@ -5805,7 +5805,11 @@ public: - { - SessionInfo sessInfo; - -- sessInfo.isCompressed = (0 != SSL_SESSION_get_compress_id(ssl->session)); -+#ifndef OPENSSL_NO_COMP -+ sessInfo.isCompressed = (0 != ssl->session->compress_meth); -+#else -+ sessInfo.isCompressed = 0; -+#endif - - if (ssl->version == TLS1_VERSION) - sessInfo.version = TLS::TLS_v1; Property changes on: head/devel/qca/files/patch-libressl ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/qca/files/patch-plugins_qca-ossl_CMakeLists.txt =================================================================== --- head/devel/qca/files/patch-plugins_qca-ossl_CMakeLists.txt (nonexistent) +++ head/devel/qca/files/patch-plugins_qca-ossl_CMakeLists.txt (revision 417968) @@ -0,0 +1,28 @@ +qca-ossl: Fix build without support for SHA-0 +https://quickgit.kde.org/?p=qca.git&a=commit&h=0dbed8eb38afd1561907a52283091c37e7b85156 + +LibreSSL >= 2.3.0 removed support for SHA-0, so there's no EVP_sha +anymore. +Wikipedia says about SHA-0: "160-bit hash function published in 1993 +under the name SHA. It was withdrawn shortly after publication due to +an undisclosed "significant flaw" and replaced by the slightly revised +version SHA-1.' + +REVIEW: 125387 + +--- plugins/qca-ossl/CMakeLists.txt.orig ++++ plugins/qca-ossl/CMakeLists.txt +@@ -24,6 +24,13 @@ + else(HAVE_OPENSSL_AES_CTR) + message(WARNING "qca-ossl will be compiled without AES CTR mode encryption support") + endif(HAVE_OPENSSL_AES_CTR) ++ ++ check_function_exists(EVP_sha HAVE_OPENSSL_SHA0) ++ if(HAVE_OPENSSL_SHA0) ++ add_definitions(-DHAVE_OPENSSL_SHA0) ++ else(HAVE_OPENSSL_SHA0) ++ message(WARNING "qca-ossl will be compiled without SHA-0 digest algorithm support") ++ endif(HAVE_OPENSSL_SHA0) + + set(QCA_OSSL_SOURCES qca-ossl.cpp) + Property changes on: head/devel/qca/files/patch-plugins_qca-ossl_CMakeLists.txt ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/qca/files/patch-plugins_qca-ossl_qca-ossl.cpp =================================================================== --- head/devel/qca/files/patch-plugins_qca-ossl_qca-ossl.cpp (nonexistent) +++ head/devel/qca/files/patch-plugins_qca-ossl_qca-ossl.cpp (revision 417968) @@ -0,0 +1,46 @@ +qca-ossl: Fix build without SSLv3 +http://quickgit.kde.org/?p=qca.git&a=commit&h=20a587d77636186edb044cd2b71d6d90fe98d232 + +This fixes building with LibreSSL >= 2.3.0 which has removed support +for SSLv3 completely. As far as I know OpenSSL can be configured to +build without it, so it might be helpful there as well. + +REVIEW: 125386 + +qca-ossl: Fix build without support for SHA-0 +https://quickgit.kde.org/?p=qca.git&a=commit&h=0dbed8eb38afd1561907a52283091c37e7b85156 + +LibreSSL >= 2.3.0 removed support for SHA-0, so there's no EVP_sha +anymore. +Wikipedia says about SHA-0: "160-bit hash function published in 1993 +under the name SHA. It was withdrawn shortly after publication due to +an undisclosed "significant flaw" and replaced by the slightly revised +version SHA-1.' + +REVIEW: 125387 + +--- plugins/qca-ossl/qca-ossl.cpp.orig 2016-07-03 11:34:48 UTC ++++ plugins/qca-ossl/qca-ossl.cpp +@@ -5403,9 +5403,11 @@ + ctx = SSL_CTX_new(SSLv2_client_method()); + break; + #endif ++#ifndef OPENSSL_NO_SSL3_METHOD + case TLS::SSL_v3: + ctx = SSL_CTX_new(SSLv3_client_method()); + break; ++#endif + case TLS::TLS_v1: + ctx = SSL_CTX_new(TLSv1_client_method()); + break; +@@ -7135,8 +7135,10 @@ + return new opensslInfoContext(this); + else if ( type == "sha1" ) + return new opensslHashContext( EVP_sha1(), this, type); ++#ifdef HAVE_OPENSSL_SHA0 + else if ( type == "sha0" ) + return new opensslHashContext( EVP_sha(), this, type); ++#endif + else if ( type == "ripemd160" ) + return new opensslHashContext( EVP_ripemd160(), this, type); + #ifdef HAVE_OPENSSL_MD2 Property changes on: head/devel/qca/files/patch-plugins_qca-ossl_qca-ossl.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property