aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gnupg.scm6
-rw-r--r--gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch142
3 files changed, 2 insertions, 147 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index f6d365847f..63d11b024b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -507,7 +507,6 @@ dist_patch_DATA = \
gnu/packages/patches/gmp-arm-asm-nothumb.patch \
gnu/packages/patches/gmp-faulty-test.patch \
gnu/packages/patches/gnucash-price-quotes-perl.patch \
- gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch \
gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch \
gnu/packages/patches/gobject-introspection-cc.patch \
gnu/packages/patches/gobject-introspection-girepository.patch \
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index b7c661257c..7bf6566be9 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -208,16 +208,14 @@ compatible to GNU Pth.")
(define-public gnupg
(package
(name "gnupg")
- (version "2.1.11")
+ (version "2.1.12")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
".tar.bz2"))
(sha256
(base32
- "06mn2viiwsyq991arh5i5fhr9jyxq2bi0jkdj7ndfisxihngpc5p"))
- (patches (search-patches
- "gnupg-simple-query-ignore-status-messages.patch"))))
+ "01n5py45x0r97l4dzmd803jpbpbcxr1591k3k4s8m9804jfr4d5c"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch b/gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch
deleted file mode 100644
index 153f71c38f..0000000000
--- a/gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-Copied from upstream:
-http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commitdiff;h=acac103ba5772ae738ce5409d17feab80596cde6
-
-Fixes: https://debbugs.gnu.org/22558
-Upstream bug: https://bugs.gnupg.org/gnupg/issue2229
-
-From acac103ba5772ae738ce5409d17feab80596cde6 Mon Sep 17 00:00:00 2001
-From: "Neal H. Walfield" <neal@g10code.com>
-Date: Fri, 12 Feb 2016 22:12:21 +0100
-Subject: [PATCH] common: Change simple_query to ignore status messages.
-
-* common/simple-pwquery.c (simple_query): Ignore status messages.
-
---
-Signed-off-by: Neal H. Walfield <neal@g10code.com>
-GnuPG-bug-id: 2229
----
- common/simple-pwquery.c | 95 ++++++++++++++++++++++++++++++++++---------------
- 1 file changed, 67 insertions(+), 28 deletions(-)
-
-diff --git a/common/simple-pwquery.c b/common/simple-pwquery.c
-index 90d04c0..b2d666c 100644
---- a/common/simple-pwquery.c
-+++ b/common/simple-pwquery.c
-@@ -618,6 +618,7 @@ simple_query (const char *query)
- int fd = -1;
- int nread;
- char response[500];
-+ int have = 0;
- int rc;
-
- rc = agent_open (&fd);
-@@ -628,40 +629,78 @@ simple_query (const char *query)
- if (rc)
- goto leave;
-
-- /* get response */
-- nread = readline (fd, response, 499);
-- if (nread < 0)
-- {
-- rc = -nread;
-- goto leave;
-- }
-- if (nread < 3)
-+ while (1)
- {
-- rc = SPWQ_PROTOCOL_ERROR;
-- goto leave;
-- }
-+ if (! have || ! strchr (response, '\n'))
-+ /* get response */
-+ {
-+ nread = readline (fd, &response[have],
-+ sizeof (response) - 1 /* NUL */ - have);
-+ if (nread < 0)
-+ {
-+ rc = -nread;
-+ goto leave;
-+ }
-+ have += nread;
-+ if (have < 3)
-+ {
-+ rc = SPWQ_PROTOCOL_ERROR;
-+ goto leave;
-+ }
-+ response[have] = 0;
-+ }
-
-- if (response[0] == 'O' && response[1] == 'K')
-- /* OK, do nothing. */;
-- else if ((nread > 7 && !memcmp (response, "ERR 111", 7)
-- && (response[7] == ' ' || response[7] == '\n') )
-- || ((nread > 4 && !memcmp (response, "ERR ", 4)
-- && (strtoul (response+4, NULL, 0) & 0xffff) == 99)) )
-- {
-- /* 111 is the old Assuan code for canceled which might still
-- be in use by old installations. 99 is GPG_ERR_CANCELED as
-- used by modern gpg-agents; 0xffff is used to mask out the
-- error source. */
-+ if (response[0] == 'O' && response[1] == 'K')
-+ /* OK, do nothing. */;
-+ else if ((nread > 7 && !memcmp (response, "ERR 111", 7)
-+ && (response[7] == ' ' || response[7] == '\n') )
-+ || ((nread > 4 && !memcmp (response, "ERR ", 4)
-+ && (strtoul (response+4, NULL, 0) & 0xffff) == 99)) )
-+ {
-+ /* 111 is the old Assuan code for canceled which might still
-+ be in use by old installations. 99 is GPG_ERR_CANCELED as
-+ used by modern gpg-agents; 0xffff is used to mask out the
-+ error source. */
- #ifdef SPWQ_USE_LOGGING
-- log_info (_("canceled by user\n") );
-+ log_info (_("canceled by user\n") );
- #endif
-- }
-- else
-- {
-+ }
-+ else if (response[0] == 'S' && response[1] == ' ')
-+ {
-+ char *nextline;
-+ int consumed;
-+
-+ nextline = strchr (response, '\n');
-+ if (! nextline)
-+ /* Point to the NUL. */
-+ nextline = &response[have];
-+ else
-+ /* Move past the \n. */
-+ nextline ++;
-+
-+ consumed = (size_t) nextline - (size_t) response;
-+
-+ /* Skip any additional newlines. */
-+ while (consumed < have && response[consumed] == '\n')
-+ consumed ++;
-+
-+ have -= consumed;
-+
-+ if (have)
-+ memmove (response, &response[consumed], have + 1);
-+
-+ continue;
-+ }
-+ else
-+ {
- #ifdef SPWQ_USE_LOGGING
-- log_error (_("problem with the agent\n"));
-+ log_error (_("problem with the agent (unexpected response \"%s\"\n"),
-+ response);
- #endif
-- rc = SPWQ_ERR_RESPONSE;
-+ rc = SPWQ_ERR_RESPONSE;
-+ }
-+
-+ break;
- }
-
- leave:
---
-2.6.3
-