Tue May 2 22:01:50 2023 UTC ()
Add fp-checkpassword: DJB-style checkpassword program for Dovecot passdb

fp-checkpassword is a DJB-style checkpassword program for Dovecot's
passdb. It relies on Dovecot's authentication socket and follows the
usual checkpassword command-line interface.


(schmonz)
diff -r0 -r1.1 pkgsrc/sysutils/fp-checkpassword/DESCR
diff -r0 -r1.1 pkgsrc/sysutils/fp-checkpassword/Makefile
diff -r0 -r1.1 pkgsrc/sysutils/fp-checkpassword/PLIST
diff -r0 -r1.1 pkgsrc/sysutils/fp-checkpassword/distinfo
diff -r0 -r1.1 pkgsrc/sysutils/fp-checkpassword/patches/patch-main.c

File Added: pkgsrc/sysutils/fp-checkpassword/DESCR
fp-checkpassword is a DJB-style checkpassword program for Dovecot's
passdb. It relies on Dovecot's authentication socket and follows the
usual checkpassword command-line interface.

File Added: pkgsrc/sysutils/fp-checkpassword/Makefile
# $NetBSD: Makefile,v 1.1 2023/05/02 22:01:50 schmonz Exp $

DISTNAME=		${GITHUB_PROJECT}-${GITHUB_TAG}
PKGNAME=		${GITHUB_PROJECT}-0.0.20171108
CATEGORIES=		sysutils
MASTER_SITES=		${MASTER_SITE_GITHUB:=Moosemorals/}
GITHUB_PROJECT=		fp-checkpassword
GITHUB_TAG=		f92fc7c51bc4bd98f404cb29e843db1cd5ed623f

MAINTAINER=		schmonz@NetBSD.org
HOMEPAGE=		https://github.com/Moosemorals/fp-checkpassword/
COMMENT=		DJB-style checkpassword program for Dovecot passdb
LICENSE=		isc

USE_TOOLS+=		gmake
BUILD_TARGET=		main

INSTALLATION_DIRS=	bin share/doc/${PKGBASE}

#do-build:
#	cd ${WRKSRC} && ${MAKE} main

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/main ${DESTDIR}${PREFIX}/bin/${PKGBASE}
	${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}

.include "../../mk/bsd.pkg.mk"

File Added: pkgsrc/sysutils/fp-checkpassword/PLIST
@comment $NetBSD: PLIST,v 1.1 2023/05/02 22:01:50 schmonz Exp $
bin/fp-checkpassword
share/doc/fp-checkpassword/README.md

File Added: pkgsrc/sysutils/fp-checkpassword/distinfo
$NetBSD: distinfo,v 1.1 2023/05/02 22:01:50 schmonz Exp $

BLAKE2s (fp-checkpassword-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f.tar.gz) = a952dfea0a06dfab8f0aa038724ebfb02ab0cc60ebf6f5fadcb262b1b57ae20a
SHA512 (fp-checkpassword-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f.tar.gz) = c52e42af3ab1f411228ee3e9e726f1e3fe9613b12ddc5b0ab90c78785bd5491595d1440af93305b8142b5aab16a8ae25ee6b68e92e4055e4d5ca820e7ff7ca0f
Size (fp-checkpassword-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f-f92fc7c51bc4bd98f404cb29e843db1cd5ed623f.tar.gz) = 7152 bytes
SHA1 (patch-main.c) = 114c2d2b21de535be48b7a906520d1e6a59d4376

File Added: pkgsrc/sysutils/fp-checkpassword/patches/patch-main.c
$NetBSD: patch-main.c,v 1.1 2023/05/02 22:01:50 schmonz Exp $

Avoid clearenv(), not available on all platforms.

--- main.c.orig	2017-11-08 07:08:02.000000000 +0000
+++ main.c
@@ -41,6 +41,8 @@
 #define PORT 15408
 #define LOCALHOST "127.0.0.1"
 
+extern char **environ;
+
 int create_socket() {
     int sock;
     struct sockaddr_in dest;
@@ -146,7 +148,7 @@ int main(int argc, char** argv) {
     trimNewline(result);
 
     if (strcmp("success", result) == 0) {
-        clearenv();
+        environ = calloc(1, sizeof(*environ));
         readEnvironment(socket);
 
         closelog();