From 249f0257b9aef64cd98fe90ef115e98eb0755729 Mon Sep 17 00:00:00 2001 From: drochner Date: Mon, 22 Feb 2010 17:19:09 +0000 Subject: fix a problem with the curses widget and non-UTF8 locales: keys which used less bytes in the system encoding than in the UTF8 passed to the caller caused that the passphrase got truncated because only the input length was accounted for bump PKGREVISION --- security/pinentry/Makefile | 3 ++- security/pinentry/distinfo | 3 ++- security/pinentry/patches/patch-aa | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 security/pinentry/patches/patch-aa (limited to 'security') diff --git a/security/pinentry/Makefile b/security/pinentry/Makefile index 949779f806d..56a3b68b099 100644 --- a/security/pinentry/Makefile +++ b/security/pinentry/Makefile @@ -1,7 +1,8 @@ -# $NetBSD: Makefile,v 1.24 2010/02/08 11:44:39 drochner Exp $ +# $NetBSD: Makefile,v 1.25 2010/02/22 17:19:09 drochner Exp $ # DISTNAME= pinentry-0.7.6 +PKGREVISION= 1 CATEGORIES= security MASTER_SITES= ftp://ftp.gnupg.org/gcrypt/pinentry/ diff --git a/security/pinentry/distinfo b/security/pinentry/distinfo index fe058f26c20..effb41ba810 100644 --- a/security/pinentry/distinfo +++ b/security/pinentry/distinfo @@ -1,5 +1,6 @@ -$NetBSD: distinfo,v 1.5 2009/12/15 19:50:47 drochner Exp $ +$NetBSD: distinfo,v 1.6 2010/02/22 17:19:09 drochner Exp $ SHA1 (pinentry-0.7.6.tar.gz) = 0c525ce81e5589bc9a4f2eb72705bed2b3e9a8b9 RMD160 (pinentry-0.7.6.tar.gz) = 6e69eee88b5cbb919ced79971cd4794f5e659023 Size (pinentry-0.7.6.tar.gz) = 475101 bytes +SHA1 (patch-aa) = cd30ad4f3a3737687dc5786ebd861ef3b17c600e diff --git a/security/pinentry/patches/patch-aa b/security/pinentry/patches/patch-aa new file mode 100644 index 00000000000..af4411e0285 --- /dev/null +++ b/security/pinentry/patches/patch-aa @@ -0,0 +1,16 @@ +$NetBSD: patch-aa,v 1.3 2010/02/22 17:19:09 drochner Exp $ + +--- pinentry/pinentry-curses.c.orig 2009-04-16 15:06:53.000000000 +0000 ++++ pinentry/pinentry-curses.c +@@ -819,8 +819,10 @@ dialog_run (pinentry_t pinentry, const c + if (pin_utf8) + { + pinentry_setbufferlen (pinentry, strlen (pin_utf8) + 1); +- if (pinentry->pin) ++ if (pinentry->pin) { + strcpy (pinentry->pin, pin_utf8); ++ diag.pin_len = strlen (pin_utf8); ++ } + secmem_free (pin_utf8); + pinentry->locale_err = 0; + } -- cgit v1.2.3