summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Fiskerstrand <k_f@gentoo.org>2015-06-07 14:42:22 +0000
committerKristian Fiskerstrand <k_f@gentoo.org>2015-06-07 14:42:22 +0000
commit20fac7f887371f7b7fc0a7b4f85c5da66177b318 (patch)
tree6734c0f5e8f890ab8dc02bc82bc55a07d2ba5ea8 /app-crypt/pinentry/files
parentAdd github to remote-id in metadata.xml (diff)
downloadgentoo-2-20fac7f887371f7b7fc0a7b4f85c5da66177b318.tar.gz
gentoo-2-20fac7f887371f7b7fc0a7b4f85c5da66177b318.tar.bz2
gentoo-2-20fac7f887371f7b7fc0a7b4f85c5da66177b318.zip
Remove old versions
(Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key 0x250B7AFED6379D85!)
Diffstat (limited to 'app-crypt/pinentry/files')
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-cmd_confirm.patch47
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-gnome3.patch518
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-handlers-return.patch28
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-linking-order.patch104
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-management.patch136
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-memory.patch32
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.2-simplify.patch48
7 files changed, 0 insertions, 913 deletions
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-cmd_confirm.patch b/app-crypt/pinentry/files/pinentry-0.9.2-cmd_confirm.patch
deleted file mode 100644
index 8724d337f00d..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-cmd_confirm.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 29236f84aca64be72c97a9b5513457a4e45afbc6 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Mon, 11 May 2015 16:14:58 +0200
-Subject: [PATCH] Implement cmd_confirm in terms of cmd_message.
-
-* pinentry/pinentry.c (cmd_confirm): Implement cmd_confirm in terms of
-cmd_message.
----
- pinentry/pinentry.c | 22 +---------------------
- 1 file changed, 1 insertion(+), 21 deletions(-)
-
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index f28c576..11a8027 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -1146,27 +1146,7 @@ cmd_confirm (ASSUAN_CONTEXT ctx, char *line)
- static int
- cmd_message (ASSUAN_CONTEXT ctx, char *line)
- {
-- int result;
--
-- pinentry.one_button = 1;
-- pinentry.quality_bar = 0;
-- pinentry.close_button = 0;
-- pinentry.locale_err = 0;
-- pinentry.specific_err = 0;
-- result = (*pinentry_cmd_handler) (&pinentry);
-- if (pinentry.error)
-- {
-- free (pinentry.error);
-- pinentry.error = NULL;
-- }
--
-- if (pinentry.close_button)
-- assuan_write_status (ctx, "BUTTON_INFO", "close");
--
-- return result ? 0
-- : (pinentry.specific_err? pinentry.specific_err :
-- pinentry.locale_err? ASSUAN_Locale_Problem
-- : 0);
-+ return cmd_confirm (ctx, "--one-button");
- }
-
- /* GETINFO <what>
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-gnome3.patch b/app-crypt/pinentry/files/pinentry-0.9.2-gnome3.patch
deleted file mode 100644
index 040bc50eebc7..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-gnome3.patch
+++ /dev/null
@@ -1,518 +0,0 @@
-From be87785005d256b7f3dacc607ba5ea0a14de8593 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Tue, 12 May 2015 17:07:49 +0200
-Subject: [PATCH] Add a GNOME3 pinentry based on gcr.
-
-* configure.ac (--enable-pinentry-gnome3): Option to enable the GNOME3
-pinentry.
-(pinentry_gnome_3): Set to yes if enabled and gcr-3 and gcr-base-3 gcr
-is available.
-(GNOME3CFLAGS): Define and AC_SUBST.
-(GNOME3LIBS): Define and AC_SUBST.
-(GCR_API_SUBJECT_TO_CHANGE): Define.
-(BUILD_PINENTRY_GNOME_3): Define.
-* Makefile.am (pinentry_gnome_3): Define.
-(SUBDIRS): Add ${pinentry_gnome_3}.
-* gnome3/Makefile.am: New file.
-* gnome3/pinentry-gnome3.c: New file.
----
- Makefile.am | 11 +-
- configure.ac | 62 +++++++++--
- gnome3/Makefile.am | 39 +++++++
- gnome3/pinentry-gnome3.c | 271 +++++++++++++++++++++++++++++++++++++++++++++++
- 4 files changed, 370 insertions(+), 13 deletions(-)
- create mode 100644 gnome3/Makefile.am
- create mode 100644 gnome3/pinentry-gnome3.c
-
-diff --git a/Makefile.am b/Makefile.am
-index f8f7aac..177f37e 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,5 +1,5 @@
- # Makefile.am
--# Copyright (C) 2002, 2012 g10 Code GmbH
-+# Copyright (C) 2002, 2012, 2015 g10 Code GmbH
- #
- # This file is part of PINENTRY.
- #
-@@ -46,6 +46,12 @@ else
- pinentry_gtk_2 =
- endif
-
-+if BUILD_PINENTRY_GNOME_3
-+pinentry_gnome_3 = gnome3
-+else
-+pinentry_gnome_3 =
-+endif
-+
- if BUILD_PINENTRY_QT4
- pinentry_qt4 = qt4
- else
-@@ -59,7 +65,8 @@ pinentry_w32 =
- endif
-
- SUBDIRS = assuan secmem pinentry ${pinentry_curses} ${pinentry_tty} \
-- ${pinentry_gtk_2} ${pinentry_qt4} ${pinentry_w32} doc
-+ ${pinentry_gtk_2} ${pinentry_gnome_3} ${pinentry_qt4} \
-+ ${pinentry_w32} doc
-
-
- install-exec-local:
-diff --git a/configure.ac b/configure.ac
-index c50ce68..9948d1f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -274,28 +274,34 @@ fi
-
-
- dnl
--dnl Check for GTK+-2 pinentry program.
-+dnl Check for GTK+-2 / GNOME3 pinentry programs.
- dnl
- AC_ARG_ENABLE(pinentry-gtk2,
- AC_HELP_STRING([--enable-pinentry-gtk2], [build GTK+-2 pinentry]),
- pinentry_gtk_2=$enableval, pinentry_gtk_2=maybe)
-
-+AC_ARG_ENABLE(pinentry-gnome3,
-+ AC_HELP_STRING([--enable-pinentry-gnome3], [build GNOME 3 pinentry]),
-+ pinentry_gnome_3=$enableval, pinentry_gnome_3=maybe)
-+
- dnl check for pkg-config
--if test "$pinentry_gtk_2" != "no"; then
-+if test "$pinentry_gtk_2" != "no" -o "$pinentry_gnome_3" != "no"; then
- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- if test x"${PKG_CONFIG}" = xno ; then
- pinentry_gtk_2=no
-+ pinentry_gnome_3=no
- fi
- fi
-
- dnl check if the module gtk+-2.0 exists
--if test "$pinentry_gtk_2" != "no"; then
-+if test "$pinentry_gtk_2" != "no" -o "$pinentry_gnome_3" != "no"; then
- AC_MSG_CHECKING([for gtk+-2])
- "${PKG_CONFIG}" --exists gtk+-2.0
- if test $? -ne 0 ; then
- AC_MSG_RESULT([no])
- AC_MSG_WARN([pkg-config could not find the module gtk+-2.0])
- pinentry_gtk_2=no
-+ pinentry_gnome_3=no
- else
- AC_MSG_RESULT([yes])
- AC_MSG_CHECKING([gtk+-2 version >= 2.4.0])
-@@ -305,17 +311,45 @@ if test "$pinentry_gtk_2" != "no"; then
- if test $? -ne 0 ; then
- AC_MSG_WARN([building GTK+-2 pinentry disabled])
- pinentry_gtk_2=no
-+ pinentry_gnome_3=no
- else
- GTK2CFLAGS=`"${PKG_CONFIG}" --cflags gtk+-2.0`
- GTK2LIBS=`"${PKG_CONFIG}" --libs gtk+-2.0`
- AC_SUBST(GTK2CFLAGS)
- AC_SUBST(GTK2LIBS)
-- pinentry_gtk_2=yes
-+ if test "$pinentry_gtk_2" != "no"
-+ then
-+ pinentry_gtk_2=yes
-+ fi
-+ if test "$pinentry_gnome_3" != "no"
-+ then
-+ pinentry_gnome_3=yes
-+ fi
- fi
- fi
- fi
- AM_CONDITIONAL(BUILD_PINENTRY_GTK_2, test "$pinentry_gtk_2" = "yes")
-
-+if test "$pinentry_gnome_3" != "no"; then
-+ AC_MSG_CHECKING([for gcr])
-+ "${PKG_CONFIG}" --exists gcr-3,gcr-base-3
-+ if test $? -ne 0 ; then
-+ AC_MSG_RESULT([no])
-+ AC_MSG_WARN([pkg-config could not find the module gcr-3,gcr-base-3])
-+ pinentry_gnome_3=no
-+ else
-+ AC_MSG_RESULT([yes])
-+ GNOME3CFLAGS=`"${PKG_CONFIG}" --cflags gcr-3,gcr-base-3`
-+ GNOME3LIBS=`"${PKG_CONFIG}" --libs gcr-3,gcr-base-3`
-+ AC_SUBST(GNOME3CFLAGS)
-+ AC_SUBST(GNOME3LIBS)
-+ AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Nod nod])
-+ pinentry_gnome_3=yes
-+ fi
-+fi
-+
-+AM_CONDITIONAL(BUILD_PINENTRY_GNOME_3, test "$pinentry_gnome_3" = "yes")
-+
- dnl
- dnl Check for libsecret.
- dnl
-@@ -450,16 +484,20 @@ else
- if test "$pinentry_qt4" = "yes"; then
- PINENTRY_DEFAULT=pinentry-qt4
- else
-- if test "$pinentry_curses" = "yes"; then
-- PINENTRY_DEFAULT=pinentry-curses
-+ if test "$pinentry_gnome_3" = "yes"; then
-+ PINENTRY_DEFAULT=pinentry-gnome3
- else
-- if test "$pinentry_tty" = "yes"; then
-- PINENTRY_DEFAULT=pinentry-tty
-+ if test "$pinentry_curses" = "yes"; then
-+ PINENTRY_DEFAULT=pinentry-curses
- else
-- if test "$pinentry_w32" = "yes"; then
-- PINENTRY_DEFAULT=pinentry-w32
-+ if test "$pinentry_tty" = "yes"; then
-+ PINENTRY_DEFAULT=pinentry-tty
- else
-- AC_MSG_ERROR([[No pinentry enabled.]])
-+ if test "$pinentry_w32" = "yes"; then
-+ PINENTRY_DEFAULT=pinentry-w32
-+ else
-+ AC_MSG_ERROR([[No pinentry enabled.]])
-+ fi
- fi
- fi
- fi
-@@ -475,6 +513,7 @@ pinentry/Makefile
- curses/Makefile
- tty/Makefile
- gtk+-2/Makefile
-+gnome3/Makefile
- qt4/Makefile
- w32/Makefile
- doc/Makefile
-@@ -493,6 +532,7 @@ AC_MSG_NOTICE([
- Curses Pinentry ..: $pinentry_curses
- TTY Pinentry .....: $pinentry_tty
- GTK+-2 Pinentry ..: $pinentry_gtk_2
-+ GNOME 3 Pinentry .: $pinentry_gnome_3
- Qt4 Pinentry .....: $pinentry_qt4 $pinentry_qt4_clip_msg
- W32 Pinentry .....: $pinentry_w32
-
-diff --git a/gnome3/Makefile.am b/gnome3/Makefile.am
-new file mode 100644
-index 0000000..78df706
---- /dev/null
-+++ b/gnome3/Makefile.am
-@@ -0,0 +1,39 @@
-+# Makefile.am - PIN entry GTK+ frontend.
-+# Copyright (C) 2002, 2015 g10 Code GmbH
-+#
-+# This file is part of PINENTRY.
-+#
-+# PINENTRY is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# PINENTRY is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-+
-+## Process this file with automake to produce Makefile.in
-+
-+bin_PROGRAMS = pinentry-gnome3
-+
-+if FALLBACK_CURSES
-+ncurses_include = $(NCURSES_INCLUDE)
-+libcurses = ../pinentry/libpinentry-curses.a $(LIBCURSES) $(LIBICONV)
-+else
-+ncurses_include =
-+libcurses =
-+endif
-+
-+AM_CPPFLAGS = $(COMMON_CFLAGS) $(GNOME3CFLAGS) \
-+ $(ncurses_include) -I$(top_srcdir)/assuan \
-+ -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry
-+LDADD = $(COMMON_LIBS) \
-+ ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
-+ $(LIBCAP) $(GNOME3LIBS) $(libcurses)
-+
-+pinentry_gnome3_SOURCES = pinentry-gnome3.c
-diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c
-new file mode 100644
-index 0000000..74ec89c
---- /dev/null
-+++ b/gnome3/pinentry-gnome3.c
-@@ -0,0 +1,271 @@
-+/* pinentry-gnome3.c
-+ Copyright (C) 2015 g10 Code GmbH
-+
-+ pinentry-gnome-3 is a pinentry application for GNOME 3. It tries
-+ to follow the Gnome Human Interface Guide as close as possible.
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 2 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program; if not, write to the Free Software
-+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include "config.h"
-+#endif
-+
-+#include <gtk/gtk.h>
-+#include <gcr/gcr-base.h>
-+
-+#include <string.h>
-+
-+#include "assuan.h"
-+
-+#include "memory.h"
-+
-+#include "pinentry.h"
-+
-+#ifdef FALLBACK_CURSES
-+#include "pinentry-curses.h"
-+#endif
-+
-+
-+#define PGMNAME "pinentry-gnome3"
-+
-+#ifndef VERSION
-+# define VERSION
-+#endif
-+
-+static gchar *
-+pinentry_utf8_validate (gchar *text)
-+{
-+ gchar *result;
-+
-+ if (!text)
-+ return NULL;
-+
-+ if (g_utf8_validate (text, -1, NULL))
-+ return g_strdup (text);
-+
-+ /* Failure: Assume that it was encoded in the current locale and
-+ convert it to utf-8. */
-+ result = g_locale_to_utf8 (text, -1, NULL, NULL, NULL);
-+ if (!result)
-+ {
-+ gchar *p;
-+
-+ result = p = g_strdup (text);
-+ while (!g_utf8_validate (p, -1, (const gchar **) &p))
-+ *p = '?';
-+ }
-+ return result;
-+}
-+
-+static GcrPrompt *
-+create_prompt (pinentry_t pe, int confirm)
-+{
-+ GcrPrompt *prompt;
-+ GError *error = NULL;
-+ char *msg;
-+
-+ /* Create the prompt. */
-+ prompt = GCR_PROMPT (gcr_system_prompt_open (-1, NULL, &error));
-+ if (! prompt)
-+ {
-+ g_warning ("couldn't create prompt for gnupg passphrase: %s",
-+ error->message);
-+ g_error_free (error);
-+ return NULL;
-+ }
-+
-+ /* Set the messages for the various buttons, etc. */
-+ if (pe->title)
-+ {
-+ msg = pinentry_utf8_validate (pe->title);
-+ gcr_prompt_set_title (prompt, msg);
-+ g_free (msg);
-+ }
-+
-+ if (pe->description)
-+ {
-+ msg = pinentry_utf8_validate (pe->description);
-+ gcr_prompt_set_description (prompt, msg);
-+ g_free (msg);
-+ }
-+
-+ /* An error occured during the last prompt. */
-+ if (pe->error)
-+ {
-+ msg = pinentry_utf8_validate (pe->error);
-+ gcr_prompt_set_warning (prompt, msg);
-+ g_free (msg);
-+ }
-+
-+ if (! pe->prompt && confirm)
-+ gcr_prompt_set_message (prompt, "Message");
-+ else if (! pe->prompt && ! confirm)
-+ gcr_prompt_set_message (prompt, "Enter Passphrase");
-+ else
-+ {
-+ msg = pinentry_utf8_validate (pe->prompt);
-+ gcr_prompt_set_message (prompt, msg);
-+ g_free (msg);
-+ }
-+
-+ if (! confirm)
-+ gcr_prompt_set_password_new (prompt, !!pe->repeat_passphrase);
-+
-+ if (pe->ok || pe->default_ok)
-+ {
-+ msg = pinentry_utf8_validate (pe->ok ?: pe->default_ok);
-+ gcr_prompt_set_continue_label (prompt, msg);
-+ g_free (msg);
-+ }
-+ /* XXX: Disable this button if pe->one_button is set. */
-+ if (pe->cancel || pe->default_cancel)
-+ {
-+ msg = pinentry_utf8_validate (pe->cancel ?: pe->default_cancel);
-+ gcr_prompt_set_cancel_label (prompt, msg);
-+ g_free (msg);
-+ }
-+
-+ if (confirm && pe->notok)
-+ {
-+ /* XXX: Add support for the third option. */
-+ }
-+
-+ /* XXX: gcr expects a string; we have a int. */
-+ // gcr_prompt_set_caller_window (prompt, pe->parent_wid);
-+
-+ if (! confirm && pe->allow_external_password_cache && pe->keyinfo)
-+ {
-+ if (pe->default_pwmngr)
-+ {
-+ msg = pinentry_utf8_validate (pe->default_pwmngr);
-+ gcr_prompt_set_choice_label (prompt, msg);
-+ g_free (msg);
-+ }
-+ else
-+ gcr_prompt_set_choice_label
-+ (prompt, "Automatically unlock this key, whenever I'm logged in");
-+ }
-+
-+ return prompt;
-+}
-+
-+static int
-+gnome3_cmd_handler (pinentry_t pe)
-+{
-+ GcrPrompt *prompt = NULL;
-+ GError *error = NULL;
-+ int ret = -1;
-+
-+ if (pe->pin)
-+ /* Passphrase mode. */
-+ {
-+ const char *password;
-+
-+ prompt = create_prompt (pe, 0);
-+ if (! prompt)
-+ /* Something went wrong. */
-+ {
-+ pe->canceled = 1;
-+ return -1;
-+ }
-+
-+ /* "The returned password is valid until the next time a method
-+ is called to display another prompt." */
-+ password = gcr_prompt_password_run (prompt, NULL, &error);
-+ if (error)
-+ /* Error. */
-+ {
-+ pe->specific_err = ASSUAN_General_Error;
-+ g_error_free (error);
-+ ret = -1;
-+ }
-+ else if (! password && ! error)
-+ /* User cancelled the operation. */
-+ ret = -1;
-+ else
-+ {
-+ pinentry_setbufferlen (pe, strlen (password) + 1);
-+ if (pe->pin)
-+ strcpy (pe->pin, password);
-+
-+ if (pe->repeat_passphrase)
-+ pe->repeat_okay = 1;
-+
-+ ret = 1;
-+ }
-+ }
-+ else
-+ /* Message box mode. */
-+ {
-+ GcrPromptReply reply;
-+
-+ prompt = create_prompt (pe, 1);
-+ if (! prompt)
-+ /* Something went wrong. */
-+ {
-+ pe->canceled = 1;
-+ return -1;
-+ }
-+
-+ /* XXX: We don't support a third button! */
-+
-+ reply = gcr_prompt_confirm_run (prompt, NULL, &error);
-+ if (error)
-+ {
-+ pe->specific_err = ASSUAN_General_Error;
-+ ret = 0;
-+ }
-+ else if (reply == GCR_PROMPT_REPLY_CONTINUE
-+ /* XXX: Hack since gcr doesn't yet support one button
-+ message boxes treat cancel the same as okay. */
-+ || pe->one_button)
-+ /* Confirmation. */
-+ ret = 1;
-+ else
-+ /* GCR_PROMPT_REPLY_CANCEL */
-+ {
-+ pe->canceled = 1;
-+ ret = 0;
-+ }
-+ }
-+
-+ if (prompt)
-+ g_clear_object (&prompt);
-+ return ret;
-+}
-+
-+pinentry_cmd_handler_t pinentry_cmd_handler = gnome3_cmd_handler;
-+
-+int
-+main (int argc, char *argv[])
-+{
-+ pinentry_init (PGMNAME);
-+
-+#ifdef FALLBACK_CURSES
-+ if (pinentry_have_display (argc, argv))
-+ gtk_init (&argc, &argv);
-+ else
-+ pinentry_cmd_handler = curses_cmd_handler;
-+#else
-+ gtk_init (&argc, &argv);
-+#endif
-+
-+ pinentry_parse_opts (argc, argv);
-+
-+ if (pinentry_loop ())
-+ return 1;
-+
-+ return 0;
-+}
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-handlers-return.patch b/app-crypt/pinentry/files/pinentry-0.9.2-handlers-return.patch
deleted file mode 100644
index 43a84d96c3b5..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-handlers-return.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 3062742b945f95d72001896f8ba5468b9e63aa9b Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Wed, 13 May 2015 14:20:23 +0200
-Subject: [PATCH 1/1] Don't interpret the handler's return value as the
- passphrase's length.
-
-* pinentry/pinentry.c (cmd_getpin): Don't interpret the return value
-as the passphrase length. Use strlen instead.
----
- pinentry/pinentry.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index 53216fc..836ee14 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -1109,7 +1109,7 @@ cmd_getpin (ASSUAN_CONTEXT ctx, char *line)
- {
- if (pinentry.repeat_okay)
- assuan_write_status (ctx, "PIN_REPEATED", "");
-- result = assuan_send_data (ctx, pinentry.pin, result);
-+ result = assuan_send_data (ctx, pinentry.pin, strlen(pinentry.pin));
- if (!result)
- result = assuan_send_data (ctx, NULL, 0);
-
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-linking-order.patch b/app-crypt/pinentry/files/pinentry-0.9.2-linking-order.patch
deleted file mode 100644
index 2006a8ccc610..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-linking-order.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From 496235af8dfd373b54e5610f86bf1cada175ac23 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Wed, 13 May 2015 21:47:11 +0200
-Subject: [PATCH 1/1] Fix linking order to work when linked with --as-needed.
-
-* curses/Makefile.am (LDADD): Add $(COMMON_LIBS) after all of the
-local objects and object archives.
-* gnome3/Makefile.am (LDADD): Likewise.
-* gtk+-2/Makefile.am (LDADD): Likewise.
-* qt4/Makefile.am (pinentry_qt4_LDADD): Likewise.
-* tty/Makefile.am (LDADD): Likewise.
-
-Reported-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
----
- curses/Makefile.am | 5 ++---
- gnome3/Makefile.am | 5 ++---
- gtk+-2/Makefile.am | 5 ++---
- qt4/Makefile.am | 6 +++---
- tty/Makefile.am | 4 ++--
- 5 files changed, 11 insertions(+), 14 deletions(-)
-
-diff --git a/curses/Makefile.am b/curses/Makefile.am
-index e8ea031..4d764c7 100644
---- a/curses/Makefile.am
-+++ b/curses/Makefile.am
-@@ -22,9 +22,8 @@
- bin_PROGRAMS = pinentry-curses
-
- AM_CPPFLAGS = $(COMMON_CFLAGS) $(NCURSES_INCLUDE) -I$(top_srcdir)/pinentry
--LDADD = $(COMMON_LIBS) \
-- ../pinentry/libpinentry.a ../pinentry/libpinentry-curses.a \
-+LDADD = ../pinentry/libpinentry.a ../pinentry/libpinentry-curses.a \
- ../assuan/libassuan.a ../secmem/libsecmem.a \
-- $(LIBCAP) $(LIBCURSES) $(LIBICONV)
-+ $(COMMON_LIBS) $(LIBCAP) $(LIBCURSES) $(LIBICONV)
-
- pinentry_curses_SOURCES = pinentry-curses.c
-diff --git a/gnome3/Makefile.am b/gnome3/Makefile.am
-index 78df706..46639de 100644
---- a/gnome3/Makefile.am
-+++ b/gnome3/Makefile.am
-@@ -32,8 +32,7 @@ endif
- AM_CPPFLAGS = $(COMMON_CFLAGS) $(GNOME3CFLAGS) \
- $(ncurses_include) -I$(top_srcdir)/assuan \
- -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry
--LDADD = $(COMMON_LIBS) \
-- ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
-- $(LIBCAP) $(GNOME3LIBS) $(libcurses)
-+LDADD = ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
-+ $(COMMON_LIBS) $(LIBCAP) $(GNOME3LIBS) $(libcurses)
-
- pinentry_gnome3_SOURCES = pinentry-gnome3.c
-diff --git a/gtk+-2/Makefile.am b/gtk+-2/Makefile.am
-index c98139f..7e37469 100644
---- a/gtk+-2/Makefile.am
-+++ b/gtk+-2/Makefile.am
-@@ -31,9 +31,8 @@ endif
-
- AM_CPPFLAGS = $(COMMON_CFLAGS) $(GTK2CFLAGS) $(ncurses_include) \
- -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry
--LDADD = $(COMMON_LIBS) \
-- ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
-- $(LIBCAP) $(GTK2LIBS) $(libcurses)
-+LDADD = ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
-+ $(COMMON_LIBS) $(LIBCAP) $(GTK2LIBS) $(libcurses)
-
- pinentry_gtk_2_SOURCES = pinentry-gtk-2.c \
- gtksecentry.c gtksecentry.h gseal-gtk-compat.h
-diff --git a/qt4/Makefile.am b/qt4/Makefile.am
-index 31274bb..816aade 100644
---- a/qt4/Makefile.am
-+++ b/qt4/Makefile.am
-@@ -38,10 +38,10 @@ AM_CPPFLAGS = $(COMMON_CFLAGS) \
- -I$(top_srcdir) -I$(top_srcdir)/assuan -I$(top_srcdir)/secmem \
- $(ncurses_include) -I$(top_srcdir)/pinentry
- AM_CXXFLAGS = $(QT4_CORE_CFLAGS) $(QT4_GUI_CFLAGS)
--pinentry_qt4_LDADD = $(COMMON_LIBS) \
-- $(QT4_CORE_LIBS) $(QT4_GUI_LIBS) $(libcurses) \
-+pinentry_qt4_LDADD = \
- ../pinentry/libpinentry.a $(top_builddir)/assuan/libassuan.a \
-- $(top_builddir)/secmem/libsecmem.a $(LIBCAP)
-+ $(top_builddir)/secmem/libsecmem.a \
-+ $(COMMON_LIBS) $(QT4_CORE_LIBS) $(QT4_GUI_LIBS) $(libcurses) $(LIBCAP)
-
- BUILT_SOURCES = \
- pinentryconfirm.moc qsecurelineedit.moc pinentrydialog.moc
-diff --git a/tty/Makefile.am b/tty/Makefile.am
-index 798c08f..aa805b2 100644
---- a/tty/Makefile.am
-+++ b/tty/Makefile.am
-@@ -21,8 +21,8 @@
- bin_PROGRAMS = pinentry-tty
-
- AM_CPPFLAGS = $(COMMON_CFLAGS) -I$(top_srcdir)/pinentry
--LDADD = $(COMMON_LIBS) ../pinentry/libpinentry.a \
-+LDADD = ../pinentry/libpinentry.a \
- ../assuan/libassuan.a ../secmem/libsecmem.a \
-- $(LIBCAP) $(LIBICONV)
-+ $(COMMON_LIBS) $(LIBCAP) $(LIBICONV)
-
- pinentry_tty_SOURCES = pinentry-tty.c
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-management.patch b/app-crypt/pinentry/files/pinentry-0.9.2-management.patch
deleted file mode 100644
index 04b2bafe4650..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-management.patch
+++ /dev/null
@@ -1,136 +0,0 @@
-From bdd81974633f8e31d582b62999ef9b004bc3b95e Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Wed, 13 May 2015 13:52:03 +0200
-Subject: [PATCH 1/1] Make the management of pinentry.pin more explicit.
-
-* pinentry/pinentry.c: Include <assert.h>.
-(pinentry): Set pin_len to 0.
-(pinentry_setbufferlen): If len is less than 2048, set it to 2048.
-Add an assertion.
-(pinentry_setbuffer_clear): New function that releases the pin buffer.
-(pinentry_setbuffer_init): New function that initializes the pin
-buffer.
-(cmd_getpin): Use pinentry_setbuffer_init and pinentry_setbuffer_clear
-instead of manual memory management.
-(cmd_confirm): Use pinentry_setbuffer_clear instead of manual memory
-management.
----
- pinentry/pinentry.c | 52 +++++++++++++++++++++++++++++++++++++++-------------
- 1 file changed, 39 insertions(+), 13 deletions(-)
-
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index 3a44851..53216fc 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -27,6 +27,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
-+#include <assert.h>
- #ifndef HAVE_W32CE_SYSTEM
- # include <locale.h>
- #endif
-@@ -67,7 +68,7 @@ struct pinentry pinentry =
- NULL, /* Not-Ok button. */
- NULL, /* Cancel button. */
- NULL, /* PIN. */
-- 2048, /* PIN length. */
-+ 0, /* PIN length. */
- 0, /* pin_from_cache. */
- 0, /* Display. */
- 0, /* TTY name. */
-@@ -354,8 +355,18 @@ char *
- pinentry_setbufferlen (pinentry_t pin, int len)
- {
- char *newp;
-- if (len < pinentry.pin_len)
-+
-+ if (pin->pin_len)
-+ assert (pin->pin);
-+ else
-+ assert (!pin->pin);
-+
-+ if (len < 2048)
-+ len = 2048;
-+
-+ if (len <= pin->pin_len)
- return NULL;
-+
- newp = secmem_realloc (pin->pin, len);
- if (newp)
- {
-@@ -371,6 +382,28 @@ pinentry_setbufferlen (pinentry_t pin, int len)
- return newp;
- }
-
-+static void
-+pinentry_setbuffer_clear (pinentry_t pin)
-+{
-+ if (! pin->pin)
-+ {
-+ assert (pin->pin_len == 0);
-+ return;
-+ }
-+
-+ assert (pin->pin_len > 0);
-+
-+ secmem_free (pin->pin);
-+ pin->pin = NULL;
-+ pin->pin_len = 0;
-+}
-+
-+static void
-+pinentry_setbuffer_init (pinentry_t pin)
-+{
-+ pinentry_setbuffer_clear (pin);
-+ pinentry_setbufferlen (pin, 0);
-+}
-
- /* Initialize the secure memory subsystem, drop privileges and return.
- Must be called early. */
-@@ -983,7 +1016,7 @@ cmd_getpin (ASSUAN_CONTEXT ctx, char *line)
- int set_prompt = 0;
- int just_read_password_from_cache = 0;
-
-- pinentry.pin = secmem_malloc (pinentry.pin_len);
-+ pinentry_setbuffer_init (&pinentry);
- if (!pinentry.pin)
- return ASSUAN_Out_Of_Core;
-
-@@ -1065,11 +1098,7 @@ cmd_getpin (ASSUAN_CONTEXT ctx, char *line)
-
- if (result < 0)
- {
-- if (pinentry.pin)
-- {
-- secmem_free (pinentry.pin);
-- pinentry.pin = NULL;
-- }
-+ pinentry_setbuffer_clear (&pinentry);
- if (pinentry.specific_err)
- return pinentry.specific_err;
- return pinentry.locale_err? ASSUAN_Locale_Problem: ASSUAN_Canceled;
-@@ -1094,11 +1123,7 @@ cmd_getpin (ASSUAN_CONTEXT ctx, char *line)
- password_cache_save (pinentry.keyinfo, pinentry.pin);
- }
-
-- if (pinentry.pin)
-- {
-- secmem_free (pinentry.pin);
-- pinentry.pin = NULL;
-- }
-+ pinentry_setbuffer_clear (&pinentry);
-
- return result;
- }
-@@ -1122,6 +1147,7 @@ cmd_confirm (ASSUAN_CONTEXT ctx, char *line)
- pinentry.locale_err = 0;
- pinentry.specific_err = 0;
- pinentry.canceled = 0;
-+ pinentry_setbuffer_clear (&pinentry);
- result = (*pinentry_cmd_handler) (&pinentry);
- if (pinentry.error)
- {
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-memory.patch b/app-crypt/pinentry/files/pinentry-0.9.2-memory.patch
deleted file mode 100644
index 08cb274c0ce6..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-memory.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From aa04dac66f2ee949e8789a3c91090b01646f2e57 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Mon, 11 May 2015 16:14:18 +0200
-Subject: [PATCH] Fix memory allocation in pinentry_setbufferlen.
-
-* pinentry/pinentry.c (pinentry_setbufferlen): Set PIN->PIN to a
-buffer that is LEN bytes large, not 2 * PIN->PIN_LENGTH.
----
- pinentry/pinentry.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index 51c873c..f28c576 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -356,11 +356,11 @@ pinentry_setbufferlen (pinentry_t pin, int len)
- char *newp;
- if (len < pinentry.pin_len)
- return NULL;
-- newp = secmem_realloc (pin->pin, 2 * pin->pin_len);
-+ newp = secmem_realloc (pin->pin, len);
- if (newp)
- {
- pin->pin = newp;
-- pin->pin_len *= 2;
-+ pin->pin_len = len;
- }
- else
- {
---
-2.1.4
-
diff --git a/app-crypt/pinentry/files/pinentry-0.9.2-simplify.patch b/app-crypt/pinentry/files/pinentry-0.9.2-simplify.patch
deleted file mode 100644
index 8249849bce13..000000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.2-simplify.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 831782b3b625ca81624fae0ee184da0d2fc46d96 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@gnu.org>
-Date: Mon, 11 May 2015 16:35:12 +0200
-Subject: [PATCH 1/1] Simplify code.
-
-* pinentry/pinentry.c (cmd_confirm): Don't use nested ternary
-expressions.
----
- pinentry/pinentry.c | 23 +++++++++++++++--------
- 1 file changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index 11a8027..3a44851 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -1132,14 +1132,21 @@ cmd_confirm (ASSUAN_CONTEXT ctx, char *line)
- if (pinentry.close_button)
- assuan_write_status (ctx, "BUTTON_INFO", "close");
-
-- return result ? 0
-- : (pinentry.specific_err? pinentry.specific_err :
-- pinentry.locale_err? ASSUAN_Locale_Problem
-- : (pinentry.one_button
-- ? 0
-- : (pinentry.canceled
-- ? ASSUAN_Canceled
-- : ASSUAN_Not_Confirmed)));
-+ if (result)
-+ return 0;
-+
-+ if (pinentry.specific_err)
-+ return pinentry.specific_err;
-+
-+ if (pinentry.locale_err)
-+ return ASSUAN_Locale_Problem;
-+
-+ if (pinentry.one_button)
-+ return 0;
-+
-+ if (pinentry.canceled)
-+ return ASSUAN_Canceled;
-+ return ASSUAN_Not_Confirmed;
- }
-
-
---
-2.1.4
-