aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2011-08-10 09:47:04 +0000
committerWerner Koch <[email protected]>2011-08-10 09:47:04 +0000
commit81389383a3169fe5130162dbb4cbc4bb0e806c3a (patch)
treef49d4a8904a4f2d7ea889c00cfb96041b27cf6f2
parentAdjust for signed integer passed to OpenPGP card decrypt. (diff)
downloadgnupg-81389383a3169fe5130162dbb4cbc4bb0e806c3a.tar.gz
gnupg-81389383a3169fe5130162dbb4cbc4bb0e806c3a.zip
Made the KILLAGENT and KILLSCD commands working again.
This requires that GnuPG is build with a newer version of Libassuan (2.0.3).
Diffstat (limited to '')
-rw-r--r--NEWS2
-rw-r--r--agent/command.c5
-rw-r--r--scd/ChangeLog5
-rw-r--r--scd/command.c8
4 files changed, 20 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index ed37e3b40..08d6bfe6b 100644
--- a/NEWS
+++ b/NEWS
@@ -7,6 +7,8 @@ Noteworthy changes in version 2.1.0beta3
* Support the SSH confirm flag.
+ * The Assuan commands KILLAGENT and KILLSCD are working again.
+
Noteworthy changes in version 2.1.0beta2 (2011-03-08)
-----------------------------------------------------
diff --git a/agent/command.c b/agent/command.c
index b03c786c1..4fbbfb56f 100644
--- a/agent/command.c
+++ b/agent/command.c
@@ -2259,7 +2259,12 @@ cmd_killagent (assuan_context_t ctx, char *line)
return set_error (GPG_ERR_NOT_SUPPORTED, "no --use-standard-socket");
ctrl->server_local->stopme = 1;
+#ifdef ASSUAN_FORCE_CLOSE
+ assuan_set_flag (ctx, ASSUAN_FORCE_CLOSE, 1);
+ return 0;
+#else
return gpg_error (GPG_ERR_EOF);
+#endif
}
diff --git a/scd/ChangeLog b/scd/ChangeLog
index 4f2d2f258..45c9c7c0c 100644
--- a/scd/ChangeLog
+++ b/scd/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-10 Werner Koch <[email protected]>
+
+ * command.c (cmd_killscd): Use the new assuan force close flag
+ if available.
+
2011-08-08 Werner Koch <[email protected]>
* app-openpgp.c (do_decipher): Take care of accidentally passed
diff --git a/scd/command.c b/scd/command.c
index a579b24eb..9bb500523 100644
--- a/scd/command.c
+++ b/scd/command.c
@@ -1862,7 +1862,15 @@ cmd_killscd (assuan_context_t ctx, char *line)
(void)line;
ctrl->server_local->stopme = 1;
+#ifdef ASSUAN_FORCE_CLOSE
+ assuan_set_flag (ctx, ASSUAN_FORCE_CLOSE, 1);
+ return 0;
+#else
+ /* Actually returning an EOF does not anymore work with modern
+ Libassuan versions. However we keep that non working code until
+ we make a Libassuan with the force close flag a requirement. */
return gpg_error (GPG_ERR_EOF);
+#endif
}