diff options
author | abs <abs@pkgsrc.org> | 2022-05-31 08:14:44 +0000 |
---|---|---|
committer | abs <abs@pkgsrc.org> | 2022-05-31 08:14:44 +0000 |
commit | c8521225a08703c50058f4129cc9d4cb3c7c852b (patch) | |
tree | 16ac92e0027d24557a0945365195a71da1f5a35f /x11/xscreensaver | |
parent | d67b1da37449b1a53fa28e8f0e59959b139b6bc5 (diff) | |
download | pkgsrc-c8521225a08703c50058f4129cc9d4cb3c7c852b.tar.gz |
Fix xscreensaver for at least argon2 passwords on NetBSD
Limit "terminating pw_passwd at first ," behaviour to HP-UX, as
it breaks at least argon2 passwords on NetBSD
Bump PKGREVISION
Diffstat (limited to 'x11/xscreensaver')
-rw-r--r-- | x11/xscreensaver/Makefile | 4 | ||||
-rw-r--r-- | x11/xscreensaver/distinfo | 3 | ||||
-rw-r--r-- | x11/xscreensaver/patches/patch-driver_passwd-pwent.c | 34 |
3 files changed, 38 insertions, 3 deletions
diff --git a/x11/xscreensaver/Makefile b/x11/xscreensaver/Makefile index d393ff93ce5..d44893a6635 100644 --- a/x11/xscreensaver/Makefile +++ b/x11/xscreensaver/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.139 2022/05/11 11:31:19 wiz Exp $ +# $NetBSD: Makefile,v 1.140 2022/05/31 08:14:44 abs Exp $ DISTNAME= xscreensaver-6.03 -PKGREVISION= 2 +PKGREVISION= 3 CATEGORIES= x11 MASTER_SITES= https://www.jwz.org/xscreensaver/ DIST_SUBDIR= xscreensaver diff --git a/x11/xscreensaver/distinfo b/x11/xscreensaver/distinfo index 31c6a22c549..f1c4781f8ff 100644 --- a/x11/xscreensaver/distinfo +++ b/x11/xscreensaver/distinfo @@ -1,6 +1,7 @@ -$NetBSD: distinfo,v 1.88 2022/03/08 07:27:11 wiz Exp $ +$NetBSD: distinfo,v 1.89 2022/05/31 08:14:44 abs Exp $ BLAKE2s (xscreensaver/xscreensaver-6.03.tar.gz) = de81815922c9ae70ea281c694d414b0fa6d88a597755f68d96a596423641b0ce SHA512 (xscreensaver/xscreensaver-6.03.tar.gz) = 4aa30824c972a73dc09aeba478cad074f273839a4c7641cddd292da38fc75db10a3f6243cbe8619c5e39cad54c27d33e1e271dfed167458faa7747fb0a090630 Size (xscreensaver/xscreensaver-6.03.tar.gz) = 25703584 bytes SHA1 (patch-configure) = 4821b6f4400976990b6042677960a53e25f03a24 +SHA1 (patch-driver_passwd-pwent.c) = 599a63eda4b890d4673b0e2763d980afb4d44a4e diff --git a/x11/xscreensaver/patches/patch-driver_passwd-pwent.c b/x11/xscreensaver/patches/patch-driver_passwd-pwent.c new file mode 100644 index 00000000000..3ad3c01d9cf --- /dev/null +++ b/x11/xscreensaver/patches/patch-driver_passwd-pwent.c @@ -0,0 +1,34 @@ +$NetBSD: patch-driver_passwd-pwent.c,v 1.1 2022/05/31 08:14:44 abs Exp $ + +Limit "terminating pw_passwd at first ," behaviour to HP-UX, as +it breaks at least argon2 passwords on NetBSD + +--- driver/passwd-pwent.c.orig 2021-10-04 22:18:28.082371172 +0000 ++++ driver/passwd-pwent.c +@@ -163,6 +163,7 @@ get_encrypted_passwd (const char *user) + result = strdup(p->pw_passwd); + } + ++#ifdef HAVE_HPUX_PASSWD + /* The manual for passwd(4) on HPUX 10.10 says: + + Password aging is put in effect for a particular user if his +@@ -173,6 +174,10 @@ get_encrypted_passwd (const char *user) + So this means that passwd->pw_passwd isn't simply a string of cyphertext, + it might have trailing junk. So, if there is a comma in the string, and + that comma is beyond position 13, terminate the string before the comma. ++ ++ Note: This behaviour can break other systems where comma separated data ++ is significant, such as argon2 passwords on NetBSD, so conditionalise ++ to HAVE_HPUX_PASSWD + */ + if (result && strlen(result) > 13) + { +@@ -180,6 +185,7 @@ get_encrypted_passwd (const char *user) + if (s) + *s = 0; + } ++# endif /* HAVE_HPUX_PASSWD */ + + /* We only issue this warning in non-verbose mode if not compiled with + support for PAM. If we're using PAM, it's common for pwent passwords |