Date: Mon, 22 Oct 2018 13:48:07 +0000 (UTC) From: MANTANI Nobutaka <nobutaka@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r482745 - in head/sysutils/bulk_extractor: . files Message-ID: <201810221348.w9MDm7XG087460@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nobutaka Date: Mon Oct 22 13:48:07 2018 New Revision: 482745 URL: https://svnweb.freebsd.org/changeset/ports/482745 Log: - Fix build with OpenSSL 1.1.1. [*] - Add dependencies to pass 'make stage-qa'. PR: 232164 [*] Submitted by: antoine [*] Added: head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_dfxml__configure.m4 (contents, props changed) head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_hash__t.h (contents, props changed) head/sysutils/bulk_extractor/files/patch-src_dfxml_src_dfxml__configure.m4 (contents, props changed) head/sysutils/bulk_extractor/files/patch-src_dfxml_src_hash__t.h (contents, props changed) Modified: head/sysutils/bulk_extractor/Makefile Modified: head/sysutils/bulk_extractor/Makefile ============================================================================== --- head/sysutils/bulk_extractor/Makefile Mon Oct 22 12:46:25 2018 (r482744) +++ head/sysutils/bulk_extractor/Makefile Mon Oct 22 13:48:07 2018 (r482745) @@ -3,7 +3,7 @@ PORTNAME= bulk_extractor PORTVERSION= 1.5.5 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= sysutils MASTER_SITES= http://digitalcorpora.org/downloads/bulk_extractor/ @@ -13,8 +13,10 @@ COMMENT= Program that scans a disk image and extracts LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING -USES= sqlite ssl +USES= autoreconf iconv:wchar_t sqlite ssl +USE_GNOME= libxml2 LIB_DEPENDS= libafflib.so:sysutils/afflib \ + libboost_system.so:devel/boost-libs \ libewf.so:devel/libewf \ libexiv2.so:graphics/exiv2 \ libexpat.so:textproc/expat2 Added: head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_dfxml__configure.m4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_dfxml__configure.m4 Mon Oct 22 13:48:07 2018 (r482745) @@ -0,0 +1,8 @@ +--- plugins/dfxml/src/dfxml_configure.m4.orig 2014-09-16 18:34:02 UTC ++++ plugins/dfxml/src/dfxml_configure.m4 +@@ -59,4 +59,5 @@ AC_CHECK_LIB([crypto],[EVP_get_digestbyn + AC_CHECK_LIB([ssl],[SSL_library_init]) + AC_CHECK_FUNCS([EVP_get_digestbyname],, + AC_MSG_ERROR([SSL/OpenSSL support required])) ++AC_CHECK_FUNCS([EVP_MD_CTX_new EVP_MD_CTX_free]) + Added: head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_hash__t.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/bulk_extractor/files/patch-plugins_dfxml_src_hash__t.h Mon Oct 22 13:48:07 2018 (r482745) @@ -0,0 +1,78 @@ +--- plugins/dfxml/src/hash_t.h.orig 2014-09-16 18:34:02 UTC ++++ plugins/dfxml/src/hash_t.h +@@ -189,7 +189,8 @@ inline std::string digest_name<sha512_t> + + template<const EVP_MD *md(),size_t SIZE> + class hash_generator__ { /* generates the hash */ +- EVP_MD_CTX mdctx; /* the context for computing the value */ ++ private: ++ EVP_MD_CTX* mdctx; /* the context for computing the value */ + bool initialized; /* has the context been initialized? */ + bool finalized; + /* Static function to determine if something is zero */ +@@ -199,24 +200,36 @@ class hash_generator__ { /* generates + } + return true; + } ++ /* Not allowed to copy; these are prototyped but not defined, so any attempt to use them will fail, but we won't get the -Weffc++ warnings */ ++ hash_generator__ & operator=(const hash_generator__ &); ++ hash_generator__(const hash_generator__ &); + public: + int64_t hashed_bytes; + /* This function takes advantage of the fact that different hash functions produce residues with different sizes */ +- hash_generator__():mdctx(),initialized(false),finalized(false),hashed_bytes(0){ } ++ hash_generator__():mdctx(NULL),initialized(false),finalized(false),hashed_bytes(0){ } + ~hash_generator__(){ + release(); + } + void release(){ /* free allocated memory */ + if(initialized){ +- EVP_MD_CTX_cleanup(&mdctx); ++#ifdef HAVE_EVP_MD_CTX_FREE ++ EVP_MD_CTX_free(mdctx); ++#else ++ EVP_MD_CTX_destroy(mdctx); ++#endif + initialized = false; + hashed_bytes = 0; + } + } + void init(){ + if(initialized==false){ +- EVP_MD_CTX_init(&mdctx); +- EVP_DigestInit_ex(&mdctx, md(), NULL); ++#ifdef HAVE_EVP_MD_CTX_NEW ++ mdctx = EVP_MD_CTX_new(); ++#else ++ mdctx = EVP_MD_CTX_create(); ++#endif ++ if (!mdctx) throw std::bad_alloc(); ++ EVP_DigestInit_ex(mdctx, md(), NULL); + initialized = true; + finalized = false; + hashed_bytes = 0; +@@ -228,21 +241,21 @@ public: + std::cerr << "hashgen_t::update called after finalized\n"; + exit(1); + } +- EVP_DigestUpdate(&mdctx,buf,bufsize); ++ EVP_DigestUpdate(mdctx,buf,bufsize); + hashed_bytes += bufsize; + } + hash__<md,SIZE> final() { + if(finalized){ + std::cerr << "currently friendly_geneator does not cache the final value\n"; + assert(0); +- /* code below will never be executed after assert(0) */ ++ exit(1); // in case compiled with assertions disabled + } + if(!initialized){ + init(); /* do it now! */ + } + hash__<md,SIZE> val; + unsigned int len = sizeof(val.digest); +- EVP_DigestFinal(&mdctx,val.digest,&len); ++ EVP_DigestFinal(mdctx,val.digest,&len); + finalized = true; + return val; + } Added: head/sysutils/bulk_extractor/files/patch-src_dfxml_src_dfxml__configure.m4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/bulk_extractor/files/patch-src_dfxml_src_dfxml__configure.m4 Mon Oct 22 13:48:07 2018 (r482745) @@ -0,0 +1,8 @@ +--- src/dfxml/src/dfxml_configure.m4.orig 2018-10-10 21:44:10 UTC ++++ src/dfxml/src/dfxml_configure.m4 +@@ -59,4 +59,5 @@ AC_CHECK_LIB([crypto],[EVP_get_digestbyn + AC_CHECK_LIB([ssl],[SSL_library_init]) + AC_CHECK_FUNCS([EVP_get_digestbyname],, + AC_MSG_ERROR([SSL/OpenSSL support required])) ++AC_CHECK_FUNCS([EVP_MD_CTX_new EVP_MD_CTX_free]) + Added: head/sysutils/bulk_extractor/files/patch-src_dfxml_src_hash__t.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/bulk_extractor/files/patch-src_dfxml_src_hash__t.h Mon Oct 22 13:48:07 2018 (r482745) @@ -0,0 +1,78 @@ +--- src/dfxml/src/hash_t.h.orig 2014-09-16 18:34:02 UTC ++++ src/dfxml/src/hash_t.h +@@ -189,7 +189,8 @@ inline std::string digest_name<sha512_t> + + template<const EVP_MD *md(),size_t SIZE> + class hash_generator__ { /* generates the hash */ +- EVP_MD_CTX mdctx; /* the context for computing the value */ ++ private: ++ EVP_MD_CTX* mdctx; /* the context for computing the value */ + bool initialized; /* has the context been initialized? */ + bool finalized; + /* Static function to determine if something is zero */ +@@ -199,24 +200,36 @@ class hash_generator__ { /* generates + } + return true; + } ++ /* Not allowed to copy; these are prototyped but not defined, so any attempt to use them will fail, but we won't get the -Weffc++ warnings */ ++ hash_generator__ & operator=(const hash_generator__ &); ++ hash_generator__(const hash_generator__ &); + public: + int64_t hashed_bytes; + /* This function takes advantage of the fact that different hash functions produce residues with different sizes */ +- hash_generator__():mdctx(),initialized(false),finalized(false),hashed_bytes(0){ } ++ hash_generator__():mdctx(NULL),initialized(false),finalized(false),hashed_bytes(0){ } + ~hash_generator__(){ + release(); + } + void release(){ /* free allocated memory */ + if(initialized){ +- EVP_MD_CTX_cleanup(&mdctx); ++#ifdef HAVE_EVP_MD_CTX_FREE ++ EVP_MD_CTX_free(mdctx); ++#else ++ EVP_MD_CTX_destroy(mdctx); ++#endif + initialized = false; + hashed_bytes = 0; + } + } + void init(){ + if(initialized==false){ +- EVP_MD_CTX_init(&mdctx); +- EVP_DigestInit_ex(&mdctx, md(), NULL); ++#ifdef HAVE_EVP_MD_CTX_NEW ++ mdctx = EVP_MD_CTX_new(); ++#else ++ mdctx = EVP_MD_CTX_create(); ++#endif ++ if (!mdctx) throw std::bad_alloc(); ++ EVP_DigestInit_ex(mdctx, md(), NULL); + initialized = true; + finalized = false; + hashed_bytes = 0; +@@ -228,21 +241,21 @@ public: + std::cerr << "hashgen_t::update called after finalized\n"; + exit(1); + } +- EVP_DigestUpdate(&mdctx,buf,bufsize); ++ EVP_DigestUpdate(mdctx,buf,bufsize); + hashed_bytes += bufsize; + } + hash__<md,SIZE> final() { + if(finalized){ + std::cerr << "currently friendly_geneator does not cache the final value\n"; + assert(0); +- /* code below will never be executed after assert(0) */ ++ exit(1); // in case compiled with assertions disabled + } + if(!initialized){ + init(); /* do it now! */ + } + hash__<md,SIZE> val; + unsigned int len = sizeof(val.digest); +- EVP_DigestFinal(&mdctx,val.digest,&len); ++ EVP_DigestFinal(mdctx,val.digest,&len); + finalized = true; + return val; + }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201810221348.w9MDm7XG087460>