diff --git a/security/kdbxviewer/Makefile b/security/kdbxviewer/Makefile index 9c67d16b47c8b..6e2e8706733ee 100644 --- a/security/kdbxviewer/Makefile +++ b/security/kdbxviewer/Makefile @@ -1,37 +1,33 @@ # Created by: Ben Woods PORTNAME= kdbxviewer -PORTVERSION= 0.1 +PORTVERSION= 0.1.9 DISTVERSIONPREFIX=v CATEGORIES= security -MAINTAINER= ports@FreeBSD.org -COMMENT= ncurses GUI and command-line tool for KeePass2 Database files +MAINTAINER= fuz@fuz.su +COMMENT= Ncurses UI and command-line tool for KeePass2 Database files LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN_FreeBSD_13= ld: error: duplicate symbol: trail -BROKEN_FreeBSD_14= ld: error: duplicate symbol: trail - LIB_DEPENDS= libexpat.so:textproc/expat2 \ libgcrypt.so:security/libgcrypt \ libstfl.so:devel/stfl +USES= ncurses USE_GITHUB= yes -GH_ACCOUNT= max-weller +GH_ACCOUNT= pepa65 -USES= ncurses +ALL_TARGET= kdbxviewer CFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib PLIST_FILES= bin/kdbxviewer -ALL_TARGET= post-patch: ${REINPLACE_CMD} -e 's|gcc|${CC} ${CFLAGS} ${LDFLAGS}|' ${WRKSRC}/Makefile do-install: ${INSTALL_PROGRAM} ${WRKSRC}/bin/kdbxviewer ${STAGEDIR}${PREFIX}/bin/ - ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/kdbxviewer .include diff --git a/security/kdbxviewer/distinfo b/security/kdbxviewer/distinfo index ab74ee01e911a..4010666bde650 100644 --- a/security/kdbxviewer/distinfo +++ b/security/kdbxviewer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1575987926 -SHA256 (max-weller-kdbxviewer-v0.1_GH0.tar.gz) = 4a9406232ff440e7453d34bb450b44c715ebefc4bd4c98c305d4d0af9aee4ecf -SIZE (max-weller-kdbxviewer-v0.1_GH0.tar.gz) = 142765 +TIMESTAMP = 1635946423 +SHA256 (pepa65-kdbxviewer-v0.1.9_GH0.tar.gz) = ab9c26971be2e5fdf623e795173a7f6604fe96615b186db1033b09dcd76334d5 +SIZE (pepa65-kdbxviewer-v0.1.9_GH0.tar.gz) = 140205 diff --git a/security/kdbxviewer/files/patch-src_main.c b/security/kdbxviewer/files/patch-src_main.c new file mode 100644 index 0000000000000..b1eaf090b2dda --- /dev/null +++ b/security/kdbxviewer/files/patch-src_main.c @@ -0,0 +1,70 @@ +--- src/main.c.orig 2021-10-10 14:14:08 UTC ++++ src/main.c +@@ -198,7 +198,7 @@ int main(int argc, char **argv) { + case 'i': + case 'h': + case 'V': +- if (command != 0) abort(-1, "%sMultiple commands not allowed\n", ERRC); ++ if (command != 0) abort(-1, "%sMultiple commands not allowed%s\n", ERRC, NORMAL); + command = opt; + break; + case 'v': +@@ -215,15 +215,15 @@ int main(int argc, char **argv) { + searchall = TRUE; + case 's': + if (search != NULL) +- abort(-2, "%sSuperfluous search term: %s\n", ERRC, optarg); ++ abort(-2, "%sSuperfluous search term: %s%s\n", ERRC, optarg, NORMAL); + search = optarg; + break; + case 'd': + if ((kdbxfile = fopen(optarg, "r")) == NULL) +- abort(-3, "%sCan't open database file: %s\n", ERRC, optarg); ++ abort(-3, "%sCan't open database file: %s%s\n", ERRC, optarg, NORMAL); + kdbxfilename = optarg; + default: +- abort(-4, "%sUnrecognized argument -%s\n", ERRC, argv[optind]); ++ abort(-4, "%sUnrecognized argument -%s%s\n", ERRC, argv[optind], NORMAL); + } + } + +@@ -238,10 +238,10 @@ int main(int argc, char **argv) { + + if (optind < argc) // Must be [-s] argument, unless already given + if (search == NULL) search = argv[optind++]; +- else abort(-5, "%sSuperfluous argument: %s\n", ERRC, argv[optind]); ++ else abort(-5, "%sSuperfluous argument: %s%s\n", ERRC, argv[optind], NORMAL); + + if (optind < argc) +- abort(-6, "%sSuperfluous argument: %s\n", ERRC, argv[optind]); ++ abort(-6, "%sSuperfluous argument: %s%s\n", ERRC, argv[optind], NORMAL); + + if (*kdbxfilename == 0) { // Try configfile for database filename + *filename = 0; +@@ -253,22 +253,22 @@ int main(int argc, char **argv) { + *filename = 0; + } + if (*kdbxfilename == 0) +- abort(-7, "%sNo database specified on commandline or in configfile\n", +- ERRC); ++ abort(-7, "%sNo database specified on commandline or in configfile%s\n", ++ ERRC, NORMAL); + else strcpy(filename, kdbxfilename); + } + + // Set default mode depending on search + if (search != NULL) { // Search requested + if (command == 'i' || command == 'x') +- abort(-8, "%sCannot Search with -i/--interactive or -x/--xml\n", ERRC); ++ abort(-8, "%sCannot Search with -i/--interactive or -x/--xml%s\n", ERRC, NORMAL); + if (command == 0) command = 't'; + } else { // No search + if (command == 0) command = 'i'; + } + + // Open the database +- warn("%skdbxviewer", RESET); ++ warn("%skdbxviewer", NORMAL); + if (password == NULL) { + warn(" - Opening KDBX database %s%s\n%sPassword: %s", FIELD, kdbxfilename, PWC, NORMAL); + password = getpass(""); diff --git a/security/kdbxviewer/files/patch-src_tui.c b/security/kdbxviewer/files/patch-src_tui.c new file mode 100644 index 0000000000000..84b31ba93cdf1 --- /dev/null +++ b/security/kdbxviewer/files/patch-src_tui.c @@ -0,0 +1,11 @@ +--- src/tui.c.orig 2021-10-04 12:08:30 UTC ++++ src/tui.c +@@ -13,7 +13,7 @@ + #include + #include "helper.h" + +-int unmask; ++extern int unmask; + #define WIDE(str) stfl_ipool_towc(ipool, str) + #define MAXFIELDLEN 32768 + diff --git a/security/kdbxviewer/pkg-descr b/security/kdbxviewer/pkg-descr index b098530d1e38e..51292e6199b11 100644 --- a/security/kdbxviewer/pkg-descr +++ b/security/kdbxviewer/pkg-descr @@ -7,4 +7,4 @@ Features: - Display tree structure with de-obscured (=readable) passwords - Get tab-separated (TSV/CSV) password list -WWW: https://max-weller.github.io/kdbx-viewer/ +WWW: https://github.com/pepa65/kdbxviewer