diff --git a/sysutils/aimage/Makefile b/sysutils/aimage/Makefile index 6650ab8abafd..ec309148d5a1 100644 --- a/sysutils/aimage/Makefile +++ b/sysutils/aimage/Makefile @@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libafflib.so:sysutils/afflib -USES= gmake readline ssl +USES= gmake readline ssl ncurses GNU_CONFIGURE= yes # Pretend ssl3_new exists for LibreSSL. It's never really used but # configure checks for it. @@ -23,11 +23,4 @@ CONFIGURE_ARGS= ac_cv_lib_ssl_ssl3_new=yes PLIST_FILES= bin/aimage -.include - -.if ${SSL_DEFAULT} == base -BROKEN_FreeBSD_12= error: field has incomplete type 'EVP_MD_CTX' (aka 'evp_md_ctx_st') -BROKEN_FreeBSD_13= error: field has incomplete type 'EVP_MD_CTX' (aka 'evp_md_ctx_st') -.endif - -.include +.include diff --git a/sysutils/aimage/files/patch-src_hash__t.h b/sysutils/aimage/files/patch-src_hash__t.h new file mode 100644 index 000000000000..4770a4a8e571 --- /dev/null +++ b/sysutils/aimage/files/patch-src_hash__t.h @@ -0,0 +1,47 @@ +--- src/hash_t.h.orig 2011-08-17 23:33:08 UTC ++++ src/hash_t.h +@@ -160,7 +160,7 @@ typedef hash__ sha512_t; + template + class hash_generator__:T { /* generates the hash */ + const EVP_MD *md; +- EVP_MD_CTX mdctx; /* the context for computing the value */ ++ 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 */ +@@ -189,8 +189,8 @@ class hash_generator__:T { /* generates the hash */ + } + void init(){ + if(initialized==false){ +- EVP_MD_CTX_init(&mdctx); +- EVP_DigestInit_ex(&mdctx, md, NULL); ++ mdctx = EVP_MD_CTX_create(); ++ EVP_DigestInit_ex(mdctx, md, NULL); + initialized = true; + finalized = false; + hashed_bytes = 0; +@@ -202,12 +202,13 @@ class hash_generator__:T { /* generates the hash */ + std::cerr << "hashgen_t::update called after finalized\n"; + exit(1); + } +- EVP_DigestUpdate(&mdctx,buf,bufsize); ++ EVP_DigestUpdate(mdctx,buf,bufsize); + hashed_bytes += bufsize; + } + void release(){ /* free allocated memory */ + if(initialized){ +- EVP_MD_CTX_cleanup(&mdctx); ++ EVP_MD_CTX_destroy(mdctx); ++ mdctx = NULL; + initialized = false; + hashed_bytes = 0; + } +@@ -223,7 +224,7 @@ class hash_generator__:T { /* generates the hash */ + } + hash__ val; + unsigned int len = sizeof(val.digest); +- EVP_DigestFinal(&mdctx,val.digest,&len); ++ EVP_DigestFinal(mdctx,val.digest,&len); + finalized = true; + return val; + }