summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2021-02-09 16:00:24 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2021-02-09 16:00:24 +0900
commit7c0714a17893a9adad202982ad5b70f69f00b195 (patch)
treef5271889815ab9d162d1f4c2133010bc81eacdfe
parent5ce840383da7cf82ffa7dfaeda187f3fe3d591a7 (diff)
downloadgpg2-7c0714a17893a9adad202982ad5b70f69f00b195.tar.gz
gpg2-7c0714a17893a9adad202982ad5b70f69f00b195.tar.bz2
gpg2-7c0714a17893a9adad202982ad5b70f69f00b195.zip
Imported Upstream version 2.1.23upstream/2.1.23
-rw-r--r--Makefile.am2
-rw-r--r--NEWS42
-rw-r--r--README22
-rw-r--r--agent/gpg-agent.c18
-rw-r--r--artwork/icons/index.css59
-rw-r--r--artwork/icons/index.html46
-rw-r--r--artwork/icons/lock-12.pngbin0 -> 195 bytes
-rw-r--r--artwork/icons/lock-128.pngbin0 -> 743 bytes
-rw-r--r--artwork/icons/lock-16.pngbin0 -> 235 bytes
-rw-r--r--artwork/icons/lock-24.pngbin0 -> 273 bytes
-rw-r--r--artwork/icons/lock-256.pngbin0 -> 1294 bytes
-rw-r--r--artwork/icons/lock-32.pngbin0 -> 332 bytes
-rw-r--r--artwork/icons/lock-48.pngbin0 -> 414 bytes
-rw-r--r--artwork/icons/lock-64.pngbin0 -> 478 bytes
-rw-r--r--artwork/icons/lock-wing-12.pngbin0 -> 292 bytes
-rw-r--r--artwork/icons/lock-wing-128.pngbin0 -> 1349 bytes
-rw-r--r--artwork/icons/lock-wing-16.pngbin0 -> 324 bytes
-rw-r--r--artwork/icons/lock-wing-24.pngbin0 -> 441 bytes
-rw-r--r--artwork/icons/lock-wing-256.pngbin0 -> 2535 bytes
-rw-r--r--artwork/icons/lock-wing-32.pngbin0 -> 508 bytes
-rw-r--r--artwork/icons/lock-wing-48.pngbin0 -> 674 bytes
-rw-r--r--artwork/icons/lock-wing-64.pngbin0 -> 833 bytes
-rw-r--r--artwork/icons/lock-wing.svg1
-rw-r--r--artwork/icons/lock.svg1
-rw-r--r--artwork/icons/wing-12.pngbin0 -> 256 bytes
-rw-r--r--artwork/icons/wing-128.pngbin0 -> 1243 bytes
-rw-r--r--artwork/icons/wing-16.pngbin0 -> 295 bytes
-rw-r--r--artwork/icons/wing-24.pngbin0 -> 414 bytes
-rw-r--r--artwork/icons/wing-256.pngbin0 -> 2326 bytes
-rw-r--r--artwork/icons/wing-32.pngbin0 -> 478 bytes
-rw-r--r--artwork/icons/wing-48.pngbin0 -> 638 bytes
-rw-r--r--artwork/icons/wing-64.pngbin0 -> 755 bytes
-rw-r--r--artwork/icons/wing.svg1
-rw-r--r--build-aux/speedo.mk2
-rw-r--r--common/argparse.c15
-rw-r--r--configure.ac39
-rw-r--r--dirmngr/http.c6
-rw-r--r--doc/examples/systemd-user/dirmngr.service3
-rw-r--r--doc/examples/systemd-user/gpg-agent.service3
-rw-r--r--doc/gpg-agent.texi10
-rw-r--r--doc/gpg.texi31
-rw-r--r--doc/tools.texi10
-rw-r--r--g10/call-agent.c7
-rw-r--r--g10/call-dirmngr.c12
-rw-r--r--g10/getkey.c6
-rw-r--r--g10/gpg.c22
-rw-r--r--g10/import.c9
-rw-r--r--g10/keydb.h2
-rw-r--r--g10/options.h2
-rw-r--r--g10/pubkey-enc.c42
-rw-r--r--g10/revoke.c4
-rw-r--r--po/ca.po16
-rw-r--r--po/cs.po19
-rw-r--r--po/da.po19
-rw-r--r--po/de.po28
-rw-r--r--po/el.po16
-rw-r--r--po/eo.po16
-rw-r--r--po/es.po19
-rw-r--r--po/et.po16
-rw-r--r--po/fi.po16
-rw-r--r--po/fr.po19
-rw-r--r--po/gl.po16
-rw-r--r--po/hu.po16
-rw-r--r--po/id.po16
-rw-r--r--po/it.po16
-rw-r--r--po/ja.po82
-rw-r--r--po/nb.po19
-rw-r--r--po/pl.po19
-rw-r--r--po/pt.po16
-rw-r--r--po/ro.po16
-rw-r--r--po/ru.po15
-rw-r--r--po/sk.po16
-rw-r--r--po/sv.po19
-rw-r--r--po/tr.po19
-rw-r--r--po/uk.po19
-rw-r--r--po/zh_CN.po16
-rw-r--r--po/zh_TW.po19
-rw-r--r--sm/call-agent.c7
-rw-r--r--sm/call-dirmngr.c7
-rw-r--r--sm/decrypt.c19
-rw-r--r--sm/keylist.c14
-rw-r--r--tests/gpgscm/ffi.c16
-rw-r--r--tests/gpgscm/tests.scm2
-rw-r--r--tests/openpgp/all-tests.scm40
-rw-r--r--tests/openpgp/defs.scm2
-rw-r--r--tools/gpg-wks-client.c9
-rw-r--r--tools/gpgconf-comp.c11
-rw-r--r--tools/rfc822parse.c2
88 files changed, 729 insertions, 340 deletions
diff --git a/Makefile.am b/Makefile.am
index e31d67a..b972cff 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -20,7 +20,7 @@
ACLOCAL_AMFLAGS = -I m4
AM_DISTCHECK_CONFIGURE_FLAGS = --enable-gnupg-builddir-envvar \
- --enable-symcryptrun --enable-g13 \
+ --enable-all-tests --enable-symcryptrun --enable-g13 \
--enable-gpg2-is-gpg --enable-gpgtar --enable-wks-tools --disable-ntbtls
GITLOG_TO_CHANGELOG=gitlog-to-changelog
diff --git a/NEWS b/NEWS
index c859eb4..c3a7853 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,40 @@
+Noteworthy changes in version 2.1.23 (2017-08-09)
+-------------------------------------------------
+
+ * gpg: "gpg" is now installed as "gpg" and not anymore as "gpg2".
+ If needed, the new configure option --enable-gpg-is-gpg2 can be
+ used to revert this.
+
+ * gpg: Options --auto-key-retrieve and --auto-key-locate "local,wkd"
+ are now used by default. Note: this enables keyserver and Web Key
+ Directory operators to notice when a signature from a locally
+ non-available key is being verified for the first time or when
+ you intend to encrypt to a mail address without having the key
+ locally. This new behaviour will eventually make key discovery
+ much easier and mostly automatic. Disable this by adding
+ no-auto-key-retrieve
+ auto-key-locate local
+ to your gpg.conf.
+
+ * agent: Option --no-grab is now the default. The new option --grab
+ allows to revert this.
+
+ * gpg: New import option "show-only".
+
+ * gpg: New option --disable-dirmngr to entirely disable network
+ access for gpg.
+
+ * gpg,gpgsm: Tweaked DE-VS compliance behaviour.
+
+ * New configure flag --enable-all-tests to run more extensive tests
+ during "make check".
+
+ * gpgsm: The keygrip is now always printed in colon mode as
+ documented in the man page.
+
+ * Fixed connection timeout problem under Windows.
+
+
Noteworthy changes in version 2.1.22 (2017-07-28)
-------------------------------------------------
@@ -40,6 +77,8 @@ Noteworthy changes in version 2.1.22 (2017-07-28)
* Many other bug fixes.
+ See-also: gnupg-announce/2017q3/000411.html
+
Noteworthy changes in version 2.1.21 (2017-05-15)
-------------------------------------------------
@@ -63,6 +102,8 @@ Noteworthy changes in version 2.1.21 (2017-05-15)
* Many minor bug fixes and code cleanup.
+ See-also: gnupg-announce/2017q2/000405.html
+
Noteworthy changes in version 2.1.20 (2017-04-03)
-------------------------------------------------
@@ -108,6 +149,7 @@ Noteworthy changes in version 2.1.20 (2017-04-03)
* Fixed build problems on some platforms.
+ See-also: gnupg-announce/2017q2/000404.html
Noteworthy changes in version 2.1.19 (2017-03-01)
diff --git a/README b/README
index aaf347c..a9a3eb0 100644
--- a/README
+++ b/README
@@ -60,9 +60,12 @@
./configure
make
+ make check
make install
- (Before doing install you might need to become root.)
+ The "make check" is optional but highly recommended. To run even
+ more tests you may add "--enable-all-tests" to the configure run.
+ Before running the "make install" you might need to become root.
If everything succeeds, you have a working GnuPG with support for
OpenPGP, S/MIME, ssh-agent, and smartcards. Note that there is no
@@ -177,16 +180,15 @@
is at [[https://gnupg.org/documentation/manuals/gnupg-devel/]] .
-* GnuPG 1.4 and GnuPG 2.0
+* Installing GnuPG 2.2. and GnuPG 1.4
- GnuPG 2.0 is a newer version of GnuPG with additional support for
- S/MIME. It has a different design philosophy that splits
- functionality up into several modules. Both versions may be
- installed simultaneously without any conflict (gpg is called gpg2 in
- GnuPG 2). In fact, the gpg version from GnuPG 1.4 is able to make
- use of the gpg-agent as included in GnuPG 2 and allows for seamless
- passphrase caching. The advantage of GnuPG 1.4 is its smaller size
- and no dependency on other modules at run and build time.
+ GnuPG 2.2 is a current version of GnuPG with state of the art
+ security design and many more features. To install both versions
+ alongside, it is suggested to rename the 1.4 version of "gpg" to
+ "gpg1" as well as the corresponding man page. Newer releases of the
+ 1.4 branch will likely do this by default. In case this is not
+ possible, the 2.2 version can be installed under the name "gpg2"
+ using the configure option --enable-gpg-is-gpg2.
* HOW TO GET MORE INFORMATION
diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c
index 603f707..030d1da 100644
--- a/agent/gpg-agent.c
+++ b/agent/gpg-agent.c
@@ -83,6 +83,7 @@ enum cmd_and_opt_values
oNoOptions,
oHomedir,
oNoDetach,
+ oGrab,
oNoGrab,
oLogFile,
oServer,
@@ -169,7 +170,10 @@ static ARGPARSE_OPTS opts[] = {
ARGPARSE_s_n (oDebugPinentry, "debug-pinentry", "@"),
ARGPARSE_s_n (oNoDetach, "no-detach", N_("do not detach from the console")),
- ARGPARSE_s_n (oNoGrab, "no-grab", N_("do not grab keyboard and mouse")),
+ ARGPARSE_s_n (oGrab, "grab", "@"),
+ /* FIXME: Add the below string for 2.3 */
+ /* N_("let PIN-Entry grab keyboard and mouse")), */
+ ARGPARSE_s_n (oNoGrab, "no-grab", "@"),
ARGPARSE_s_s (oLogFile, "log-file", N_("use a log file for the server")),
ARGPARSE_s_s (oPinentryProgram, "pinentry-program",
/* */ N_("|PGM|use PGM as the PIN-Entry program")),
@@ -787,7 +791,7 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread)
opt.quiet = 0;
opt.verbose = 0;
opt.debug = 0;
- opt.no_grab = 0;
+ opt.no_grab = 1;
opt.debug_pinentry = 0;
opt.pinentry_program = NULL;
opt.pinentry_touch_file = NULL;
@@ -842,7 +846,8 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread)
}
break;
- case oNoGrab: opt.no_grab = 1; break;
+ case oNoGrab: opt.no_grab |= 1; break;
+ case oGrab: opt.no_grab |= 2; break;
case oPinentryProgram: opt.pinentry_program = pargs->r.ret_str; break;
case oPinentryTouchFile: opt.pinentry_touch_file = pargs->r.ret_str; break;
@@ -917,6 +922,9 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread)
static void
finalize_rereadable_options (void)
{
+ /* Hack to allow --grab to override --no-grab. */
+ if ((opt.no_grab & 2))
+ opt.no_grab = 0;
}
@@ -1406,6 +1414,8 @@ main (int argc, char **argv )
GC_OPT_FLAG_DEFAULT|GC_OPT_FLAG_RUNTIME);
es_printf ("enable-extended-key-format:%lu:\n",
GC_OPT_FLAG_NONE|GC_OPT_FLAG_RUNTIME);
+ es_printf ("grab:%lu:\n",
+ GC_OPT_FLAG_NONE|GC_OPT_FLAG_RUNTIME);
agent_exit (0);
}
@@ -2397,7 +2407,7 @@ agent_sigusr2_action (void)
#ifndef HAVE_W32_SYSTEM
/* The signal handler for this program. It is expected to be run in
- its own trhead and not in the context of a signal handler. */
+ its own thread and not in the context of a signal handler. */
static void
handle_signal (int signo)
{
diff --git a/artwork/icons/index.css b/artwork/icons/index.css
new file mode 100644
index 0000000..1010039
--- /dev/null
+++ b/artwork/icons/index.css
@@ -0,0 +1,59 @@
+body {
+ font-family: Sans-Serif;
+ color: #333;
+ background-color: #fcfcfc;
+}
+
+img {
+ padding-right: 0.1em;
+}
+
+/* Factor 0.72 */
+
+.fpr {
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+}
+
+.fpr12 {
+ font-size: 17px;
+}
+
+.fpr16 {
+ font-size: 22px;
+}
+
+.fpr24 {
+ font-size: 33px;
+}
+
+.fpr32 {
+ font-size: 44px;
+}
+
+.fpr48 {
+ font-size: 67px;
+}
+
+.fpr64 {
+ font-size: 89px;
+}
+
+.fpr128 {
+ font-size: 178px;
+}
+
+.fpr256 {
+ font-size: 356px;
+}
+
+.text {
+ column-count: 3;
+ column-gap: 40px;
+}
+
+h2 {
+ padding-top: 0px;
+ margin-top: 0px;
+}
diff --git a/artwork/icons/index.html b/artwork/icons/index.html
new file mode 100644
index 0000000..41b168c
--- /dev/null
+++ b/artwork/icons/index.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8">
+ <title>GnuPG Icon Test</title>
+ <link rel="stylesheet" type="text/css" href="index.css">
+ </head>
+ <body>
+ <h1>GnuPG Icon Test</h1>
+ <div class="text">
+ <div class="column">
+ <h2>lock-*.png</h2>
+ <span class="fpr fpr12"><img src="lock-12.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr16"><img src="lock-16.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr24"><img src="lock-24.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr32"><img src="lock-32.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr48"><img src="lock-48.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr64"><img src="lock-64.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr128"><img src="lock-128.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr256"><img src="lock-256.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ </div>
+ <div class="column">
+ <h2>lock-wing-*.png</h2>
+ <span class="fpr fpr12"><img src="lock-wing-12.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr16"><img src="lock-wing-16.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr24"><img src="lock-wing-24.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr32"><img src="lock-wing-32.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr48"><img src="lock-wing-48.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr64"><img src="lock-wing-64.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr128"><img src="lock-wing-128.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr256"><img src="lock-wing-256.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ </div>
+ <div class="column">
+ <h2>wing-*.png</h2>
+ <span class="fpr fpr12"><img src="wing-12.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr16"><img src="wing-16.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr24"><img src="wing-24.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr32"><img src="wing-32.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr48"><img src="wing-48.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr64"><img src="wing-64.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr128"><img src="wing-128.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ <span class="fpr fpr256"><img src="wing-256.png">D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6</span><br/>
+ </div>
+ </div>
+ </body>
+</html>
diff --git a/artwork/icons/lock-12.png b/artwork/icons/lock-12.png
new file mode 100644
index 0000000..cde80bc
--- /dev/null
+++ b/artwork/icons/lock-12.png
Binary files differ
diff --git a/artwork/icons/lock-128.png b/artwork/icons/lock-128.png
new file mode 100644
index 0000000..3f5e36e
--- /dev/null
+++ b/artwork/icons/lock-128.png
Binary files differ
diff --git a/artwork/icons/lock-16.png b/artwork/icons/lock-16.png
new file mode 100644
index 0000000..fbe9cbb
--- /dev/null
+++ b/artwork/icons/lock-16.png
Binary files differ
diff --git a/artwork/icons/lock-24.png b/artwork/icons/lock-24.png
new file mode 100644
index 0000000..a1939cf
--- /dev/null
+++ b/artwork/icons/lock-24.png
Binary files differ
diff --git a/artwork/icons/lock-256.png b/artwork/icons/lock-256.png
new file mode 100644
index 0000000..b8d7c25
--- /dev/null
+++ b/artwork/icons/lock-256.png
Binary files differ
diff --git a/artwork/icons/lock-32.png b/artwork/icons/lock-32.png
new file mode 100644
index 0000000..f0e0055
--- /dev/null
+++ b/artwork/icons/lock-32.png
Binary files differ
diff --git a/artwork/icons/lock-48.png b/artwork/icons/lock-48.png
new file mode 100644
index 0000000..db57d87
--- /dev/null
+++ b/artwork/icons/lock-48.png
Binary files differ
diff --git a/artwork/icons/lock-64.png b/artwork/icons/lock-64.png
new file mode 100644
index 0000000..c5162d8
--- /dev/null
+++ b/artwork/icons/lock-64.png
Binary files differ
diff --git a/artwork/icons/lock-wing-12.png b/artwork/icons/lock-wing-12.png
new file mode 100644
index 0000000..bd35866
--- /dev/null
+++ b/artwork/icons/lock-wing-12.png
Binary files differ
diff --git a/artwork/icons/lock-wing-128.png b/artwork/icons/lock-wing-128.png
new file mode 100644
index 0000000..2308af6
--- /dev/null
+++ b/artwork/icons/lock-wing-128.png
Binary files differ
diff --git a/artwork/icons/lock-wing-16.png b/artwork/icons/lock-wing-16.png
new file mode 100644
index 0000000..8e9f295
--- /dev/null
+++ b/artwork/icons/lock-wing-16.png
Binary files differ
diff --git a/artwork/icons/lock-wing-24.png b/artwork/icons/lock-wing-24.png
new file mode 100644
index 0000000..9fa4668
--- /dev/null
+++ b/artwork/icons/lock-wing-24.png
Binary files differ
diff --git a/artwork/icons/lock-wing-256.png b/artwork/icons/lock-wing-256.png
new file mode 100644
index 0000000..924d31c
--- /dev/null
+++ b/artwork/icons/lock-wing-256.png
Binary files differ
diff --git a/artwork/icons/lock-wing-32.png b/artwork/icons/lock-wing-32.png
new file mode 100644
index 0000000..3fa3c97
--- /dev/null
+++ b/artwork/icons/lock-wing-32.png
Binary files differ
diff --git a/artwork/icons/lock-wing-48.png b/artwork/icons/lock-wing-48.png
new file mode 100644
index 0000000..9728e78
--- /dev/null
+++ b/artwork/icons/lock-wing-48.png
Binary files differ
diff --git a/artwork/icons/lock-wing-64.png b/artwork/icons/lock-wing-64.png
new file mode 100644
index 0000000..ee9dcff
--- /dev/null
+++ b/artwork/icons/lock-wing-64.png
Binary files differ
diff --git a/artwork/icons/lock-wing.svg b/artwork/icons/lock-wing.svg
new file mode 100644
index 0000000..7380167
--- /dev/null
+++ b/artwork/icons/lock-wing.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="243" height="256" viewBox="0 0 243 256"><g transform="translate(0 -142.26666)"><path class="fil0" d="m24.2 266h13.6v-40.8c0-45.8 37.1-82.9 82.9-82.9 45.8 0 82.9 37.1 82.9 82.9v40.4c-0.2 0.1-0.4 0.3-0.6 0.4h0l-0.1 0.1 0 0 0 0 0 0-0.1 0.1 0 0 0 0 0 0 0 0 0 0 0 0-0.1 0 0 0 0 0 0 0-0.1 0.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0-0.1 0.1-0.1 0 0 0 0 0 0 0-0.1 0 0 0-0.1 0 0 0 0 0 0 0 0 0 0 0-0.2 0.2-0.1 0 0 0 0 0 0 0-0.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-0.2 0.1 0 0-0.1 0 0 0-0.1 0.1 0 0 0 0 0 0 0 0-0.1 0.1 0 0 0 0 0 0 0 0 0 0-0.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-0.1 0.1-0.1 0.1-0.1 0.1-0.1 0.1 0 0-0.3 0.2 0 0-0.2 0.1-0.3 0.2-0.2 0.1-0.2 0.1-0.3 0.2-0.2 0.1-0.1 0.1 0 0 0 0-0.3 0.2-0.2 0.1-0.5 0.3-0.2 0.1-0.2 0.1 0 0-0.2 0.1 0 0-0.1 0 0 0-0.6 0.3 0 0-0.1 0-0.1 0c-0.2 0.1-0.4 0.2-0.7 0.4l-0.1 0-0.1 0.1-0.3 0.2-0.2 0.1 0 0-0.3 0.2 0 0-0.2 0.1-0.1 0-0.3 0.2-0.2 0.1-0.2 0.1c-0.2 0.1-0.5 0.2-0.7 0.3l-0.2 0.1 0 0-0.2 0.1-0.4 0.2-0.4 0.2-0.5 0.2-0.5 0.2 0 0-0.2 0.1 0 0-0.4 0.2-0.2 0.1 0 0v0c-16.5 7.9-42.9 16.2-93 19.8-35.9 2.6-57.7 18.4-71.8 37.4zm51.7 0h89.4v-40.8c0-24.7-20-44.7-44.7-44.7-24.7 0-44.7 20-44.7 44.7zM217.1 281.6V398.6H52c18.2-10.1 31.7-9.1 54.2-8.4 30.6 1 64.4-11.8 81-28.8 16.6-17-1.5-4-20.3 0.8-18.8 4.8-55.2 5.3-79.6-1.1 76.6 1 106.5-23.7 123.4-46 16.9-22.2-7.3-3.9-23 3.8-15.7 7.7-43.1 13.1-73.3 9.1 45.6-0.1 80.3-22.9 102.6-46.4z" style="fill:#0093dd;stroke-width:6"/></g></svg>
diff --git a/artwork/icons/lock.svg b/artwork/icons/lock.svg
new file mode 100644
index 0000000..00670aa
--- /dev/null
+++ b/artwork/icons/lock.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="243" height="256" viewBox="0 0 243 256"><g transform="translate(0 -142.26666)"><g transform="matrix(6.98915 0 0 6.98915 -82.447767 -238.10999)"><rect class="fil0" x="15.3" y="72.1" width="27.5" height="18.9" style="fill:#0093dd"/><path class="fil0" d="m40.9 73.2v-6.9c0-6.5-5.3-11.8-11.8-11.8-6.5 0-11.8 5.3-11.8 11.8v6.9h5.4v-6.9c0-3.5 2.9-6.4 6.4-6.4 3.5 0 6.4 2.9 6.4 6.4v6.9z" style="fill:#0093dd"/></g></g></svg>
diff --git a/artwork/icons/wing-12.png b/artwork/icons/wing-12.png
new file mode 100644
index 0000000..d02e331
--- /dev/null
+++ b/artwork/icons/wing-12.png
Binary files differ
diff --git a/artwork/icons/wing-128.png b/artwork/icons/wing-128.png
new file mode 100644
index 0000000..0083380
--- /dev/null
+++ b/artwork/icons/wing-128.png
Binary files differ
diff --git a/artwork/icons/wing-16.png b/artwork/icons/wing-16.png
new file mode 100644
index 0000000..990f2e7
--- /dev/null
+++ b/artwork/icons/wing-16.png
Binary files differ
diff --git a/artwork/icons/wing-24.png b/artwork/icons/wing-24.png
new file mode 100644
index 0000000..2c70dd5
--- /dev/null
+++ b/artwork/icons/wing-24.png
Binary files differ
diff --git a/artwork/icons/wing-256.png b/artwork/icons/wing-256.png
new file mode 100644
index 0000000..c44ddda
--- /dev/null
+++ b/artwork/icons/wing-256.png
Binary files differ
diff --git a/artwork/icons/wing-32.png b/artwork/icons/wing-32.png
new file mode 100644
index 0000000..50f61d9
--- /dev/null
+++ b/artwork/icons/wing-32.png
Binary files differ
diff --git a/artwork/icons/wing-48.png b/artwork/icons/wing-48.png
new file mode 100644
index 0000000..2fd4672
--- /dev/null
+++ b/artwork/icons/wing-48.png
Binary files differ
diff --git a/artwork/icons/wing-64.png b/artwork/icons/wing-64.png
new file mode 100644
index 0000000..0f21031
--- /dev/null
+++ b/artwork/icons/wing-64.png
Binary files differ
diff --git a/artwork/icons/wing.svg b/artwork/icons/wing.svg
new file mode 100644
index 0000000..74213fc
--- /dev/null
+++ b/artwork/icons/wing.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="243" height="256" viewBox="0 0 243 256"><g transform="matrix(0.80225518,0,0,1,-0.01977448,-142.26666)"><path d="M 27.5,397.9 -0.1,341.4 C 11.3,295 30.7,229.7 93.5,223.2 c 62.8,-6.5 88.2,-23.9 103.6,-37.1 15.4,-13.2 54.9,-69.9 41.4,-29.5 -13.5,40.3 -57.6,116.2 -126.7,116.4 30.1,5.8 57.4,-2.1 73.1,-13.2 15.7,-11.1 39.9,-37.6 23,-5.5 -16.9,32.1 -46.6,67.9 -123.1,66.4 24.3,9.2 60.6,8.5 79.4,1.6 18.8,-6.9 36.8,-25.6 20.3,-1.1 -16.6,24.5 -50.3,43 -80.8,41.6 -30.5,-1.4 -44.5,-3.7 -76.2,35.1 z" style="fill:#0093dd;stroke-width:6" /></g></svg>
diff --git a/build-aux/speedo.mk b/build-aux/speedo.mk
index 76f712f..f1ec653 100644
--- a/build-aux/speedo.mk
+++ b/build-aux/speedo.mk
@@ -476,7 +476,7 @@ speedo_pkg_ntbtls_configure = --enable-static --disable-shared
ifeq ($(TARGETOS),w32)
speedo_pkg_gnupg_configure = \
- --enable-gpg2-is-gpg --disable-g13 --enable-ntbtls \
+ --disable-g13 --enable-ntbtls \
--enable-build-timestamp
else
speedo_pkg_gnupg_configure = --disable-g13
diff --git a/common/argparse.c b/common/argparse.c
index 590e6e9..f5e4ceb 100644
--- a/common/argparse.c
+++ b/common/argparse.c
@@ -918,11 +918,16 @@ arg_parse( ARGPARSE_ARGS *arg, ARGPARSE_OPTS *opts)
char *s, *s2;
int i;
- /* Fill in missing standard options: help, version, warranty and dump-options. */
- ARGPARSE_OPTS help_opt = ARGPARSE_s_n(ARGPARSE_SHORTOPT_HELP, "help", "@");
- ARGPARSE_OPTS version_opt = ARGPARSE_s_n(ARGPARSE_SHORTOPT_VERSION, "version", "@");
- ARGPARSE_OPTS warranty_opt = ARGPARSE_s_n(ARGPARSE_SHORTOPT_WARRANTY, "warranty", "@");
- ARGPARSE_OPTS dump_options_opt = ARGPARSE_s_n(ARGPARSE_SHORTOPT_DUMP_OPTIONS, "dump-options", "@");
+ /* Fill in missing standard options: help, version, warranty and
+ * dump-options. */
+ ARGPARSE_OPTS help_opt
+ = ARGPARSE_s_n (ARGPARSE_SHORTOPT_HELP, "help", "@");
+ ARGPARSE_OPTS version_opt
+ = ARGPARSE_s_n (ARGPARSE_SHORTOPT_VERSION, "version", "@");
+ ARGPARSE_OPTS warranty_opt
+ = ARGPARSE_s_n (ARGPARSE_SHORTOPT_WARRANTY, "warranty", "@");
+ ARGPARSE_OPTS dump_options_opt
+ = ARGPARSE_s_n(ARGPARSE_SHORTOPT_DUMP_OPTIONS, "dump-options", "@");
int seen_help = 0;
int seen_version = 0;
int seen_warranty = 0;
diff --git a/configure.ac b/configure.ac
index 764a62d..3ff5865 100644
--- a/configure.ac
+++ b/configure.ac
@@ -28,7 +28,7 @@ min_automake_version="1.14"
m4_define([mym4_package],[gnupg])
m4_define([mym4_major], [2])
m4_define([mym4_minor], [1])
-m4_define([mym4_micro], [22])
+m4_define([mym4_micro], [23])
# To start a new development series, i.e a new major or minor number
# you need to mark an arbitrary commit before the first beta release
@@ -208,20 +208,18 @@ show_gnupg_dirmngr_ldap_pgm="(default)"
test -n "$GNUPG_DIRMNGR_LDAP_PGM" \
&& show_gnupg_dirmngr_ldap_pgm="$GNUPG_DIRMNGR_LDAP_PGM"
+
#
-# On some platforms gpg2 is usually installed as gpg without using a
-# symlink. For correct operation of gpgconf it needs to know the
-# installed name of gpg. This option sets "gpg2"'s installed name to
-# just "gpg". Note that it might be required to rename gpg2 to gpg
-# manually after the build process.
+# For a long time gpg 2.x was installed as gpg2. This changed with
+# 2.2. This option can be used to install gpg under the name gpg2.
#
-AC_ARG_ENABLE(gpg2-is-gpg,
- AC_HELP_STRING([--enable-gpg2-is-gpg],[Set installed name of gpg2 to gpg]),
- gpg2_is_gpg=$enableval)
-if test "$gpg2_is_gpg" != "yes"; then
+AC_ARG_ENABLE(gpg-is-gpg2,
+ AC_HELP_STRING([--enable-gpg-is-gpg2],[Set installed name of gpg to gpg2]),
+ gpg_is_gpg2=$enableval)
+if test "$gpg_is_gpg2" = "yes"; then
AC_DEFINE(USE_GPG2_HACK, 1, [Define to install gpg as gpg2])
fi
-AM_CONDITIONAL(USE_GPG2_HACK, test "$gpg2_is_gpg" != "yes")
+AM_CONDITIONAL(USE_GPG2_HACK, test "$gpg_is_gpg2" = "yes")
# SELinux support includes tracking of sensitive files to avoid
@@ -1543,6 +1541,11 @@ if test "$development_version" = yes; then
[Defined if this is not a regular release])
fi
+if test "$USE_MAINTAINER_MODE" = "yes"; then
+ AC_DEFINE(MAINTAINER_MODE,1,
+ [Defined if this build is in maintainer mode])
+fi
+
AM_CONDITIONAL(CROSS_COMPILING, test x$cross_compiling = xyes)
GNUPG_CHECK_GNUMAKE
@@ -1665,6 +1668,20 @@ AC_ARG_ENABLE(optimization,
fi])
#
+# Configure option --enable-all-tests
+#
+AC_MSG_CHECKING([whether "make check" shall run all tests])
+AC_ARG_ENABLE(all-tests,
+ AC_HELP_STRING([--enable-all-tests],
+ [let "make check" run all tests]),
+ run_all_tests=$enableval, run_all_tests=no)
+AC_MSG_RESULT($run_all_tests)
+if test "$run_all_tests" = "yes"; then
+ AC_DEFINE(RUN_ALL_TESTS,1,
+ [Defined if "make check" shall run all tests])
+fi
+
+#
# We do not want support for the GNUPG_BUILDDIR environment variable
# in a released version. However, our regression tests suite requires
# this and thus we build with support for it during "make distcheck".
diff --git a/dirmngr/http.c b/dirmngr/http.c
index 0bedba0..8e778df 100644
--- a/dirmngr/http.c
+++ b/dirmngr/http.c
@@ -2750,7 +2750,11 @@ connect_with_timeout (assuan_fd_t sock,
return 0; /* Success. */
}
err = gpg_err_make (default_errsource, gpg_err_code_from_syserror ());
- if (gpg_err_code (err) != GPG_ERR_EINPROGRESS)
+ if (gpg_err_code (err) != GPG_ERR_EINPROGRESS
+#ifdef HAVE_W32_SYSTEM
+ && gpg_err_code (err) != GPG_ERR_EAGAIN
+#endif
+ )
{
RESTORE_BLOCKING ();
return err;
diff --git a/doc/examples/systemd-user/dirmngr.service b/doc/examples/systemd-user/dirmngr.service
index ded533b..3c060cd 100644
--- a/doc/examples/systemd-user/dirmngr.service
+++ b/doc/examples/systemd-user/dirmngr.service
@@ -2,9 +2,6 @@
Description=GnuPG network certificate management daemon
Documentation=man:dirmngr(8)
Requires=dirmngr.socket
-After=dirmngr.socket
-## This is a socket-activated service:
-RefuseManualStart=true
[Service]
ExecStart=/usr/bin/dirmngr --supervised
diff --git a/doc/examples/systemd-user/gpg-agent.service b/doc/examples/systemd-user/gpg-agent.service
index e88dc7f..a050fcc 100644
--- a/doc/examples/systemd-user/gpg-agent.service
+++ b/doc/examples/systemd-user/gpg-agent.service
@@ -2,9 +2,6 @@
Description=GnuPG cryptographic agent and passphrase cache
Documentation=man:gpg-agent(1)
Requires=gpg-agent.socket
-After=gpg-agent.socket
-## This is a socket-activated service:
-RefuseManualStart=true
[Service]
ExecStart=/usr/bin/gpg-agent --supervised
diff --git a/doc/gpg-agent.texi b/doc/gpg-agent.texi
index d61dc85..d7a562a 100644
--- a/doc/gpg-agent.texi
+++ b/doc/gpg-agent.texi
@@ -325,10 +325,14 @@ the environment variable @code{SHELL} which is correct in almost all
cases.
-@item --no-grab
+@item --grab
+@itemx --no-grab
+@opindex grab
@opindex no-grab
-Tell the pinentry not to grab the keyboard and mouse. This option
-should in general not be used to avoid X-sniffing attacks.
+Tell the pinentry to grab the keyboard and mouse. This option should
+be used on X-Servers to avoid X-sniffing attacks. Any use of the
+option @option{--grab} overrides an used option @option{--no-grab}.
+The default is @option{--no-grab}.
@anchor{option --log-file}
@item --log-file @var{file}
diff --git a/doc/gpg.texi b/doc/gpg.texi
index 1984445..c71126a 100644
--- a/doc/gpg.texi
+++ b/doc/gpg.texi
@@ -1644,7 +1644,7 @@ Set what trust model GnuPG should follow. The models are:
time a key is seen, it is memorized. If later another key with a
user id with the same email address is seen, both keys are marked as
suspect. In that case, the next time either is used, a warning is
- displayed describing the conflict, why it might have occured
+ displayed describing the conflict, why it might have occurred
(either the user generated a new key and failed to cross sign the
old and new keys, the key is forgery, or a man-in-the-middle attack
is being attempted), and the user is prompted to manually confirm
@@ -1726,14 +1726,18 @@ Set what trust model GnuPG should follow. The models are:
exists.
@end table
-@item --auto-key-locate @var{parameters}
+@item --auto-key-locate @var{mechanisms}
@itemx --no-auto-key-locate
@opindex auto-key-locate
GnuPG can automatically locate and retrieve keys as needed using this
-option. This happens when encrypting to an email address (in the
-"user@@example.com" form), and there are no user@@example.com keys on
-the local keyring. This option takes any number of the following
-mechanisms, in the order they are to be tried:
+option. This happens when encrypting to an email address (in the
+"user@@example.com" form), and there are no "user@@example.com" keys
+on the local keyring. This option takes any number of the mechanisms
+listed below, in the order they are to be tried. Instead of listing
+the mechanisms as comma delimited arguments, the option may also be
+given several times to add more mechanism. The option
+@option{--no-auto-key-locate} or the mechanism "clear" resets the
+list. The default is "local,wkd".
@table @asis
@@ -1749,7 +1753,6 @@ mechanisms, in the order they are to be tried:
@item wkd
Locate a key using the Web Key Directory protocol.
- This is an experimental method and semantics may change.
@item ldap
Using DNS Service Discovery, check the domain in question for any LDAP
@@ -1782,13 +1785,14 @@ mechanisms, in the order they are to be tried:
@end table
+
@item --auto-key-retrieve
@itemx --no-auto-key-retrieve
@opindex auto-key-retrieve
@opindex no-auto-key-retrieve
-This option enables the automatic retrieving of keys from a keyserver
-when verifying signatures made by keys that are not on the local
-keyring.
+These options enable or disable the automatic retrieving of keys from
+a keyserver when verifying signatures made by keys that are not on the
+local keyring. The default is @option{--auto-key-retrieve}.
If the method "wkd" is included in the list of methods given to
@option{auto-key-locate}, the signer's user ID is part of the
@@ -1972,6 +1976,9 @@ file name.
Specify a dirmngr program to be used for keyserver access. The
default value is @file{@value{BINDIR}/dirmngr}.
+@item --disable-dirmngr
+Entirely disable the use of the Dirmngr.
+
@item --no-autostart
@opindex no-autostart
Do not start the gpg-agent or the dirmngr if it has not yet been
@@ -2302,9 +2309,11 @@ opposite meaning. The options are:
keyserver @option{--receive-keys}.
@item import-show
+ @itemx show-only
Show a listing of the key as imported right before it is stored.
This can be combined with the option @option{--dry-run} to only look
- at keys.
+ at keys; the option @option{show-only} is a shortcut for this
+ combination.
@item import-export
Run the entire import code but instead of storing the key to the
diff --git a/doc/tools.texi b/doc/tools.texi
index d05018b..332fb01 100644
--- a/doc/tools.texi
+++ b/doc/tools.texi
@@ -1189,10 +1189,12 @@ gpg-preset-passphrase [options] [command] @var{cacheid}
@var{cacheid} is either a 40 character keygrip of hexadecimal
characters identifying the key for which the passphrase should be set
or cleared. The keygrip is listed along with the key when running the
-command: @code{gpgsm --dump-secret-keys}. Alternatively an arbitrary
-string may be used to identify a passphrase; it is suggested that such
-a string is prefixed with the name of the application (e.g
-@code{foo:12346}).
+command: @code{gpgsm --with-keygrip --list-secret-keys}.
+Alternatively an arbitrary string may be used to identify a
+passphrase; it is suggested that such a string is prefixed with the
+name of the application (e.g @code{foo:12346}). Scripts should always
+use the option @option{--with-colons}, which provides the keygrip in a
+"grp" line (cf. @file{doc/DETAILS})/
@noindent
One of the following command options must be given:
diff --git a/g10/call-agent.c b/g10/call-agent.c
index 1ce6641..545b244 100644
--- a/g10/call-agent.c
+++ b/g10/call-agent.c
@@ -209,6 +209,13 @@ warn_version_mismatch (assuan_context_t ctx, const char *servername, int mode)
else
{
log_info (_("WARNING: %s\n"), warn);
+ if (!opt.quiet)
+ {
+ log_info (_("Note: Outdated servers may lack important"
+ " security fixes.\n"));
+ log_info (_("Note: Use the command \"%s\" to restart them.\n"),
+ "gpgconf --kill all");
+ }
write_status_strings (STATUS_WARNING, "server_version_mismatch 0",
" ", warn, NULL);
xfree (warn);
diff --git a/g10/call-dirmngr.c b/g10/call-dirmngr.c
index 9bae59f..9bc90fb 100644
--- a/g10/call-dirmngr.c
+++ b/g10/call-dirmngr.c
@@ -157,6 +157,14 @@ warn_version_mismatch (assuan_context_t ctx, const char *servername)
else
{
log_info (_("WARNING: %s\n"), warn);
+ if (!opt.quiet)
+ {
+ log_info (_("Note: Outdated servers may lack important"
+ " security fixes.\n"));
+ log_info (_("Note: Use the command \"%s\" to restart them.\n"),
+ "gpgconf --kill all");
+ }
+
write_status_strings (STATUS_WARNING, "server_version_mismatch 0",
" ", warn, NULL);
xfree (warn);
@@ -176,6 +184,10 @@ create_context (ctrl_t ctrl, assuan_context_t *r_ctx)
assuan_context_t ctx;
*r_ctx = NULL;
+
+ if (opt.disable_dirmngr)
+ return gpg_error (GPG_ERR_NO_DIRMNGR);
+
err = start_new_dirmngr (&ctx,
GPG_ERR_SOURCE_DEFAULT,
opt.dirmngr_program,
diff --git a/g10/getkey.c b/g10/getkey.c
index 79bce61..852c532 100644
--- a/g10/getkey.c
+++ b/g10/getkey.c
@@ -4229,10 +4229,12 @@ release_akl (void)
/* Returns false on error. */
int
-parse_auto_key_locate (char *options)
+parse_auto_key_locate (const char *options_arg)
{
char *tok;
+ char *options, *options_buf;
+ options = options_buf = xstrdup (options_arg);
while ((tok = optsep (&options)))
{
struct akl *akl, *check, *last = NULL;
@@ -4271,6 +4273,7 @@ parse_auto_key_locate (char *options)
else
{
free_akl (akl);
+ xfree (options_buf);
return 0;
}
@@ -4299,6 +4302,7 @@ parse_auto_key_locate (char *options)
}
}
+ xfree (options_buf);
return 1;
}
diff --git a/g10/gpg.c b/g10/gpg.c
index d2227b3..c721cdc 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -374,6 +374,7 @@ enum cmd_and_opt_values
oPersonalCompressPreferences,
oAgentProgram,
oDirmngrProgram,
+ oDisableDirmngr,
oDisplay,
oTTYname,
oTTYtype,
@@ -837,6 +838,7 @@ static ARGPARSE_OPTS opts[] = {
ARGPARSE_s_s (oAgentProgram, "agent-program", "@"),
ARGPARSE_s_s (oDirmngrProgram, "dirmngr-program", "@"),
+ ARGPARSE_s_n (oDisableDirmngr, "disable-dirmngr", "@"),
ARGPARSE_s_s (oDisplay, "display", "@"),
ARGPARSE_s_s (oTTYname, "ttyname", "@"),
ARGPARSE_s_s (oTTYtype, "ttytype", "@"),
@@ -1850,13 +1852,14 @@ gpgconf_list (const char *configfile)
es_printf ("encrypt-to:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("try-secret-key:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("auto-key-locate:%lu:\n", GC_OPT_FLAG_NONE);
- es_printf ("auto-key-retrieve:%lu:\n", GC_OPT_FLAG_NONE);
+ es_printf ("no-auto-key-retrieve:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("log-file:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("debug-level:%lu:\"none:\n", GC_OPT_FLAG_DEFAULT);
es_printf ("group:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("compliance:%lu:\"%s:\n", GC_OPT_FLAG_DEFAULT, "gnupg");
es_printf ("default-new-key-algo:%lu:\n", GC_OPT_FLAG_NONE);
es_printf ("trust-model:%lu:\n", GC_OPT_FLAG_NONE);
+ es_printf ("disable-dirmngr:%lu:\n", GC_OPT_FLAG_NONE);
/* The next one is an info only item and should match the macros at
the top of keygen.c */
@@ -2292,6 +2295,7 @@ main (int argc, char **argv)
int ovrseskeyfd = -1;
int fpr_maybe_cmd = 0; /* --fingerprint maybe a command. */
int any_explicit_recipient = 0;
+ int default_akl = 1;
int require_secmem = 0;
int got_secmem = 0;
struct assuan_malloc_hooks malloc_hooks;
@@ -2362,7 +2366,8 @@ main (int argc, char **argv)
opt.keyserver_options.import_options = (IMPORT_REPAIR_KEYS
| IMPORT_REPAIR_PKS_SUBKEY_BUG);
opt.keyserver_options.export_options = EXPORT_ATTRIBUTES;
- opt.keyserver_options.options = KEYSERVER_HONOR_PKA_RECORD;
+ opt.keyserver_options.options = (KEYSERVER_HONOR_PKA_RECORD
+ | KEYSERVER_AUTO_KEY_RETRIEVE);
opt.verify_options = (LIST_SHOW_UID_VALIDITY
| VERIFY_SHOW_POLICY_URLS
| VERIFY_SHOW_STD_NOTATIONS
@@ -2385,7 +2390,6 @@ main (int argc, char **argv)
opt.passphrase_repeat = 1;
opt.emit_version = 0;
opt.weak_digests = NULL;
- additional_weak_digest("MD5");
/* Check whether we have a config file on the command line. */
orig_argc = argc;
@@ -2461,6 +2465,10 @@ main (int argc, char **argv)
assuan_set_gpg_err_source (GPG_ERR_SOURCE_DEFAULT);
setup_libassuan_logging (&opt.debug, NULL);
+ /* Set default options which require that malloc stuff is ready. */
+ additional_weak_digest ("MD5");
+ parse_auto_key_locate ("local,wkd");
+
/* Try for a version specific config file first */
default_configname = get_default_configname ();
if (default_config)
@@ -3383,6 +3391,7 @@ main (int argc, char **argv)
break;
case oAgentProgram: opt.agent_program = pargs.r.ret_str; break;
case oDirmngrProgram: opt.dirmngr_program = pargs.r.ret_str; break;
+ case oDisableDirmngr: opt.disable_dirmngr = 1; break;
case oWeakDigest:
additional_weak_digest(pargs.r.ret_str);
break;
@@ -3457,6 +3466,13 @@ main (int argc, char **argv)
case oNoRequireCrossCert: opt.flags.require_cross_cert=0; break;
case oAutoKeyLocate:
+ if (default_akl)
+ {
+ /* This is the first time --aito-key-locate is seen.
+ * We need to reset the default akl. */
+ default_akl = 0;
+ release_akl();
+ }
if(!parse_auto_key_locate(pargs.r.ret_str))
{
if(configname)
diff --git a/g10/import.c b/g10/import.c
index 8136625..5b55f8f 100644
--- a/g10/import.c
+++ b/g10/import.c
@@ -190,6 +190,10 @@ parse_import_options(char *str,unsigned int *options,int noisy)
{"repair-keys", IMPORT_REPAIR_KEYS, NULL,
N_("repair keys on import")},
+ /* No description to avoid string change: Fixme for 2.3 */
+ {"show-only", (IMPORT_SHOW | IMPORT_DRY_RUN), NULL,
+ NULL},
+
/* Aliases for backward compatibility */
{"allow-local-sigs",IMPORT_LOCAL_SIGS,NULL,NULL},
{"repair-hkp-subkey-bug",IMPORT_REPAIR_PKS_SUBKEY_BUG,NULL,NULL},
@@ -1774,7 +1778,8 @@ import_one (ctrl_t ctrl,
merge_keys_done = 1;
/* Note that we do not want to show the validity because the key
* has not yet imported. */
- list_keyblock_direct (ctrl, keyblock, 0, 0, 1, 1);
+ list_keyblock_direct (ctrl, keyblock, 0, 0,
+ opt.fingerprint || opt.with_fingerprint, 1);
es_fflush (es_stdout);
}
@@ -1790,7 +1795,7 @@ import_one (ctrl_t ctrl,
goto leave;
}
- if (opt.dry_run)
+ if (opt.dry_run || (options & IMPORT_DRY_RUN))
goto leave;
/* Do we have this key already in one of our pubrings ? */
diff --git a/g10/keydb.h b/g10/keydb.h
index f793ada..f503c99 100644
--- a/g10/keydb.h
+++ b/g10/keydb.h
@@ -396,7 +396,7 @@ char *get_user_id_byfpr (ctrl_t ctrl, const byte *fpr, size_t *rn);
char *get_user_id_byfpr_native (ctrl_t ctrl, const byte *fpr);
void release_akl(void);
-int parse_auto_key_locate(char *options);
+int parse_auto_key_locate(const char *options);
int parse_key_origin (char *string);
const char *key_origin_string (int origin);
diff --git a/g10/options.h b/g10/options.h
index 83f4028..130bec8 100644
--- a/g10/options.h
+++ b/g10/options.h
@@ -121,6 +121,7 @@ struct
int max_cert_depth;
const char *agent_program;
const char *dirmngr_program;
+ int disable_dirmngr;
const char *def_new_key_algo;
@@ -352,6 +353,7 @@ EXTERN_UNLESS_MAIN_MODULE int memory_stat_debug_mode;
#define IMPORT_EXPORT (1<<9)
#define IMPORT_RESTORE (1<<10)
#define IMPORT_REPAIR_KEYS (1<<11)
+#define IMPORT_DRY_RUN (1<<12)
#define EXPORT_LOCAL_SIGS (1<<0)
#define EXPORT_ATTRIBUTES (1<<1)
diff --git a/g10/pubkey-enc.c b/g10/pubkey-enc.c
index 272562b..d7ba953 100644
--- a/g10/pubkey-enc.c
+++ b/g10/pubkey-enc.c
@@ -90,16 +90,19 @@ get_session_key (ctrl_t ctrl, PKT_pubkey_enc * k, DEK * dek)
sk->pubkey_algo = k->pubkey_algo; /* We want a pubkey with this algo. */
if (!(rc = get_seckey (ctrl, sk, k->keyid)))
{
- /* Print compliance warning. */
- if (!gnupg_pk_is_compliant (opt.compliance,
- sk->pubkey_algo,
- sk->pkey, nbits_from_pk (sk), NULL))
- log_info (_("Note: key %s is not suitable for encryption"
- " in %s mode\n"),
- keystr_from_pk (sk),
- gnupg_compliance_option_string (opt.compliance));
-
- rc = get_it (ctrl, k, dek, sk, k->keyid);
+ /* Check compliance. */
+ if (! gnupg_pk_is_allowed (opt.compliance, PK_USE_DECRYPTION,
+ sk->pubkey_algo,
+ sk->pkey, nbits_from_pk (sk), NULL))
+ {
+ log_info (_("key %s is not suitable for decryption"
+ " in %s mode\n"),
+ keystr_from_pk (sk),
+ gnupg_compliance_option_string (opt.compliance));
+ rc = gpg_error (GPG_ERR_PUBKEY_ALGO);
+ }
+ else
+ rc = get_it (ctrl, k, dek, sk, k->keyid);
}
}
else if (opt.skip_hidden_recipients)
@@ -128,14 +131,17 @@ get_session_key (ctrl_t ctrl, PKT_pubkey_enc * k, DEK * dek)
log_info (_("anonymous recipient; trying secret key %s ...\n"),
keystr (keyid));
- /* Print compliance warning. */
- if (!gnupg_pk_is_compliant (opt.compliance,
- sk->pubkey_algo,
- sk->pkey, nbits_from_pk (sk), NULL))
- log_info (_("Note: key %s is not suitable for encryption"
- " in %s mode\n"),
- keystr_from_pk (sk),
- gnupg_compliance_option_string (opt.compliance));
+ /* Check compliance. */
+ if (! gnupg_pk_is_allowed (opt.compliance, PK_USE_DECRYPTION,
+ sk->pubkey_algo,
+ sk->pkey, nbits_from_pk (sk), NULL))
+ {
+ log_info (_("key %s is not suitable for decryption"
+ " in %s mode\n"),
+ keystr_from_pk (sk),
+ gnupg_compliance_option_string (opt.compliance));
+ continue;
+ }
rc = get_it (ctrl, k, dek, sk, keyid);
if (!rc)
diff --git a/g10/revoke.c b/g10/revoke.c
index 1dea6ae..4578700 100644
--- a/g10/revoke.c
+++ b/g10/revoke.c
@@ -532,6 +532,7 @@ gen_standard_revoke (ctrl_t ctrl, PKT_public_key *psk, const char *cache_nonce)
u32 keyid[2];
int kl;
char *orig_codeset;
+ char *old_outfile;
dir = get_openpgp_revocdir (gnupg_homedir ());
tmpstr = hexfingerprint (psk, NULL, 0);
@@ -586,8 +587,11 @@ gen_standard_revoke (ctrl_t ctrl, PKT_public_key *psk, const char *cache_nonce)
reason.code = 0x00; /* No particular reason. */
reason.desc = NULL;
+ old_outfile = opt.outfile;
+ opt.outfile = NULL;
rc = create_revocation (ctrl,
fname, &reason, psk, NULL, leadin, 3, cache_nonce);
+ opt.outfile = old_outfile;
if (!rc && !opt.quiet)
log_info (_("revocation certificate stored as '%s.rev'\n"), fname);
diff --git a/po/ca.po b/po/ca.po
index 3f8f601..738c5f7 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -361,9 +361,6 @@ msgstr "|FITXER|carrega el mòdul d'extensió especificat"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "cerca claus en un servidor de claus"
@@ -1348,6 +1345,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "AVÍS: %s té preferència sobre %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Useu l'ordre «toggle» abans.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5367,7 +5372,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "no s'han pogut obrir les dades signades `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "clau %08lX: sense ID\n"
# Indi? ivb
@@ -9434,9 +9439,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "canvia entre el llistat de claus secretes i públiques"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Useu l'ordre «toggle» abans.\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "la contrasenya és errònia"
diff --git a/po/cs.po b/po/cs.po
index 487ccce..17bff35 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -352,9 +352,6 @@ msgstr "|SOUBOR|načíst volby ze SOUBORU"
msgid "do not detach from the console"
msgstr "neodpojovat se od konzole"
-msgid "do not grab keyboard and mouse"
-msgstr "neuzurpovat si klávesnici a myš"
-
msgid "use a log file for the server"
msgstr "použít pro server soubor s protokolem"
@@ -1252,6 +1249,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "VAROVÁNÍ: "
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Prosím, nejdříve použijte příkaz „toggle“ (přepnout).\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5021,7 +5026,7 @@ msgstr "nelze otevřít podepsaná data na deskriptoru=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "certifikát není použitelný pro šifrování\n"
#, c-format
@@ -8695,6 +8700,9 @@ msgstr ""
"Syntaxe: gpg-check-pattern [volby] soubor_se_vzorem\n"
"Prověří heslo zadané na vstupu proti souboru se vzory\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "neuzurpovat si klávesnici a myš"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Chyba: URL je příliš dlouhé (limit je %d znaků).\n"
@@ -8992,9 +9000,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "přepnout mezi výpisem seznamu tajných a veřejných klíčů"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Prosím, nejdříve použijte příkaz „toggle“ (přepnout).\n"
-
#~ msgid "Please select at most one subkey.\n"
#~ msgstr "Prosím, vyberte nejvýše jeden podklíč.\n"
diff --git a/po/da.po b/po/da.po
index 3d42b7c..e124de5 100644
--- a/po/da.po
+++ b/po/da.po
@@ -371,9 +371,6 @@ msgstr "|FIL|læs tilvalg fra FIL"
msgid "do not detach from the console"
msgstr "frakobl ikke fra konsollen"
-msgid "do not grab keyboard and mouse"
-msgstr "fang ikke tastatur og mus"
-
msgid "use a log file for the server"
msgstr "brug en logfil for serveren"
@@ -1330,6 +1327,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "ADVARSEL: %s overskriver %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Brug venligst kommandoen »toggle« først.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5273,7 +5278,7 @@ msgstr "kan ikke åbne underskrevne data fd=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "certifikat kan ikke bruges til kryptering\n"
#, c-format
@@ -9203,6 +9208,9 @@ msgstr ""
"Syntaks: gpg-check-pattern [tilvalg] mønsterfil\n"
"Kontroller en adgangsfrase angivet på stdin mod mønsterfilen\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "fang ikke tastatur og mus"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Fejl: Adresse er for lang (begrænsningen er %d tegn).\n"
@@ -9524,9 +9532,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "skift mellem hemmelig og offentlig nøglevisning"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Brug venligst kommandoen »toggle« først.\n"
-
#~ msgid "Passphrase"
#~ msgstr "Adgangsfrase"
diff --git a/po/de.po b/po/de.po
index f71602d..8174b34 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnupg-2.1.0\n"
"Report-Msgid-Bugs-To: translations@gnupg.org\n"
-"PO-Revision-Date: 2017-07-28 18:50+0200\n"
+"PO-Revision-Date: 2017-08-09 12:49+0200\n"
"Last-Translator: Werner Koch <wk@gnupg.org>\n"
"Language-Team: German <de@li.org>\n"
"Language: de\n"
@@ -338,9 +338,6 @@ msgstr "|DATEI|Konfigurationsoptionen aus DATEI lesen"
msgid "do not detach from the console"
msgstr "Im Vordergrund laufen lassen"
-msgid "do not grab keyboard and mouse"
-msgstr "Tastatur und Maus nicht \"grabben\""
-
msgid "use a log file for the server"
msgstr "Logausgaben in eine Datei umlenken"
@@ -1233,6 +1230,14 @@ msgstr "Der Server '%s' is älter als wir selbst (Version %s < %s)"
msgid "WARNING: %s\n"
msgstr "WARNUNG: %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+"Hinweis: Wichtige Sicherheits-Fixes können in veralteten Servern fehlen.\n"
+
+#, c-format
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Hinweis: Der Befehl \"%s\" startet diese Server neu.\n"
+
#, c-format
msgid "%s is not compliant with %s mode\n"
msgstr "%s is nicht konform mit dem %s Modus\n"
@@ -5003,9 +5008,8 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "kann signierte Daten auf fd=%d nicht öffnen: %s\n"
#, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
-msgstr ""
-"Hinweis: Schlüssel \"%s\" ist zum Verschlüsseln im %s Modus nicht geeignet.\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
+msgstr "Schlüssel \"%s\" ist zum Entschlüsseln im %s Modus nicht geeignet.\n"
#, c-format
msgid "anonymous recipient; trying secret key %s ...\n"
@@ -5566,10 +5570,8 @@ msgstr ""
msgid "error gathering other user IDs: %s\n"
msgstr "Fehler beim Einsammeln der übrigen User-IDs: %s\n"
-#, fuzzy
-#| msgid "list key and user IDs"
msgid "This key's user IDs:\n"
-msgstr "Schlüssel und User-IDs auflisten"
+msgstr "Die User-IDs dieses Schlüssels sind:\n"
#, c-format
msgid "policy: %s"
@@ -8752,6 +8754,9 @@ msgstr ""
"Syntax: gpg-check-pattern [optionen] Musterdatei\n"
"Die von stdin gelesene Passphrase gegen die Musterdatei prüfen\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "Tastatur und Maus nicht \"grabben\""
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Fehler: URL ist zu lang (Grenze beträgt %d Zeichen).\n"
@@ -9203,9 +9208,6 @@ msgstr ""
#~ msgstr ""
#~ "Umschalten zwischen dem Auflisten geheimer und öffentlicher Schlüssel"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Bitte verwenden sie zunächst den Befehl \"toggle\"\n"
-
#~ msgid "Passphrase"
#~ msgstr "Passphrase"
diff --git a/po/el.po b/po/el.po
index b8a505b..dd690a4 100644
--- a/po/el.po
+++ b/po/el.po
@@ -337,9 +337,6 @@ msgstr "|ΑΡΧΕΙΟ|φόρτωμα του αρθρώματος επέκτασ
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "αναζήτηση κλειδιών σε ένα διακομιστή κλειδιών"
@@ -1285,6 +1282,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: το %s παρακάμπτει το %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Παρακαλώ χρησιμοποιείστε την εντολή \"toggle\" πρώτα.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5253,7 +5258,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "αδυναμία πρόσβασης υπογεγραμμένων δεδομένων `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "κλειδί %08lX: δεν υπάρχει αυτό το user ID\n"
#, fuzzy, c-format
@@ -9249,9 +9254,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "αλλαγή μεταξύ της απεικόνισης μυστικού και δημόσιου κλειδιού"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Παρακαλώ χρησιμοποιείστε την εντολή \"toggle\" πρώτα.\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "κακή φράση κλειδί"
diff --git a/po/eo.po b/po/eo.po
index c52dbad..3c49698 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -339,9 +339,6 @@ msgstr "|DOSIERO|legi aldonan bibliotekon DOSIERO"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "serĉi ŝlosilojn ĉe ŝlosilservilo"
@@ -1289,6 +1286,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "AVERTO: %s nuligas %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Bonvolu uzi la komandon \"toggle\" unue.\n"
+
#, fuzzy, c-format
msgid "%s is not compliant with %s mode\n"
msgstr "%s ne havas sencon kun %s!\n"
@@ -5220,7 +5225,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "ne povas malfermi subskribitan dosieron '%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "ŝlosilo %08lX: mankas uzantidentigilo\n"
#, fuzzy, c-format
@@ -9177,9 +9182,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "de sekreta aŭ publika listo iri al la alia"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Bonvolu uzi la komandon \"toggle\" unue.\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "malbona pasfrazo"
diff --git a/po/es.po b/po/es.po
index a9eb67b..95a2589 100644
--- a/po/es.po
+++ b/po/es.po
@@ -385,9 +385,6 @@ msgstr "|FICHERO|lee opciones desde FICHERO"
msgid "do not detach from the console"
msgstr "no independizarse de la consola"
-msgid "do not grab keyboard and mouse"
-msgstr "no acaparar teclado y ratón"
-
msgid "use a log file for the server"
msgstr "usar un fichero log para el servidor"
@@ -1348,6 +1345,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "ATENCION: "
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Por favor use la orden \"cambia\" primero.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5266,7 +5271,7 @@ msgstr "imposible abrir datos firmados fd=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "el certificado no es utilizable para cifrar\n"
#, c-format
@@ -9242,6 +9247,9 @@ msgstr ""
"Compara frase contraseña dada en entrada estándar con un fichero de "
"patrones\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "no acaparar teclado y ratón"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Error: URL demasiado larga (el máximo son %d caracteres).\n"
@@ -9587,9 +9595,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "cambiar entre lista de claves secretas y públicas"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Por favor use la orden \"cambia\" primero.\n"
-
# ¿Por qué no frase de paso?
# Porque todo el mundo sabe lo que es una contraseña
# y una "frase de paso" no. Soy consciente de que se
diff --git a/po/et.po b/po/et.po
index d9381bd..f852a29 100644
--- a/po/et.po
+++ b/po/et.po
@@ -335,9 +335,6 @@ msgstr "|FAIL|lae laiendusmoodul FAIL"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "otsi võtmeid võtmeserverist"
@@ -1282,6 +1279,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "HOIATUS: %s määrab üle %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Palun kasutage kõigepealt käsku \"toggle\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5192,7 +5197,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "allkirjastatud andmete avamine ebaõnnestus `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "võti %08lX: kasutaja ID puudub\n"
#, fuzzy, c-format
@@ -9160,9 +9165,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "lülita salajaste või avalike võtmete loendi vahel"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Palun kasutage kõigepealt käsku \"toggle\".\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "halb parool"
diff --git a/po/fi.po b/po/fi.po
index 6b145e4..ea38194 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -351,9 +351,6 @@ msgstr "|TIEDOSTO|lataa laajennusmoduuli TIEDOSTO"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "etsi avaimia avainpalvelimelta"
@@ -1301,6 +1298,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "VAROITUS: %s korvaa %s:n\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Käytä ensin komentoa \"toggle\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5240,7 +5245,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "allekirjoitetun datan \"%s\" avaaminen ei onnistu\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "avain %08lX: ei käyttäjätunnusta\n"
#, fuzzy, c-format
@@ -9230,9 +9235,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "vaihda salaisten ja julkisten avainten luettelon välillä"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Käytä ensin komentoa \"toggle\".\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "väärä salasana"
diff --git a/po/fr.po b/po/fr.po
index 375ccc8..916aef7 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -345,9 +345,6 @@ msgstr "|FICHIER|lire les options depuis le FICHIER"
msgid "do not detach from the console"
msgstr "ne pas détacher de la console"
-msgid "do not grab keyboard and mouse"
-msgstr "ne pas capturer le clavier et la souris"
-
msgid "use a log file for the server"
msgstr "utiliser un fichier journal pour le serveur"
@@ -1260,6 +1257,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "Attention : "
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Veuillez d'abord utiliser la commande « toggle ».\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5136,7 +5141,7 @@ msgstr "impossible d'ouvrir les données signées fd=%d : %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "le certificat n'est pas utilisable pour le chiffrement\n"
#, c-format
@@ -8919,6 +8924,9 @@ msgstr ""
"Vérifier une phrase secrète donnée sur l'entrée standard par rapport à "
"ficmotif\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "ne pas capturer le clavier et la souris"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Erreur : URL trop longue (limitée à %d caractères).\n"
@@ -9258,9 +9266,6 @@ msgstr ""
#~ "passer de la liste de clefs secrètes à celle de clefs privées ou vice "
#~ "versa"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Veuillez d'abord utiliser la commande « toggle ».\n"
-
#~ msgid "Passphrase"
#~ msgstr "Phrase secrète"
diff --git a/po/gl.po b/po/gl.po
index 6f2790e..d8434f6 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -337,9 +337,6 @@ msgstr "|FICHEIRO|carga-lo módulo de extensión FICHEIRO"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "buscar chaves nun servidor de chaves"
@@ -1291,6 +1288,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "AVISO: %s fai que se ignore %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Por favor, empregue o comando \"toggle\" antes.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5251,7 +5256,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "non foi posible abri-los datos asinados `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "chave %08lX: non hai ID de usuario\n"
#, fuzzy, c-format
@@ -9253,9 +9258,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "cambiar entre o listado de chaves públicas e secretas"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Por favor, empregue o comando \"toggle\" antes.\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "contrasinal erróneo"
diff --git a/po/hu.po b/po/hu.po
index fcdc9b7..49bef6c 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -335,9 +335,6 @@ msgstr "|fájl|bővítő modul betöltése"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "kulcsok keresése kulcsszerveren"
@@ -1282,6 +1279,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "FIGYELEM: %s hatástalanítja %s-t!\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Kérem, használja előbb a \"toggle\" parancsot!\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5215,7 +5220,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "Nem tudom megnyitni a(z) \"%s\" aláírt adatot!\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "%08lX kulcs: Nincs felhasználói azonosító.\n"
#, fuzzy, c-format
@@ -9195,9 +9200,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "váltás a titkos és a nyilvános kulcs listázása között"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Kérem, használja előbb a \"toggle\" parancsot!\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "rossz jelszó"
diff --git a/po/id.po b/po/id.po
index cf0f261..786dc42 100644
--- a/po/id.po
+++ b/po/id.po
@@ -340,9 +340,6 @@ msgstr "|FILE|muat modul ekstensi FILE"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "cari kunci di keyserver"
@@ -1288,6 +1285,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "PERINGATAN: %s menimpa %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Silakan gunakan dulu perintah \"toogle\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5209,7 +5214,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "tidak dapat membuka data tertandai `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "kunci %08lX: tidak ada ID user\n"
#, fuzzy, c-format
@@ -9186,9 +9191,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "ubah tampilan kunci rahasia dan publik"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Silakan gunakan dulu perintah \"toogle\".\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "passphrase yang buruk"
diff --git a/po/it.po b/po/it.po
index b2aaec2..1bcc8b8 100644
--- a/po/it.po
+++ b/po/it.po
@@ -335,9 +335,6 @@ msgstr "|FILE|carica il modulo di estensione FILE"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "cerca delle chiavi su un keyserver"
@@ -1285,6 +1282,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "ATTENZIONE: %s ha la precedenza su %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Per favore usa prima il comando \"toggle\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5233,7 +5238,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "impossibile aprire i dati firmati `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "chiave %08lX: nessun user ID\n"
#, fuzzy, c-format
@@ -9230,9 +9235,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "cambia tra visualizzare la chiave segreta e la chiave pubblica"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Per favore usa prima il comando \"toggle\".\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "passphrase errata"
diff --git a/po/ja.po b/po/ja.po
index 32bc34d..7d4f002 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,9 +8,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gnupg 2.1.20\n"
+"Project-Id-Version: gnupg 2.1.22\n"
"Report-Msgid-Bugs-To: translations@gnupg.org\n"
-"PO-Revision-Date: 2017-04-04 10:45+0900\n"
+"PO-Revision-Date: 2017-08-01 11:34+0900\n"
"Last-Translator: NIIBE Yutaka <gniibe@fsij.org>\n"
"Language-Team: none\n"
"Language: ja\n"
@@ -321,9 +321,6 @@ msgstr "|FILE|FILEからオプションを読み込みます"
msgid "do not detach from the console"
msgstr "コンソールからデタッチしない"
-msgid "do not grab keyboard and mouse"
-msgstr "キーボードとマウスを占有しない"
-
msgid "use a log file for the server"
msgstr "サーバのログ・ファイルを使う"
@@ -370,7 +367,7 @@ msgid "enable ssh support"
msgstr "sshサポートを有功にする"
msgid "|ALGO|use ALGO to show ssh fingerprints"
-msgstr ""
+msgstr "|ALGO|ssh署名の表示にALGOを使う"
msgid "enable putty support"
msgstr "puttyサポートを有功にする"
@@ -1200,10 +1197,17 @@ msgstr "サーバ'%s'はこちらより古いです(%s < %s)"
msgid "WARNING: %s\n"
msgstr "*警告*: %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
#, fuzzy, c-format
-#| msgid "%s does not yet work with %s\n"
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "まず\"toggle\"コマンドを使ってください。\n"
+
+#, c-format
msgid "%s is not compliant with %s mode\n"
-msgstr "%sは%sではまだ機能しません\n"
+msgstr "%sは%sモードに準拠しません\n"
#, c-format
msgid "OpenPGP card not available: %s\n"
@@ -1554,16 +1558,13 @@ msgid ""
msgstr ""
"*警告*: 共通鍵暗号方式 %s (%d) の強制が、受取人の優先指定をそむきます\n"
-#, fuzzy, c-format
-#| msgid "you may not use cipher algorithm '%s' while in %s mode\n"
+#, c-format
msgid "cipher algorithm '%s' may not be used in %s mode\n"
msgstr "暗号アルゴリズム'%s'を%sモードで使うことはできません\n"
-#, fuzzy, c-format
-#| msgid "WARNING: \"%s%s\" is an obsolete option - it has no effect\n"
+#, c-format
msgid "WARNING: key %s is not suitable for encryption in %s mode\n"
-msgstr ""
-"*警告*: \"%s%s\"は、使われなくなったオプションです - なんの効果もありません\n"
+msgstr "*警告*: 鍵%sは、%sモードでは、暗号化に適しません\n"
#, c-format
msgid ""
@@ -1580,10 +1581,9 @@ msgstr "共通鍵暗号方式 %s (%d) の強制が、受取人の優先指定を
msgid "%s/%s encrypted for: \"%s\"\n"
msgstr "%s/%s暗号化 受信者:\"%s\"\n"
-#, fuzzy, c-format
-#| msgid "you may not use %s while in %s mode\n"
+#, c-format
msgid "option '%s' may not be used in %s mode\n"
-msgstr "%sを%sモードで使うことはできません\n"
+msgstr "オプション'%s'を%sモードで使うことはできません\n"
#, c-format
msgid "%s encrypted data\n"
@@ -2236,13 +2236,11 @@ msgstr "無効な個人用圧縮の優先指定\n"
msgid "%s does not yet work with %s\n"
msgstr "%sは%sではまだ機能しません\n"
-#, fuzzy, c-format
-#| msgid "you may not use digest algorithm '%s' while in %s mode\n"
+#, c-format
msgid "digest algorithm '%s' may not be used in %s mode\n"
msgstr "ダイジェスト・アルゴリズム'%s'を%sモードで使うことはできません\n"
-#, fuzzy, c-format
-#| msgid "you may not use compression algorithm '%s' while in %s mode\n"
+#, c-format
msgid "compression algorithm '%s' may not be used in %s mode\n"
msgstr "圧縮アルゴリズム'%s'を%sモードで使うことはできません\n"
@@ -2260,16 +2258,14 @@ msgstr "'%s'の共通鍵暗号に失敗しました: %s\n"
msgid "you cannot use --symmetric --encrypt with --s2k-mode 0\n"
msgstr "--symmetric --encryptを--s2k-mode 0で使うことはできません\n"
-#, fuzzy, c-format
-#| msgid "you cannot use --symmetric --encrypt while in %s mode\n"
+#, c-format
msgid "you cannot use --symmetric --encrypt in %s mode\n"
msgstr "--symmetric --encryptを%sモードで使うことはできません\n"
msgid "you cannot use --symmetric --sign --encrypt with --s2k-mode 0\n"
msgstr "--symmetric --sign --encryptを--s2k-mode 0で使うことはできません\n"
-#, fuzzy, c-format
-#| msgid "you cannot use --symmetric --sign --encrypt while in %s mode\n"
+#, c-format
msgid "you cannot use --symmetric --sign --encrypt in %s mode\n"
msgstr "--symmetric --sign --encryptを%sモードで使うことはできません\n"
@@ -2392,10 +2388,8 @@ msgstr "インポート・フィルタを実行し鍵をすぐにエクスポー
msgid "assume the GnuPG key backup format"
msgstr "GnuPGの鍵のバックアップフォーマットを仮定します"
-#, fuzzy
-#| msgid "show key during import"
msgid "repair keys on import"
-msgstr "インポートの際、鍵を表示"
+msgstr "インポートの際、鍵を修復する"
#, c-format
msgid "skipping block of type %d\n"
@@ -3235,15 +3229,13 @@ msgstr "署名するものがありません。\n"
msgid "'%s' is not a valid expiration time\n"
msgstr "'%s'は、有効な有効期限ではありません\n"
-#, fuzzy, c-format
-#| msgid "\"%s\" is not a fingerprint\n"
+#, c-format
msgid "\"%s\" is not a proper fingerprint\n"
-msgstr "\"%s\"はフィンガープリントではありません\n"
+msgstr "\"%s\"はフ正しいィンガープリントではありません\n"
-#, fuzzy, c-format
-#| msgid "key \"%s\" not found\n"
+#, c-format
msgid "subkey \"%s\" not found\n"
-msgstr "鍵\"%s\"が見つかりません\n"
+msgstr "副鍵\"%s\"が見つかりません\n"
msgid "Digest: "
msgstr "ダイジェスト: "
@@ -4288,10 +4280,9 @@ msgstr "[不確定]"
msgid " aka \"%s\""
msgstr " 別名\"%s\""
-#, fuzzy, c-format
-#| msgid "WARNING: This key is not certified with a trusted signature!\n"
+#, c-format
msgid "WARNING: This key is not suitable for signing in %s mode\n"
-msgstr "*警告*: この鍵は信用できる署名で証明されていません!\n"
+msgstr "*警告*: この鍵は%sモードでの署名に適しません!\n"
#, c-format
msgid "Signature expired %s\n"
@@ -4822,9 +4813,9 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "署名されたデータ fd=%d が開けません: %s\n"
#, fuzzy, c-format
-#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
-msgstr "証明書は暗号化のために使えません\n"
+#| msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
+msgstr "注: 鍵%sは%sモードでの暗号化のために適しません\n"
#, c-format
msgid "anonymous recipient; trying secret key %s ...\n"
@@ -5002,10 +4993,9 @@ msgstr ""
msgid "WARNING: signature digest conflict in message\n"
msgstr "*警告*: 署名のダイジェストが、メッセージと衝突します\n"
-#, fuzzy, c-format
-#| msgid "you may not use %s while in %s mode\n"
+#, c-format
msgid "key %s may not be used for signing in %s mode\n"
-msgstr "%sを%sモードで使うことはできません\n"
+msgstr "鍵%sを署名のために%sモードで使うことはできません\n"
#, c-format
msgid "WARNING: signing subkey %s is not cross-certified\n"
@@ -8325,6 +8315,9 @@ msgstr ""
"形式: gpg-check-pattern [オプション] パターンファイル\n"
"パターンファイルに対して標準入力のパスフレーズを確認する\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "キーボードとマウスを占有しない"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "エラー: URLが長すぎます (上限%d文字)。\n"
@@ -8667,9 +8660,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "秘密鍵と公開鍵の一覧の反転"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "まず\"toggle\"コマンドを使ってください。\n"
-
#~ msgid "Passphrase"
#~ msgstr "パスフレーズ"
diff --git a/po/nb.po b/po/nb.po
index 09e8fc2..01de1b0 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -328,9 +328,6 @@ msgstr "|FIL|les valg fra valgt FIL"
msgid "do not detach from the console"
msgstr "ikke løsne fra konsoll"
-msgid "do not grab keyboard and mouse"
-msgstr "ikke bruk tastatur og mus"
-
msgid "use a log file for the server"
msgstr "bruk loggfil for tjeneren"
@@ -1210,6 +1207,14 @@ msgstr "tjener «%s» er eldre enn oss (%s < %s)"
msgid "WARNING: %s\n"
msgstr "ADVARSEL: %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Bruk kommandoen «toggle» først.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -4921,7 +4926,7 @@ msgstr "klarte ikke å åpne signert data fd=%d: «%s»\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "sertifikatet egner seg ikke til kryptering\n"
#, c-format
@@ -8600,6 +8605,9 @@ msgstr ""
"Syntaks: gpg-check-pattern [valg] mønsterfil\n"
"Kontroller passordfrase oppgitt på standard innkanal mot valgt mønsterfil\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "ikke bruk tastatur og mus"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Feil: Adressen er for lang (grensa er %d tegn).\n"
@@ -9349,9 +9357,6 @@ msgstr ""
#~ msgid "error reading secret keyblock \"%s\": %s\n"
#~ msgstr "feil under lesing av hemmelig nøkkelblokk «%s»: %s\n"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Bruk kommandoen «toggle» først.\n"
-
#~ msgid "User ID \"%s\": %d signatures removed\n"
#~ msgstr "Bruker-ID «%s»: %d signaturer fjernet\n"
diff --git a/po/pl.po b/po/pl.po
index 4df8e68..c4e2d07 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -362,9 +362,6 @@ msgstr "|PLIK|odczyt opcji z PLIKU"
msgid "do not detach from the console"
msgstr "nie odczepianie od konsoli"
-msgid "do not grab keyboard and mouse"
-msgstr "nie przechwytywanie klawiatury i myszy"
-
msgid "use a log file for the server"
msgstr "użycie pliku loga dla serwera"
@@ -1317,6 +1314,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "OSTRZEŻENIE: %s powoduje obejście %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Najpierw trzeba użyć polecenia \"przeł\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5291,7 +5296,7 @@ msgstr "nie można otworzyć podpisanych danych z fd=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "certyfikat nie nadaje się do szyfrowania\n"
#, c-format
@@ -9271,6 +9276,9 @@ msgstr ""
"Składnia: gpg-check-pattern [opcje] plik-wzorców\n"
"Sprawdzanie hasła ze standardowego wejścia względem pliku wzorców\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "nie przechwytywanie klawiatury i myszy"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Błąd: URL zbyt długi (limit to %d znaków).\n"
@@ -9597,9 +9605,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "przełączenie pomiędzy listami kluczy tajnych i publicznych"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Najpierw trzeba użyć polecenia \"przeł\".\n"
-
#~ msgid "Passphrase"
#~ msgstr "Hasło"
diff --git a/po/pt.po b/po/pt.po
index b905742..e95b887 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -338,9 +338,6 @@ msgstr "|FICHEIRO|carregar módulo de extensão FICHEIRO"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "procurar chaves num servidor de chaves"
@@ -1288,6 +1285,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "AVISO: %s sobrepõe %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Por favor utilize o comando \"toggle\" primeiro.\n"
+
#, fuzzy, c-format
msgid "%s is not compliant with %s mode\n"
msgstr "%s não faz sentido com %s!\n"
@@ -5219,7 +5224,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "impossível abrir dados assinados `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "chave %08lX: sem ID de utilizador\n"
#, fuzzy, c-format
@@ -9196,9 +9201,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "alterna entre listagem de chave secreta e pública"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Por favor utilize o comando \"toggle\" primeiro.\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "frase secreta incorrecta"
diff --git a/po/ro.po b/po/ro.po
index 0cf134b..d938da7 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -350,9 +350,6 @@ msgstr "|FIŞIER|încarcă modulul extensie FIŞIER"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "caută pentru chei pe un server de chei"
@@ -1305,6 +1302,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "AVERTISMENT: "
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Vă rugăm folosiţi mai întâi comanda \"toggle\".\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5238,7 +5243,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "nu pot deschide date semnate `%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "cheia %s nu are nici un ID utilizator\n"
#, c-format
@@ -9283,9 +9288,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "comută între listele de chei secrete şi publice"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Vă rugăm folosiţi mai întâi comanda \"toggle\".\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "frază-parolă incorectă"
diff --git a/po/ru.po b/po/ru.po
index 8cca5f2..652803e 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -331,9 +331,6 @@ msgstr "|FILE|взять параметры из файла FILE"
msgid "do not detach from the console"
msgstr "не отсоединяться от консоли"
-msgid "do not grab keyboard and mouse"
-msgstr "не захватывать клавиатуру и мышь"
-
msgid "use a log file for the server"
msgstr "использовать файл журнала для сервера"
@@ -1210,6 +1207,13 @@ msgstr "сервер '%s' старше нас (%s < %s)"
msgid "WARNING: %s\n"
msgstr "Внимание: %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, c-format
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr ""
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -4935,7 +4939,7 @@ msgstr "не могу открыть подписанные данные fd=%d:
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "сертификат не пригоден для шифрования\n"
#, c-format
@@ -8591,6 +8595,9 @@ msgstr ""
"Синтаксис: gpg-check-pattern [параметры] файл_образцов\n"
"Проверить фразу-пароль, поступающую из stdin, по файлу образцов\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "не захватывать клавиатуру и мышь"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Ошибка: Слишком длинный URL (предел - %d символов).\n"
diff --git a/po/sk.po b/po/sk.po
index 6aaf628..d8b898c 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -338,9 +338,6 @@ msgstr "|SÚBOR|nahrať rozširujúci modul SÚBOR"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "vyhľadať kľúče na serveri kľúčov"
@@ -1288,6 +1285,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "VAROVANIE: %s prepíše %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Prosím, najskôr použite príkaz \"toggle\" (prepnúť).\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5229,7 +5234,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "nemôžem otvoriť podpísané dáta '%s'\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "kľúč %08lX: chyba identifikátor užívateľa\n"
#, fuzzy, c-format
@@ -9219,9 +9224,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "prepnúť medzi vypísaním zoznamu tajných a verejných kľúčov"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Prosím, najskôr použite príkaz \"toggle\" (prepnúť).\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "nesprávne heslo"
diff --git a/po/sv.po b/po/sv.po
index dcd53d1..ca7ba7e 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -384,9 +384,6 @@ msgstr "|FIL|läs inställningar från FIL"
msgid "do not detach from the console"
msgstr "frigör inte från konsollen"
-msgid "do not grab keyboard and mouse"
-msgstr "fånga inte tangentbord och mus"
-
msgid "use a log file for the server"
msgstr "använd en loggfil för servern"
@@ -1358,6 +1355,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "VARNING: %s gäller istället för %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Använd kommandot \"toggle\" först.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5355,7 +5360,7 @@ msgstr "kan inte öppna signerad data fd=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "certifikatet är inte användbart för kryptering\n"
#, c-format
@@ -9347,6 +9352,9 @@ msgstr ""
"Syntax: gpg-check-pattern [flaggor] mönsterfil\n"
"Kontrollera en lösenfras angiven på standard in mot mönsterfilen\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "fånga inte tangentbord och mus"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Fel: URL:en är för lång (gränsen är %d tecken).\n"
@@ -9668,9 +9676,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "växla mellan att lista hemliga och publika nycklar"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Använd kommandot \"toggle\" först.\n"
-
#~ msgid "Passphrase"
#~ msgstr "Lösenfras"
diff --git a/po/tr.po b/po/tr.po
index 0fa3c40..c1743f3 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -354,9 +354,6 @@ msgstr "|DOSYA|seçenekler DOSYAdan okunur"
msgid "do not detach from the console"
msgstr "konsoldan kopulmaz"
-msgid "do not grab keyboard and mouse"
-msgstr "klavye ve fare gaspedilmez"
-
msgid "use a log file for the server"
msgstr "sunucu için bir günlük dosyası kullanılır"
@@ -1322,6 +1319,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "UYARI: %s %s'i aşıyor\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "lütfen önce \"seçmece\" komutunu kullanın.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5292,7 +5297,7 @@ msgstr "imzalı veri fd=%d açılamadı: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "sertifika şifreleme için elverişli değil\n"
#, c-format
@@ -9251,6 +9256,9 @@ msgstr ""
"Standart girdiden verilen anahtar parolasını örüntü dosyasıyla "
"karşılaştırır\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "klavye ve fare gaspedilmez"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Hata: URL çok uzun (sınır: %d karakter).\n"
@@ -9574,9 +9582,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "genel ve gizli anahtar listeleri arasında yer değiştirir"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "lütfen önce \"seçmece\" komutunu kullanın.\n"
-
#~ msgid "Passphrase"
#~ msgstr "Anahtar Parolası"
diff --git a/po/uk.po b/po/uk.po
index 818b731..abbe116 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -327,9 +327,6 @@ msgstr "|FILE|прочитати параметри з вказаного фай
msgid "do not detach from the console"
msgstr "не від’єднувати від консолі"
-msgid "do not grab keyboard and mouse"
-msgstr "не захоплювати керування клавіатурою і мишею"
-
msgid "use a log file for the server"
msgstr "використовувати файл журналу для сервера"
@@ -1214,6 +1211,14 @@ msgstr "сервер «%s» має версію, старішу за нашу (%
msgid "WARNING: %s\n"
msgstr "УВАГА: %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "Скористайтеся спочатку командою «toggle».\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -4994,7 +4999,7 @@ msgstr "не вдалося відкрити підписані дані fd=%d:
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "сертифікат непридатний для шифрування\n"
#, c-format
@@ -8677,6 +8682,9 @@ msgstr ""
"Синтаксис: gpg-check-pattern [параметри] файл_шаблонів\n"
"Перевірити пароль, вказаний у stdin, за допомогою файла_шаблонів\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "не захоплювати керування клавіатурою і мишею"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "Помилка: адреса є занадто довгою (максимум — %d символів).\n"
@@ -9060,9 +9068,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "перемкнутися між списками закритих і відкритих ключів"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "Скористайтеся спочатку командою «toggle».\n"
-
#~ msgid "Passphrase"
#~ msgstr "Пароль"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index acee43b..0cf93cb 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -348,9 +348,6 @@ msgstr "从‘%s’读取选项\n"
msgid "do not detach from the console"
msgstr ""
-msgid "do not grab keyboard and mouse"
-msgstr ""
-
#, fuzzy
msgid "use a log file for the server"
msgstr "在公钥服务器上搜寻密钥"
@@ -1286,6 +1283,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "警告:"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "请先使用“toggle”指令。\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -5108,7 +5113,7 @@ msgid "can't open signed data fd=%d: %s\n"
msgstr "无法打开有签名的数据‘%s’\n"
#, fuzzy, c-format
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "密钥 %s:没有有效的用户标识\n"
#, c-format
@@ -9095,9 +9100,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "在私钥和公钥清单间切换"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "请先使用“toggle”指令。\n"
-
#, fuzzy
#~ msgid "Passphrase"
#~ msgstr "错误的密码"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 83f9ca9..a3f29b6 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -329,9 +329,6 @@ msgstr "|檔案|從指定檔案中讀取選項"
msgid "do not detach from the console"
msgstr "不要從 console 分離"
-msgid "do not grab keyboard and mouse"
-msgstr "不要奪取鍵盤及滑鼠"
-
msgid "use a log file for the server"
msgstr "為伺服器使用日誌檔"
@@ -1215,6 +1212,14 @@ msgstr ""
msgid "WARNING: %s\n"
msgstr "警告: %s 會推翻 %s\n"
+msgid "Note: Outdated servers may lack important security fixes.\n"
+msgstr ""
+
+#, fuzzy, c-format
+#| msgid "Please use the command \"toggle\" first.\n"
+msgid "Note: Use the command \"%s\" to restart them.\n"
+msgstr "請先使用 \"toggle\" 指令.\n"
+
#, fuzzy, c-format
#| msgid "%s does not yet work with %s\n"
msgid "%s is not compliant with %s mode\n"
@@ -4908,7 +4913,7 @@ msgstr "無法開啟被簽署過的資料 fd=%d: %s\n"
#, fuzzy, c-format
#| msgid "certificate is not usable for encryption\n"
-msgid "Note: key %s is not suitable for encryption in %s mode\n"
+msgid "key %s is not suitable for decryption in %s mode\n"
msgstr "憑證無法用於加密\n"
#, c-format
@@ -8461,6 +8466,9 @@ msgstr ""
"語法: gpg-check-pattern [選項] 樣式檔案\n"
"用樣式檔案來檢查由標準輸入給定的密語\n"
+#~ msgid "do not grab keyboard and mouse"
+#~ msgstr "不要奪取鍵盤及滑鼠"
+
#~ msgid "Error: URL too long (limit is %d characters).\n"
#~ msgstr "錯誤: URL 太長 (上限是 %d 個字符).\n"
@@ -8774,9 +8782,6 @@ msgstr ""
#~ msgid "toggle between the secret and public key listings"
#~ msgstr "在私鑰清單和公鑰清單間切換"
-#~ msgid "Please use the command \"toggle\" first.\n"
-#~ msgstr "請先使用 \"toggle\" 指令.\n"
-
#~ msgid "Passphrase"
#~ msgstr "密語"
diff --git a/sm/call-agent.c b/sm/call-agent.c
index ba8fb12..772c9c3 100644
--- a/sm/call-agent.c
+++ b/sm/call-agent.c
@@ -108,6 +108,13 @@ warn_version_mismatch (ctrl_t ctrl, assuan_context_t ctx,
else
{
log_info (_("WARNING: %s\n"), warn);
+ if (!opt.quiet)
+ {
+ log_info (_("Note: Outdated servers may lack important"
+ " security fixes.\n"));
+ log_info (_("Note: Use the command \"%s\" to restart them.\n"),
+ "gpgconf --kill all");
+ }
gpgsm_status2 (ctrl, STATUS_WARNING, "server_version_mismatch 0",
warn, NULL);
xfree (warn);
diff --git a/sm/call-dirmngr.c b/sm/call-dirmngr.c
index 5ee15b7..9301940 100644
--- a/sm/call-dirmngr.c
+++ b/sm/call-dirmngr.c
@@ -175,6 +175,13 @@ warn_version_mismatch (ctrl_t ctrl, assuan_context_t ctx,
else
{
log_info (_("WARNING: %s\n"), warn);
+ if (!opt.quiet)
+ {
+ log_info (_("Note: Outdated servers may lack important"
+ " security fixes.\n"));
+ log_info (_("Note: Use the command \"%s\" to restart them.\n"),
+ "gpgconf --kill all");
+ }
gpgsm_status2 (ctrl, STATUS_WARNING, "server_version_mismatch 0",
warn, NULL);
xfree (warn);
diff --git a/sm/decrypt.c b/sm/decrypt.c
index cdce1d4..60ed14a 100644
--- a/sm/decrypt.c
+++ b/sm/decrypt.c
@@ -480,19 +480,22 @@ gpgsm_decrypt (ctrl_t ctrl, int in_fd, estream_t out_fp)
unsigned int nbits;
int pk_algo = gpgsm_get_key_algo_info (cert, &nbits);
- /* Print compliance warning. */
- if (! gnupg_pk_is_compliant (opt.compliance,
- pk_algo, NULL, nbits, NULL))
+ /* Check compliance. */
+ if (!gnupg_pk_is_allowed (opt.compliance,
+ PK_USE_DECRYPTION,
+ pk_algo, NULL, nbits, NULL))
{
char kidstr[10+1];
snprintf (kidstr, sizeof kidstr, "0x%08lX",
gpgsm_get_short_fingerprint (cert, NULL));
log_info
- (_("Note: key %s is not suitable for encryption"
+ (_("key %s is not suitable for decryption"
" in %s mode\n"),
kidstr,
gnupg_compliance_option_string (opt.compliance));
+ rc = gpg_error (GPG_ERR_PUBKEY_ALGO);
+ goto oops;
}
/* Check that all certs are compliant with CO_DE_VS. */
@@ -504,9 +507,11 @@ gpgsm_decrypt (ctrl_t ctrl, int in_fd, estream_t out_fp)
oops:
if (rc)
- /* We cannot check compliance of certs that we
- * don't have. */
- is_de_vs = 0;
+ {
+ /* We cannot check compliance of certs that we
+ * don't have. */
+ is_de_vs = 0;
+ }
xfree (issuer);
xfree (serial);
ksba_cert_release (cert);
diff --git a/sm/keylist.c b/sm/keylist.c
index abec049..24c86e1 100644
--- a/sm/keylist.c
+++ b/sm/keylist.c
@@ -541,16 +541,16 @@ list_cert_colon (ctrl_t ctrl, ksba_cert_t cert, unsigned int validity,
xfree (fpr); fpr = NULL; chain_id = NULL;
xfree (chain_id_buffer); chain_id_buffer = NULL;
- if (opt.with_key_data)
+ /* Always print the keygrip. */
+ if ( (p = gpgsm_get_keygrip_hexstring (cert)))
{
- if ( (p = gpgsm_get_keygrip_hexstring (cert)))
- {
- es_fprintf (fp, "grp:::::::::%s:\n", p);
- xfree (p);
- }
- print_key_data (cert, fp);
+ es_fprintf (fp, "grp:::::::::%s:\n", p);
+ xfree (p);
}
+ if (opt.with_key_data)
+ print_key_data (cert, fp);
+
kludge_uid = NULL;
for (idx=0; (p = ksba_cert_get_subject (cert,idx)); idx++)
{
diff --git a/tests/gpgscm/ffi.c b/tests/gpgscm/ffi.c
index 4c03ba6..dde5b52 100644
--- a/tests/gpgscm/ffi.c
+++ b/tests/gpgscm/ffi.c
@@ -1442,6 +1442,22 @@ ffi_init (scheme *sc, const char *argv0, const char *scriptname,
#endif
);
+ ffi_define (sc, "*maintainer-mode*",
+#if MAINTAINER_MODE
+ sc->T
+#else
+ sc->F
+#endif
+ );
+
+ ffi_define (sc, "*run-all-tests*",
+#if RUN_ALL_TESTS
+ sc->T
+#else
+ sc->F
+#endif
+ );
+
ffi_define (sc, "*stdin*",
sc->vptr->mk_port_from_file (sc, stdin, port_input));
diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm
index 40ba7e3..5141002 100644
--- a/tests/gpgscm/tests.scm
+++ b/tests/gpgscm/tests.scm
@@ -613,6 +613,7 @@
(xfailed (filter-tests 'XFAIL))
(xpassed (filter-tests 'XPASS))
(skipped (filter-tests 'SKIP)))
+ (echo "===================")
(echo (length procs) "tests run,"
(length (filter-tests 'PASS)) "succeeded,"
(length failed) "failed,"
@@ -623,6 +624,7 @@
(print-tests xfailed "Expectedly failed tests:")
(print-tests xpassed "Unexpectedly passed tests:")
(print-tests skipped "Skipped tests:")
+ (echo "===================")
(+ (length failed) (length xpassed))))
(define (xml)
diff --git a/tests/openpgp/all-tests.scm b/tests/openpgp/all-tests.scm
index 4dd6d6f..d687fe4 100644
--- a/tests/openpgp/all-tests.scm
+++ b/tests/openpgp/all-tests.scm
@@ -51,18 +51,28 @@
(parse-makefile-expand (in-srcdir "tests" "openpgp" "Makefile.am")
(lambda (filename port key) (parse-makefile port key))
"XTESTS"))
- (append
- (map (lambda (name)
- (test::scm setup
- (path-join "tests" "openpgp" name)
- (in-srcdir "tests" "openpgp" name))) all-tests)
- (map (lambda (name)
- (test::scm setup-use-keyring
- (qualify (path-join "tests" "openpgp" name) "use-keyring")
- (in-srcdir "tests" "openpgp" name)
- "--use-keyring")) all-tests)
- (map (lambda (name)
- (test::scm setup-extended-key-format
- (qualify (path-join "tests" "openpgp" name) "extended-key-format")
- (in-srcdir "tests" "openpgp" name)
- "--extended-key-format")) all-tests)))
+
+ (define tests
+ (map (lambda (name)
+ (test::scm setup
+ (path-join "tests" "openpgp" name)
+ (in-srcdir "tests" "openpgp" name))) all-tests))
+
+ (when *run-all-tests*
+ (set! tests
+ (append
+ tests
+ (map (lambda (name)
+ (test::scm setup-use-keyring
+ (qualify (path-join "tests" "openpgp" name)
+ "use-keyring")
+ (in-srcdir "tests" "openpgp" name)
+ "--use-keyring")) all-tests)
+ (map (lambda (name)
+ (test::scm setup-extended-key-format
+ (qualify (path-join "tests" "openpgp" name)
+ "extended-key-format")
+ (in-srcdir "tests" "openpgp" name)
+ "--extended-key-format")) all-tests))))
+
+ tests)
diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm
index b5e3078..358efa6 100644
--- a/tests/openpgp/defs.scm
+++ b/tests/openpgp/defs.scm
@@ -338,6 +338,8 @@
"no-secmem-warning"
"no-permission-warning"
"batch"
+ "no-auto-key-retrieve"
+ "no-auto-key-locate"
"allow-weak-digest-algos"
(if have-opt-always-trust
"no-auto-check-trustdb" "#no-auto-check-trustdb")
diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c
index 746aa53..594f28a 100644
--- a/tools/gpg-wks-client.c
+++ b/tools/gpg-wks-client.c
@@ -551,7 +551,14 @@ command_supported (char *userid)
char *addrspec = NULL;
char *submission_to = NULL;
- addrspec = mailbox_from_userid (userid);
+ if (!strchr (userid, '@'))
+ {
+ char *tmp = xstrconcat ("foo@", userid, NULL);
+ addrspec = mailbox_from_userid (tmp);
+ xfree (tmp);
+ }
+ else
+ addrspec = mailbox_from_userid (userid);
if (!addrspec)
{
log_error (_("\"%s\" is not a proper mail address\n"), userid);
diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c
index cfc9fa3..b066dad 100644
--- a/tools/gpgconf-comp.c
+++ b/tools/gpgconf-comp.c
@@ -550,6 +550,9 @@ static gc_option_t gc_options_gpg_agent[] =
GC_LEVEL_ADVANCED,
"gnupg", "allow passphrase to be prompted through Emacs",
GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT },
+ { "grab", GC_OPT_FLAG_RUNTIME, GC_LEVEL_EXPERT,
+ "gnupg", NULL,
+ GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT },
{ "no-allow-external-cache", GC_OPT_FLAG_RUNTIME,
GC_LEVEL_BASIC, "gnupg", "disallow the use of an external password cache",
GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT },
@@ -559,9 +562,6 @@ static gc_option_t gc_options_gpg_agent[] =
{ "no-allow-loopback-pinentry", GC_OPT_FLAG_RUNTIME,
GC_LEVEL_EXPERT, "gnupg", "disallow caller to override the pinentry",
GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT },
- { "no-grab", GC_OPT_FLAG_RUNTIME, GC_LEVEL_EXPERT,
- "gnupg", "do not grab keyboard and mouse",
- GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT },
{ "Passphrase policy",
GC_OPT_FLAG_GROUP, GC_LEVEL_ADVANCED,
@@ -757,6 +757,11 @@ static gc_option_t gc_options_gpg[] =
GC_ARG_TYPE_STRING, GC_BACKEND_GPG },
{ "auto-key-retrieve", GC_OPT_FLAG_NONE, GC_LEVEL_INVISIBLE,
NULL, NULL, GC_ARG_TYPE_NONE, GC_BACKEND_GPG },
+ { "no-auto-key-retrieve", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED,
+ NULL, NULL, GC_ARG_TYPE_NONE, GC_BACKEND_GPG },
+ { "disable-dirmngr", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT,
+ "gnupg", N_("disable all access to the dirmngr"),
+ GC_ARG_TYPE_NONE, GC_BACKEND_GPG },
GC_OPTION_NULL
diff --git a/tools/rfc822parse.c b/tools/rfc822parse.c
index ab692bd..e8cdb02 100644
--- a/tools/rfc822parse.c
+++ b/tools/rfc822parse.c
@@ -14,7 +14,7 @@
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, see <https://www.gnu.org/licenses/>.
-g */
+ */
/* According to RFC822 binary zeroes are allowed at many places. We do