diff options
-rw-r--r-- | security/pev/Makefile | 5 | ||||
-rw-r--r-- | security/pev/PLIST | 27 | ||||
-rw-r--r-- | security/pev/distinfo | 18 | ||||
-rw-r--r-- | security/pev/patches/patch-Makefile | 24 | ||||
-rw-r--r-- | security/pev/patches/patch-lib_libpe_Makefile | 35 | ||||
-rw-r--r-- | security/pev/patches/patch-src_Makefile | 64 | ||||
-rw-r--r-- | security/pev/patches/patch-src_pehash.c | 30 | ||||
-rw-r--r-- | security/pev/patches/patch-src_pepack.c | 29 | ||||
-rw-r--r-- | security/pev/patches/patch-src_pesec.c | 16 | ||||
-rw-r--r-- | security/pev/patches/patch-src_plugins.c | 15 |
10 files changed, 100 insertions, 163 deletions
diff --git a/security/pev/Makefile b/security/pev/Makefile index f2a50bb1a60..51b9cfbafb4 100644 --- a/security/pev/Makefile +++ b/security/pev/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.4 2016/03/05 11:29:24 jperkin Exp $ +# $NetBSD: Makefile,v 1.5 2019/10/22 16:37:05 khorben Exp $ # -DISTNAME= pev-0.70 -PKGREVISION= 1 +DISTNAME= pev-0.80 CATEGORIES= security MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=pev/} diff --git a/security/pev/PLIST b/security/pev/PLIST index 4cf8d546afa..3caed23e291 100644 --- a/security/pev/PLIST +++ b/security/pev/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.2 2014/12/09 14:37:06 khorben Exp $ +@comment $NetBSD: PLIST,v 1.3 2019/10/22 16:37:05 khorben Exp $ bin/ofs2rva bin/pedis bin/pehash @@ -12,14 +12,19 @@ bin/rva2ofs lib/libpe.so lib/libpe.so.1 lib/libpe.so.1.0 -man/man1/ofs2rva.1.gz -man/man1/pedis.1.gz -man/man1/pehash.1.gz -man/man1/pepack.1.gz -man/man1/peres.1.gz -man/man1/pescan.1.gz -man/man1/pesec.1.gz -man/man1/pestr.1.gz -man/man1/readpe.1.gz -man/man1/rva2ofs.1.gz +lib/pev/plugins/csv_plugin.so +lib/pev/plugins/html_plugin.so +lib/pev/plugins/json_plugin.so +lib/pev/plugins/text_plugin.so +lib/pev/plugins/xml_plugin.so +man/man1/ofs2rva.1 +man/man1/pedis.1 +man/man1/pehash.1 +man/man1/pepack.1 +man/man1/peres.1 +man/man1/pescan.1 +man/man1/pesec.1 +man/man1/pestr.1 +man/man1/readpe.1 +man/man1/rva2ofs.1 share/pev/userdb.txt diff --git a/security/pev/distinfo b/security/pev/distinfo index 57e17d8683f..e02b3514454 100644 --- a/security/pev/distinfo +++ b/security/pev/distinfo @@ -1,10 +1,10 @@ -$NetBSD: distinfo,v 1.5 2015/11/04 01:18:00 agc Exp $ +$NetBSD: distinfo,v 1.6 2019/10/22 16:37:05 khorben Exp $ -SHA1 (pev-0.70.tar.gz) = b2d1191c3b57049c78ef77b8f54f7f78838af129 -RMD160 (pev-0.70.tar.gz) = 9ffe6dccecdfbeba09e34f9a212c2abcf3861ef0 -SHA512 (pev-0.70.tar.gz) = c98ea778b05b514ef26d87627484b5942247fb4190ad6a166ee2a01fc185dd4663848ca9b5ba3a26be5c8a40eaf42f476bec58ddea0565ac4c6fe0710c9575aa -Size (pev-0.70.tar.gz) = 254821 bytes -SHA1 (patch-Makefile) = 39b31541b2f51e82e9807aed36723105959aa26c -SHA1 (patch-lib_libpe_Makefile) = 11d1beba07b313a4baf2e95b5b56dfd7da4787f9 -SHA1 (patch-src_Makefile) = 2f04a23d40c1859ba1094a00822c0a0294fe3e5b -SHA1 (patch-src_pepack.c) = acb6dc0d1d9b20c13a61275b4f08f5903fec14f9 +SHA1 (pev-0.80.tar.gz) = 18dcb65269344b5047504cca8598477b33532bab +RMD160 (pev-0.80.tar.gz) = 01ed4fa37c5349397dbd8aa3b592b9657e63acf8 +SHA512 (pev-0.80.tar.gz) = d0c8ff8fcd60470899d5dbccfd7a7e4d960da007f42be9c7eab6b22a3d7cf4dde3c3d5cd9c7d70e369164503fb124640cf508ceda3d4792244cf33d11ab83321 +Size (pev-0.80.tar.gz) = 921102 bytes +SHA1 (patch-src_Makefile) = f51a9d6afa64de8ba761a9b889911403b0107aad +SHA1 (patch-src_pehash.c) = c31083fca0d98dc607eb4f8b338bd93dd714f594 +SHA1 (patch-src_pesec.c) = fa302aa9bf2f07558f6cef0c41b0cd9063df7706 +SHA1 (patch-src_plugins.c) = c85c5c3b918850c7383f30d2efdae38985cdd143 diff --git a/security/pev/patches/patch-Makefile b/security/pev/patches/patch-Makefile deleted file mode 100644 index 060f2d5e145..00000000000 --- a/security/pev/patches/patch-Makefile +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD: patch-Makefile,v 1.1 2014/12/09 14:37:06 khorben Exp $ - -No longer insist on a particular make(1) flavor - ---- Makefile.orig 2013-12-27 10:39:49.000000000 +0000 -+++ Makefile -@@ -1,14 +1,14 @@ - LIBPE_DIR = lib/libpe - PEV_DIR = src --MAKE = make -+#MAKE = make - VERSION = 0.70 - ZIPFILE = pev-$(VERSION)-win32.zip - - # just call each separated Makefile - all: - %: -- cd $(LIBPE_DIR); $(MAKE) $@ -- cd $(PEV_DIR); $(MAKE) $@ -+ cd $(LIBPE_DIR) && $(MAKE) $@ -+ cd $(PEV_DIR) && $(MAKE) $@ - - # zip rule only Cygwin targets - zip: diff --git a/security/pev/patches/patch-lib_libpe_Makefile b/security/pev/patches/patch-lib_libpe_Makefile deleted file mode 100644 index a33b0d098c4..00000000000 --- a/security/pev/patches/patch-lib_libpe_Makefile +++ /dev/null @@ -1,35 +0,0 @@ -$NetBSD: patch-lib_libpe_Makefile,v 1.2 2014/12/09 14:37:06 khorben Exp $ - -Fixed generation and installation of the libpe shared library on NetBSD - ---- lib/libpe/Makefile.orig 2013-12-27 10:39:52.000000000 +0000 -+++ lib/libpe/Makefile -@@ -70,6 +70,8 @@ libpe: CPPFLAGS += -D_GNU_SOURCE - libpe: $(libpe_OBJS) - ifeq ($(PLATFORM_OS), Linux) - $(LINK) -shared -Wl,-soname,$(LIBNAME).so.1 $(LDFLAGS) -o $(LIBNAME).so $^ -+else ifeq ($(PLATFORM_OS), NetBSD) -+ $(LINK) -shared -Wl,-soname,$(LIBNAME).so.1 $(LDFLAGS) -o $(LIBNAME).so $^ - else ifeq ($(PLATFORM_OS), Darwin) - $(LINK) -headerpad_max_install_names -dynamiclib \ - -flat_namespace -install_name $(LIBNAME).$(VERSION).dylib \ -@@ -88,6 +90,10 @@ ifeq ($(PLATFORM_OS), Linux) - $(INSTALL_DATA) $(LIBNAME).so $(DEST)/$(LIBNAME).so.$(VERSION) - cd $(DEST); $(SYMLINK) $(LIBNAME).so.$(VERSION) $(LIBNAME).so - cd $(DEST); $(SYMLINK) $(LIBNAME).so.$(VERSION) $(LIBNAME).so.1 -+else ifeq ($(PLATFORM_OS), NetBSD) -+ $(INSTALL_DATA) $(LIBNAME).so $(DEST)/$(LIBNAME).so.$(VERSION) -+ cd $(DEST); $(SYMLINK) $(LIBNAME).so.$(VERSION) $(LIBNAME).so -+ cd $(DEST); $(SYMLINK) $(LIBNAME).so.$(VERSION) $(LIBNAME).so.1 - else ifeq ($(PLATFORM_OS), Darwin) - $(INSTALL_DATA) $(LIBNAME).dylib $(DEST)/$(LIBNAME).$(VERSION).dylib - cd $(DEST); $(SYMLINK) $(LIBNAME).$(VERSION).dylib $(LIBNAME).dylib -@@ -102,6 +108,8 @@ installdirs: - strip-binaries: - ifeq ($(PLATFORM_OS), Linux) - $(STRIP) $(LIBNAME).so -+else ifeq ($(PLATFORM_OS), NetBSD) -+ $(STRIP) $(LIBNAME).so - else ifeq ($(PLATFORM_OS), Darwin) - $(STRIP) $(LIBNAME).dylib - else ifeq ($(PLATFORM_OS), CYGWIN) diff --git a/security/pev/patches/patch-src_Makefile b/security/pev/patches/patch-src_Makefile index 4576ef72100..87078ae6fce 100644 --- a/security/pev/patches/patch-src_Makefile +++ b/security/pev/patches/patch-src_Makefile @@ -1,58 +1,18 @@ -$NetBSD: patch-src_Makefile,v 1.3 2014/12/09 14:37:06 khorben Exp $ +$NetBSD: patch-src_Makefile,v 1.4 2019/10/22 16:37:05 khorben Exp $ -Fixed DESTDIR support +Only link with libdl on Linux ---- src/Makefile.orig 2013-12-27 10:39:49.000000000 +0000 +--- src/Makefile.orig 2017-01-07 22:34:07.000000000 +0000 +++ src/Makefile -@@ -56,7 +56,8 @@ ifeq ($(PLATFORM_OS), Darwin) - endif +@@ -52,7 +52,10 @@ endif - PROGS = readpe rva2ofs ofs2rva pehash pesec pescan pepack pestr pedis peres --SHAREDIR = $(datadir)/pev -+MAN1DIR = $(DESTDIR)$(man1dir) -+SHAREDIR = $(DESTDIR)$(datadir)/pev - LIBPE = $(srcdir)/../lib/libpe - LIBUDIS86 = $(srcdir)/../lib/libudis86 - LIBFUZZY = $(srcdir)/../lib/libfuzzy -@@ -68,6 +69,8 @@ MANDIR = $(srcdir)/../doc/manpages + ####### Compiler options - all: $(PROGS) +-override LDFLAGS += -L$(LIBPE) -lpe -ldl ++override LDFLAGS += -L$(LIBPE) -lpe ++ifeq ($(PLATFORM_OS), Linux) ++override LDFLAGS += -ldl ++endif + override CFLAGS += -I$(LIBPE) -I"../include" -W -Wall -Wextra -std=c99 -pedantic + override CPPFLAGS += -D_GNU_SOURCE -DSHAREDIR="\"$(SHAREDIR)"\" -+pepack: CPPFLAGS += -DPREFIX=\"$(prefix)\" -+ - pesec: LDFLAGS += -lcrypto - pesec: compat/strlcat.c - -@@ -85,13 +88,13 @@ pescan: LDFLAGS += -lm - # Generic rule matching binary names and sources - - %: %.c -- $(CC) $(CFLAGS) $(DFLAGS) output.c malloc_s.c $^ -o $@ $(LDFLAGS) -+ $(CC) $(CPPFLAGS) $(CFLAGS) $(DFLAGS) output.c malloc_s.c $^ -o $@ $(LDFLAGS) - - install: installdirs - for prog in $(PROGS); do \ -- $(INSTALL_PROGRAM) -m 755 $$prog $(DEST); \ -+ $(INSTALL_PROGRAM) -m 755 $$prog $(DEST)/$$prog; \ - $(CHK_FILE_EXISTS) $(MANDIR)/$$prog$(man1ext) && \ -- gzip -c -9 $(MANDIR)/$$prog$(man1ext) > $(man1dir)/$$prog$(man1ext).gz || \ -+ gzip -c -9 $(MANDIR)/$$prog$(man1ext) > $(MAN1DIR)/$$prog$(man1ext).gz || \ - echo -n; \ - done - # TODO: Should we copy it anyway if it already exists? -@@ -99,13 +102,13 @@ install: installdirs - - installdirs: - @$(CHK_DIR_EXISTS) $(DEST) || $(MKDIR) $(DEST) -- @$(CHK_DIR_EXISTS) $(man1dir) || $(MKDIR) $(man1dir) -+ @$(CHK_DIR_EXISTS) $(MAN1DIR) || $(MKDIR) $(MAN1DIR) - @$(CHK_DIR_EXISTS) $(SHAREDIR) || $(MKDIR) $(SHAREDIR) - - uninstall: - for prog in $(PROGS); do \ - $(RM) $(DEST)/$$prog; \ -- $(RM) $(man1dir)/$$prog$(man1ext).gz; \ -+ $(RM) $(MAN1DIR)/$$prog$(man1ext).gz; \ - done - - clean: diff --git a/security/pev/patches/patch-src_pehash.c b/security/pev/patches/patch-src_pehash.c new file mode 100644 index 00000000000..ef061564627 --- /dev/null +++ b/security/pev/patches/patch-src_pehash.c @@ -0,0 +1,30 @@ +$NetBSD: patch-src_pehash.c,v 1.1 2019/10/22 16:37:05 khorben Exp $ + +Compatibility fix for OpenSSL 1.1.0 + +--- src/pehash.c.orig 2017-01-06 22:49:50.000000000 +0000 ++++ src/pehash.c +@@ -215,13 +215,22 @@ static void calc_hash(const char *alg_na + unsigned char md_value[EVP_MAX_MD_SIZE]; + unsigned int md_len; + +- EVP_MD_CTX md_ctx; + // FIXME: Handle errors - Check return values. ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++ EVP_MD_CTX * md_ctx; ++ md_ctx = EVP_MD_CTX_new(); ++ EVP_DigestInit_ex(md_ctx, md, NULL); ++ EVP_DigestUpdate(md_ctx, data, size); ++ EVP_DigestFinal_ex(md_ctx, md_value, &md_len); ++ EVP_MD_CTX_free(md_ctx); ++#else ++ EVP_MD_CTX md_ctx; + EVP_MD_CTX_init(&md_ctx); + EVP_DigestInit_ex(&md_ctx, md, NULL); + EVP_DigestUpdate(&md_ctx, data, size); + EVP_DigestFinal_ex(&md_ctx, md_value, &md_len); + EVP_MD_CTX_cleanup(&md_ctx); ++#endif + + for (unsigned int i=0; i < md_len; i++) + sprintf(&output[i * 2], "%02x", md_value[i]); diff --git a/security/pev/patches/patch-src_pepack.c b/security/pev/patches/patch-src_pepack.c deleted file mode 100644 index 108570113c6..00000000000 --- a/security/pev/patches/patch-src_pepack.c +++ /dev/null @@ -1,29 +0,0 @@ -$NetBSD: patch-src_pepack.c,v 1.2 2014/12/09 14:37:06 khorben Exp $ - -Fixed the path to userdb.txt (see pkg/49458) - ---- src/pepack.c.orig 2013-12-27 10:39:49.000000000 +0000 -+++ src/pepack.c -@@ -21,6 +21,13 @@ - - #include "common.h" - -+#ifndef PREFIX -+# define PREFIX "/usr" -+#endif -+#ifndef DATADIR -+# define DATADIR PREFIX "/share" -+#endif -+ - #define PROGRAM "pepack" - #define MAX_SIG_SIZE 2048 - -@@ -133,7 +140,7 @@ static bool loaddb(FILE **fp, const opti - *fp = fopen(dbfile, "r"); - if (!*fp) { - // TODO(jweyrich): This might change - Should we use a config.h with a constant from $(SHAREDIR)? -- *fp = fopen("/usr/share/pev/userdb.txt", "r"); -+ *fp = fopen(DATADIR "/pev/userdb.txt", "r"); - } - - return *fp != NULL; diff --git a/security/pev/patches/patch-src_pesec.c b/security/pev/patches/patch-src_pesec.c new file mode 100644 index 00000000000..01fb7eb2543 --- /dev/null +++ b/security/pev/patches/patch-src_pesec.c @@ -0,0 +1,16 @@ +$NetBSD: patch-src_pesec.c,v 1.1 2019/10/22 16:37:05 khorben Exp $ + +Fix build with OpenSSL >= 1.1.0 + +--- src/pesec.c.orig 2017-01-06 22:27:18.000000000 +0000 ++++ src/pesec.c +@@ -225,7 +225,9 @@ static int parse_pkcs7_data(const option + PKCS7 *p7 = NULL; + BIO *in = NULL; + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_malloc_init(); ++#endif + ERR_load_crypto_strings(); + OpenSSL_add_all_algorithms(); + diff --git a/security/pev/patches/patch-src_plugins.c b/security/pev/patches/patch-src_plugins.c new file mode 100644 index 00000000000..ba3c297bc8a --- /dev/null +++ b/security/pev/patches/patch-src_plugins.c @@ -0,0 +1,15 @@ +$NetBSD: patch-src_plugins.c,v 1.1 2019/10/22 16:37:05 khorben Exp $ + +Build fix for FreeBSD, NetBSD, and OpenBSD. + +--- src/plugins.c.orig 2017-01-06 22:27:18.000000000 +0000 ++++ src/plugins.c +@@ -167,7 +167,7 @@ int plugins_load_all_from_directory(cons + const char *filename = dir_entry->d_name; + + // TODO(jweyrich): Use macro conditions for each system: .so, .dylib, .dll +-#if defined(__linux__) ++#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) + const bool possible_plugin = utils_str_ends_with(filename, ".so") != 0; + #elif defined(__APPLE__) + const bool possible_plugin = utils_str_ends_with(filename, ".dylib") != 0; |