diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2021-02-09 16:00:46 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2021-02-09 16:00:46 +0900 |
commit | d5a3e1c5fe16a0142f2a4554c4cfed53453bdaa2 (patch) | |
tree | 509fadb6ecb2174394d85b588b6cc74946f8d239 | |
parent | e299a90138c4ee04892f06ea99394c0f55d311db (diff) | |
download | gpg2-d5a3e1c5fe16a0142f2a4554c4cfed53453bdaa2.tar.gz gpg2-d5a3e1c5fe16a0142f2a4554c4cfed53453bdaa2.tar.bz2 gpg2-d5a3e1c5fe16a0142f2a4554c4cfed53453bdaa2.zip |
Imported Upstream version 2.2.16upstream/2.2.16
-rw-r--r-- | NEWS | 67 | ||||
-rw-r--r-- | agent/agent.h | 1 | ||||
-rw-r--r-- | agent/call-scd.c | 9 | ||||
-rw-r--r-- | agent/command-ssh.c | 4 | ||||
-rw-r--r-- | agent/command.c | 4 | ||||
-rw-r--r-- | agent/findkey.c | 7 | ||||
-rw-r--r-- | agent/gpg-agent.c | 3 | ||||
-rw-r--r-- | build-aux/speedo.mk | 78 | ||||
-rw-r--r-- | common/Makefile.am | 4 | ||||
-rw-r--r-- | common/mkstrtable.awk | 10 | ||||
-rw-r--r-- | common/userids.c | 7 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | dirmngr/domaininfo.c | 125 | ||||
-rw-r--r-- | dirmngr/http.c | 3 | ||||
-rw-r--r-- | dirmngr/ks-engine-hkp.c | 4 | ||||
-rw-r--r-- | dirmngr/ks-engine-http.c | 4 | ||||
-rw-r--r-- | dirmngr/ocsp.c | 109 | ||||
-rw-r--r-- | doc/dirmngr.texi | 4 | ||||
-rw-r--r-- | doc/gpg.texi | 74 | ||||
-rw-r--r-- | doc/tools.texi | 13 | ||||
-rw-r--r-- | g10/armor.c | 4 | ||||
-rw-r--r-- | g10/build-packet.c | 8 | ||||
-rw-r--r-- | g10/decrypt.c | 7 | ||||
-rw-r--r-- | g10/delkey.c | 103 | ||||
-rw-r--r-- | g10/ecdh.c | 2 | ||||
-rw-r--r-- | g10/exec.c | 110 | ||||
-rw-r--r-- | g10/export.c | 9 | ||||
-rw-r--r-- | g10/getkey.c | 3 | ||||
-rw-r--r-- | g10/import.c | 25 | ||||
-rw-r--r-- | g10/keydb.c | 15 | ||||
-rw-r--r-- | g10/keygen.c | 60 | ||||
-rw-r--r-- | g10/keyserver.c | 9 | ||||
-rw-r--r-- | g10/main.h | 2 | ||||
-rw-r--r-- | g10/options.h | 2 | ||||
-rw-r--r-- | g10/packet.h | 5 | ||||
-rw-r--r-- | g10/parse-packet.c | 15 | ||||
-rw-r--r-- | g10/photoid.c | 16 | ||||
-rw-r--r-- | g10/plaintext.c | 3 | ||||
-rw-r--r-- | g10/sign.c | 7 | ||||
-rw-r--r-- | g10/tofu.c | 32 | ||||
-rw-r--r-- | kbx/keybox-init.c | 20 | ||||
-rw-r--r-- | kbx/keybox-search.c | 34 | ||||
-rw-r--r-- | kbx/keybox-update.c | 2 | ||||
-rw-r--r-- | m4/iconv.m4 | 222 | ||||
-rw-r--r-- | po/ca.po | 118 | ||||
-rw-r--r-- | po/cs.po | 145 | ||||
-rw-r--r-- | po/da.po | 131 | ||||
-rw-r--r-- | po/de.po | 360 | ||||
-rw-r--r-- | po/el.po | 115 | ||||
-rw-r--r-- | po/eo.po | 118 | ||||
-rw-r--r-- | po/es.po | 120 | ||||
-rw-r--r-- | po/et.po | 115 | ||||
-rw-r--r-- | po/fi.po | 115 | ||||
-rw-r--r-- | po/fr.po | 134 | ||||
-rw-r--r-- | po/gl.po | 120 | ||||
-rw-r--r-- | po/hu.po | 115 | ||||
-rw-r--r-- | po/id.po | 115 | ||||
-rw-r--r-- | po/it.po | 115 | ||||
-rw-r--r-- | po/ja.po | 118 | ||||
-rw-r--r-- | po/nb.po | 117 | ||||
-rw-r--r-- | po/pl.po | 133 | ||||
-rw-r--r-- | po/pt.po | 115 | ||||
-rw-r--r-- | po/ro.po | 118 | ||||
-rw-r--r-- | po/ru.po | 124 | ||||
-rw-r--r-- | po/sk.po | 115 | ||||
-rw-r--r-- | po/sv.po | 131 | ||||
-rw-r--r-- | po/tr.po | 132 | ||||
-rw-r--r-- | po/uk.po | 129 | ||||
-rw-r--r-- | po/zh_CN.po | 112 | ||||
-rw-r--r-- | po/zh_TW.po | 130 | ||||
-rw-r--r-- | scd/app-openpgp.c | 4 | ||||
-rw-r--r-- | scd/scdaemon.c | 9 | ||||
-rw-r--r-- | sm/certdump.c | 3 | ||||
-rw-r--r-- | sm/certlist.c | 45 | ||||
-rw-r--r-- | sm/gpgsm.h | 2 | ||||
-rw-r--r-- | sm/sign.c | 6 | ||||
-rw-r--r-- | tools/gpgconf-comp.c | 43 | ||||
-rw-r--r-- | tools/gpgconf.c | 1 |
78 files changed, 2862 insertions, 1908 deletions
@@ -1,3 +1,68 @@ +Noteworthy changes in version 2.2.16 (2019-05-28) +------------------------------------------------- + + * gpg,gpgsm: Fix deadlock on Windows due to a keybox sharing + violation. [#4505] + + * gpg: Allow deletion of subkeys with --delete-key. This finally + makes the bang-suffix work as expected for that command. [#4457] + + * gpg: Replace SHA-1 by SHA-256 in self-signatures when updating + them with --quick-set-expire or --quick-set-primary-uid. [#4508] + + * gpg: Improve the photo image viewer selection. [#4334] + + * gpg: Fix decryption with --use-embedded-filename. [#4500] + + * gpg: Remove hints on using the --keyserver option. [#4512] + + * gpg: Fix export of certain secret keys with comments. [#4490] + + * gpg: Reject too long user-ids in --quick-gen-key. [#4532] + + * gpg: Fix a double free in the best key selection code. [#4462] + + * gpg: Fix the key generation dialog for switching back from EdDSA + to ECDSA. + + * gpg: Use AES-192 with SHA-384 to comply with RFC-6637. + + * gpg: Use only the addrspec from the Signer's UID subpacket to + mitigate a problem with another implementation. + + * gpg: Skip invalid packets during a keyring listing and sync + diagnostics with the output. + + * gpgsm: Avoid confusing diagnostic when signing with the default + key. [#4535] + + * agent: Do not delete any secret key in --dry-run mode. + + * agent: Fix failures on 64 bit big-endian boxes related to URIs in + a keyfile. [#4501] + + * agent: Stop scdaemon after a reload with disable-scdaemon newly + configured. [#4326] + + * dirmngr: Improve caching algorithm for WKD domains. + + * dirmngr: Support other hash algorithms than SHA-1 for OCSP. [#3966] + + * gpgconf: Make --homedir work for --launch. [#4496] + + * gpgconf: Before --launch check for a valid config file. [#4497] + + * wkd: Do not import more than 5 keys from one WKD address. + + * wkd: Accept keys which are stored in armored format in the + directory. + + * The installer for Windows now comes with signed binaries. + + Release-info: https://dev.gnupg.org/T4509 + See-also: gnupg-announce/2019q2/000438.html + + Noteworthy changes in version 2.2.15 (2019-03-26) ------------------------------------------------- @@ -50,7 +115,7 @@ Noteworthy changes in version 2.2.14 (2019-03-19) * dirmngr: Fix build problems with gcc 9 in libdns. - * gpgconf: New option --show-socket for use wity --launch. + * gpgconf: New option --show-socket for use with --launch. * gpgtar: Make option -C work for archive creation. diff --git a/agent/agent.h b/agent/agent.h index 58dd7df..e934ec8 100644 --- a/agent/agent.h +++ b/agent/agent.h @@ -597,6 +597,7 @@ int agent_card_scd (ctrl_t ctrl, const char *cmdline, int (*getpin_cb)(void *, const char *, const char *, char*, size_t), void *getpin_cb_arg, void *assuan_context); +void agent_card_killscd (void); /*-- learncard.c --*/ diff --git a/agent/call-scd.c b/agent/call-scd.c index 51d9abd..6438693 100644 --- a/agent/call-scd.c +++ b/agent/call-scd.c @@ -1324,3 +1324,12 @@ agent_card_scd (ctrl_t ctrl, const char *cmdline, return unlock_scd (ctrl, 0); } + +void +agent_card_killscd (void) +{ + if (primary_scd_ctx == NULL) + return; + assuan_transact (primary_scd_ctx, "KILLSCD", + NULL, NULL, NULL, NULL, NULL, NULL); +} diff --git a/agent/command-ssh.c b/agent/command-ssh.c index 3cfd8aa..d6729b7 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -3003,8 +3003,8 @@ ssh_key_to_protected_buffer (gcry_sexp_t key, const char *passphrase, goto out; } - gcry_sexp_sprint (key, GCRYSEXP_FMT_CANON, buffer_new, buffer_new_n); - /* FIXME: guarantee? */ + buffer_new_n = gcry_sexp_sprint (key, GCRYSEXP_FMT_CANON, + buffer_new, buffer_new_n); if (*passphrase) err = agent_protect (buffer_new, passphrase, buffer, buffer_n, 0, -1); diff --git a/agent/command.c b/agent/command.c index 4839ffe..392c378 100644 --- a/agent/command.c +++ b/agent/command.c @@ -1231,8 +1231,8 @@ do_one_keyinfo (ctrl_t ctrl, const unsigned char *grip, assuan_context_t ctx, } -/* Entry int for the command KEYINFO. This function handles the - command option processing. For details see hlp_keyinfo above. */ +/* Entry into the command KEYINFO. This function handles the + * command option processing. For details see hlp_keyinfo above. */ static gpg_error_t cmd_keyinfo (assuan_context_t ctx, char *line) { diff --git a/agent/findkey.c b/agent/findkey.c index 89a18fa..bdb6ab4 100644 --- a/agent/findkey.c +++ b/agent/findkey.c @@ -1230,6 +1230,7 @@ agent_public_key_from_file (ctrl_t ctrl, gcry_sexp_t uri_sexp, comment_sexp; const char *uri, *comment; size_t uri_length, comment_length; + int uri_intlen, comment_intlen; char *format, *p; void *args[2+7+2+2+1]; /* Size is 2 + max. # of elements + 2 for uri + 2 for comment + end-of-list. */ @@ -1311,14 +1312,16 @@ agent_public_key_from_file (ctrl_t ctrl, { p = stpcpy (p, "(uri %b)"); assert (argidx+1 < DIM (args)); - args[argidx++] = (void *)&uri_length; + uri_intlen = (int)uri_length; + args[argidx++] = (void *)&uri_intlen; args[argidx++] = (void *)&uri; } if (comment) { p = stpcpy (p, "(comment %b)"); assert (argidx+1 < DIM (args)); - args[argidx++] = (void *)&comment_length; + comment_intlen = (int)comment_length; + args[argidx++] = (void *)&comment_intlen; args[argidx++] = (void*)&comment; } *p++ = ')'; diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index ffd85d1..87656a1 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -2434,6 +2434,9 @@ agent_sighup_action (void) "pinentry" binary that one can be used in case the "pinentry-basic" fallback was in use. */ gnupg_module_name_flush_some (); + + if (opt.disable_scdaemon) + agent_card_killscd (); } diff --git a/build-aux/speedo.mk b/build-aux/speedo.mk index 9c4189a..d1f9800 100644 --- a/build-aux/speedo.mk +++ b/build-aux/speedo.mk @@ -157,9 +157,41 @@ INST_NAME=gnupg-w32 # Use this to override the installaion directory for native builds. INSTALL_PREFIX=none -# The Authenticode key and cert chain used to sign the Windows installer +# The Authenticode key and cert chain used to sign the Windows +# installer If AUTHENTICODE_SIGNHOST is specified, signing is done on +# that host using the Windows signtool. The signhost is usually an +# entry in .ssh/config. Depending on the used token it might be +# necessary to allow single signon and unlock the token before running +# this makefile. All files given in AUTHENTICODE_FILES are signed +# before they are put into the installer. +AUTHENTICODE_SIGNHOST=authenticode-signhost +AUTHENTICODE_TOOL='"C:\Program Files (x86)\Windows Kits\10\bin\signtool.exe"' AUTHENTICODE_KEY=${HOME}/.gnupg/g10code-authenticode-key.p12 AUTHENTICODE_CERTS=${HOME}/.gnupg/g10code-authenticode-certs.pem +AUTHENTICODE_FILES= \ + dirmngr.exe \ + dirmngr_ldap.exe \ + gpg-agent.exe \ + gpg-connect-agent.exe \ + gpg-preset-passphrase.exe \ + gpg-wks-client.exe \ + gpg.exe \ + gpgconf.exe \ + gpgme-w32spawn.exe \ + gpgsm.exe \ + gpgtar.exe \ + gpgv.exe \ + libassuan-0.dll \ + libgcrypt-20.dll \ + libgpg-error-0.dll \ + libgpgme-11.dll \ + libksba-8.dll \ + libnpth-0.dll \ + libsqlite3-0.dll \ + pinentry-w32.exe \ + scdaemon.exe \ + zlib1.dll + # Directory names. @@ -1211,7 +1243,22 @@ ifeq ($(WITH_GUI),1) extra_installer_options += -DWITH_GUI=1 endif +# Note that we sign only when doing the final installer. installer: all w32_insthelpers $(w32src)/inst-options.ini $(bdir)/README.txt + (set -e;\ + cd "$(idir)"; \ + if echo "$(idir)" | grep -q '/PLAY-release/' ; then \ + for f in $(AUTHENTICODE_FILES); do \ + if [ -f "bin/$$f" ]; then \ + $(call AUTHENTICODE_sign,"bin/$$f","bin/$$f");\ + elif [ -f "libexec/$$f" ]; then \ + $(call AUTHENTICODE_sign,"libexec/$$f","libexec/$$f");\ + else \ + echo "speedo: WARNING: file '$$f' not available for signing";\ + fi;\ + done; \ + fi \ + ) $(MAKENSIS) -V2 \ -DINST_DIR=$(idir) \ -DINST6_DIR=$(idir6) \ @@ -1237,6 +1284,28 @@ define MKSWDB_commands ) | tee $(1).swdb endef +# Sign the file $1 and save the result as $2 +define AUTHENTICODE_sign + set -e;\ + if [ -n "$(AUTHENTICODE_SIGNHOST)" ]; then \ + echo "speedo: Signing via host $(AUTHENTICODE_SIGNHOST)";\ + scp $(1) "$(AUTHENTICODE_SIGNHOST):a.exe" ;\ + ssh "$(AUTHENTICODE_SIGNHOST)" $(AUTHENTICODE_TOOL) sign \ + /n '"g10 Code GmbH"' \ + /tr 'http://rfc3161timestamp.globalsign.com/advanced' /td sha256 \ + /fd sha256 /du https://gnupg.org a.exe ;\ + scp "$(AUTHENTICODE_SIGNHOST):a.exe" $(2);\ + echo "speedo: signed file is '$(2)'" ;\ + else \ + echo "speedo: Signing using key $(AUTHENTICODE_KEY)";\ + osslsigncode sign -certs $(AUTHENTICODE_CERTS) \ + -pkcs12 $(AUTHENTICODE_KEY) -askpass \ + -ts "http://timestamp.globalsign.com/scripts/timstamp.dll" \ + -h sha256 -n GnuPG -i https://gnupg.org \ + -in $(1) -out $(2) ;\ + fi +endef + # Build the installer from the source tarball. installer-from-source: dist-source @@ -1265,13 +1334,8 @@ sign-installer: exefile="$(INST_NAME)-$(INST_VERSION)_$(BUILD_DATESTR).exe" ;\ echo "speedo: /*" ;\ echo "speedo: * Signing installer" ;\ - echo "speedo: * Key: $(AUTHENTICODE_KEY)";\ echo "speedo: */" ;\ - osslsigncode sign -certs $(AUTHENTICODE_CERTS)\ - -pkcs12 $(AUTHENTICODE_KEY) -askpass \ - -ts "http://timestamp.globalsign.com/scripts/timstamp.dll" \ - -h sha256 -n GnuPG -i https://gnupg.org \ - -in "PLAY/inst/$$exefile" -out "../../$$exefile" ;\ + $(call AUTHENTICODE_sign,"PLAY/inst/$$exefile","../../$$exefile");\ exefile="../../$$exefile" ;\ $(call MKSWDB_commands,$${exefile},$${reldate}); \ echo "speedo: /*" ;\ diff --git a/common/Makefile.am b/common/Makefile.am index fcbe7ea..3dbad0c 100644 --- a/common/Makefile.am +++ b/common/Makefile.am @@ -148,13 +148,13 @@ if MAINTAINER_MODE audit-events.h: Makefile.am mkstrtable.awk exaudit.awk audit.h $(AWK) -f $(srcdir)/exaudit.awk $(srcdir)/audit.h \ | $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=3 -v nogettext=1 \ - -v namespace=eventstr_ > $(srcdir)/audit-events.h + -v pkg_namespace=eventstr_ > $(srcdir)/audit-events.h # Create the status-codes.h include file from status.h status-codes.h: Makefile.am mkstrtable.awk exstatus.awk status.h $(AWK) -f $(srcdir)/exstatus.awk $(srcdir)/status.h \ | $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=3 -v nogettext=1 \ - -v namespace=statusstr_ > $(srcdir)/status-codes.h + -v pkg_namespace=statusstr_ > $(srcdir)/status-codes.h endif # diff --git a/common/mkstrtable.awk b/common/mkstrtable.awk index b5d4ef0..60efce8 100644 --- a/common/mkstrtable.awk +++ b/common/mkstrtable.awk @@ -76,7 +76,7 @@ # # The variable prefix can be used to prepend a string to each message. # -# The variable namespace can be used to prepend a string to each +# The variable pkg_namespace can be used to prepend a string to each # variable and macro name. BEGIN { @@ -101,7 +101,7 @@ header { print "/* The purpose of this complex string table is to produce"; print " optimal code with a minimum of relocations. */"; print ""; - print "static const char " namespace "msgstr[] = "; + print "static const char " pkg_namespace "msgstr[] = "; header = 0; } else @@ -109,7 +109,7 @@ header { } !header { - sub (/\#.+/, ""); + sub (/#.+/, ""); sub (/[ ]+$/, ""); # Strip trailing space and tab characters. if (/^$/) @@ -149,14 +149,14 @@ END { else print " gettext_noop (\"" prefix last_msgstr "\");"; print ""; - print "static const int " namespace "msgidx[] ="; + print "static const int " pkg_namespace "msgidx[] ="; print " {"; for (i = 0; i < coded_msgs; i++) print " " pos[i] ","; print " " pos[coded_msgs]; print " };"; print ""; - print "#define " namespace "msgidxof(code) (0 ? -1 \\"; + print "#define " pkg_namespace "msgidxof(code) (0 ? -1 \\"; # Gather the ranges. skip = code[0]; diff --git a/common/userids.c b/common/userids.c index 01f2cd8..00f26b7 100644 --- a/common/userids.c +++ b/common/userids.c @@ -351,8 +351,10 @@ classify_user_id (const char *name, KEYDB_SEARCH_DESC *desc, int openpgp_hack) } else if (!hexprefix) { - /* The fingerprint in an X.509 listing is often delimited by - colons, so we try to single this case out. */ + /* The fingerprint of an X.509 listing is often delimited by + * colons, so we try to single this case out. Note that the + * OpenPGP bang suffix is not supported here. */ + desc->exact = 0; mode = 0; hexlength = strspn (s, ":0123456789abcdefABCDEF"); if (hexlength == 59 && (!s[hexlength] || spacep (s+hexlength))) @@ -414,7 +416,6 @@ classify_user_id (const char *name, KEYDB_SEARCH_DESC *desc, int openpgp_hack) } if (!mode) /* Default to substring search. */ { - desc->exact = 0; desc->u.name = s; mode = KEYDB_SEARCH_MODE_SUBSTR; } diff --git a/configure.ac b/configure.ac index 7951bd2..86ad506 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], [2]) -m4_define([mym4_micro], [15]) +m4_define([mym4_micro], [16]) # 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 diff --git a/dirmngr/domaininfo.c b/dirmngr/domaininfo.c index a2effff..2e55842 100644 --- a/dirmngr/domaininfo.c +++ b/dirmngr/domaininfo.c @@ -47,6 +47,7 @@ struct domaininfo_s unsigned int wkd_not_found:1; /* A WKD query failed. */ unsigned int wkd_supported:1; /* One WKD entry was found. */ unsigned int wkd_not_supported:1; /* Definitely does not support WKD. */ + unsigned int keepmark:1; /* Private to insert_or_update(). */ char name[1]; }; typedef struct domaininfo_s *domaininfo_t; @@ -143,7 +144,10 @@ insert_or_update (const char *domain, { domaininfo_t di; domaininfo_t di_new; - domaininfo_t di_cut; + domaininfo_t drop = NULL; + domaininfo_t drop_extra = NULL; + int nkept = 0; + int ndropped = 0; u32 hash; int count; @@ -162,7 +166,6 @@ insert_or_update (const char *domain, /* Need to do another lookup because the malloc is a system call and * thus the hash array may have been changed by another thread. */ - di_cut = NULL; for (count=0, di = domainbuckets[hash]; di; di = di->next, count++) if (!strcmp (di->name, domain)) { @@ -172,16 +175,89 @@ insert_or_update (const char *domain, } /* Before we insert we need to check whether the chain gets too long. */ - di_cut = NULL; if (count >= MAX_DOMAINBUCKET_LEN) { - for (count=0, di = domainbuckets[hash]; di; di = di->next, count++) - if (count >= MAX_DOMAINBUCKET_LEN/2) - { - di_cut = di->next; - di->next = NULL; - break; - } + domaininfo_t bucket; + domaininfo_t *array; + int narray, idx; + domaininfo_t keep = NULL; + + /* Unlink from the global list before doing a syscall. */ + bucket = domainbuckets[hash]; + domainbuckets[hash] = NULL; + + array = xtrycalloc (count, sizeof *array); + if (!array) + { + /* That's bad; give up the entire bucket. */ + log_error ("domaininfo: error allocating helper array: %s\n", + gpg_strerror (gpg_err_code_from_syserror ())); + drop_extra = bucket; + goto leave; + } + narray = 0; + + /* Move all items into an array for easier processing. */ + for (di = bucket; di; di = di->next) + array[narray++] = di; + log_assert (narray == count); + + /* Mark all item in the array which are flagged to support wkd + * but not more than half of the maximum. This way we will at + * the end drop half of the items. */ + count = 0; + for (idx=0; idx < narray; idx++) + { + di = array[idx]; + di->keepmark = 0; /* Clear flag here on the first pass. */ + if (di->wkd_supported && count < MAX_DOMAINBUCKET_LEN/2) + { + di->keepmark = 1; + count++; + } + } + /* Now mark those which are marked as not found. */ + /* FIXME: we should use an LRU algorithm here. */ + for (idx=0; idx < narray; idx++) + { + di = array[idx]; + if (!di->keepmark + && di->wkd_not_supported && count < MAX_DOMAINBUCKET_LEN/2) + { + di->keepmark = 1; + count++; + } + } + + /* Build a bucket list and a second list for later freeing the + * items (we can't do it directly because a free is a system + * call and we want to avoid locks in this module. Note that + * the kept items will be reversed order which does not matter. */ + for (idx=0; idx < narray; idx++) + { + di = array[idx]; + if (di->keepmark) + { + di->next = keep; + keep = di; + nkept++; + } + else + { + di->next = drop; + drop = di; + ndropped++; + } + } + + /* In case another thread added new stuff to the domain list we + * simply drop them instead all. It would also be possible to + * append them to our list but then we can't guarantee that a + * bucket list is almost all of the time limited to + * MAX_DOMAINBUCKET_LEN. Not sure whether this is really a + * sensible strategy. */ + drop_extra = domainbuckets[hash]; + domainbuckets[hash] = keep; } /* Insert */ @@ -190,17 +266,28 @@ insert_or_update (const char *domain, di->next = domainbuckets[hash]; domainbuckets[hash] = di; - /* Remove the rest of the cutted chain. */ - while (di_cut) + if (opt.verbose && (nkept || ndropped)) + log_info ("domaininfo: bucket=%lu kept=%d purged=%d\n", + (unsigned long)hash, nkept, ndropped); + + leave: + /* Remove the dropped items. */ + while (drop) + { + di = drop->next; + xfree (drop); + drop = di; + } + while (drop_extra) { - di = di_cut->next; - xfree (di_cut); - di_cut = di; + di = drop_extra->next; + xfree (drop_extra); + drop_extra = di; } } -/* Helper for domaininfo_set_no_name. */ +/* Helper for domaininfo_set_no_name. May not do any syscalls. */ static void set_no_name_cb (domaininfo_t di, int insert_mode) { @@ -224,7 +311,7 @@ domaininfo_set_no_name (const char *domain) } -/* Helper for domaininfo_set_wkd_supported. */ +/* Helper for domaininfo_set_wkd_supported. May not do any syscalls. */ static void set_wkd_supported_cb (domaininfo_t di, int insert_mode) { @@ -245,7 +332,7 @@ domaininfo_set_wkd_supported (const char *domain) } -/* Helper for domaininfo_set_wkd_not_supported. */ +/* Helper for domaininfo_set_wkd_not_supported. May not do any syscalls. */ static void set_wkd_not_supported_cb (domaininfo_t di, int insert_mode) { @@ -265,7 +352,7 @@ domaininfo_set_wkd_not_supported (const char *domain) -/* Helper for domaininfo_set_wkd_not_found. */ +/* Helper for domaininfo_set_wkd_not_found. May not do any syscalls. */ static void set_wkd_not_found_cb (domaininfo_t di, int insert_mode) { diff --git a/dirmngr/http.c b/dirmngr/http.c index 7fdd06a..384f256 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -3530,7 +3530,8 @@ same_host_p (parsed_uri_t a, parsed_uri_t b) { "protonmail.com", "api.protonmail.com" }, { NULL, "api.protonmail.ch" }, { "protonmail.ch", "api.protonmail.com" }, - { NULL, "api.protonmail.ch" } + { NULL, "api.protonmail.ch" }, + { "pm.me", "api.protonmail.ch" } }; int i; const char *from; diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c index 20d29e9..e3c09c2 100644 --- a/dirmngr/ks-engine-hkp.c +++ b/dirmngr/ks-engine-hkp.c @@ -1271,6 +1271,10 @@ send_request (ctrl_t ctrl, const char *request, const char *hostportstr, err = gpg_error (GPG_ERR_NOT_IMPLEMENTED); goto leave; + case 413: /* Payload too large */ + err = gpg_error (GPG_ERR_TOO_LARGE); + goto leave; + default: log_error (_("error accessing '%s': http status %u\n"), request, http_get_status_code (http)); diff --git a/dirmngr/ks-engine-http.c b/dirmngr/ks-engine-http.c index 1abb350..a9600db 100644 --- a/dirmngr/ks-engine-http.c +++ b/dirmngr/ks-engine-http.c @@ -174,6 +174,10 @@ ks_http_fetch (ctrl_t ctrl, const char *url, unsigned int flags, } goto once_more; + case 413: /* Payload too large */ + err = gpg_error (GPG_ERR_TOO_LARGE); + goto leave; + default: log_error (_("error accessing '%s': http status %u\n"), url, http_get_status_code (http)); diff --git a/dirmngr/ocsp.c b/dirmngr/ocsp.c index 2067b7b..13e6120 100644 --- a/dirmngr/ocsp.c +++ b/dirmngr/ocsp.c @@ -116,10 +116,15 @@ read_response (estream_t fp, unsigned char **r_buffer, size_t *r_buflen) /* Construct an OCSP request, send it to the configured OCSP responder and parse the response. On success the OCSP context may be used to - further process the response. */ + further process the response. The signature value and the + production date are returned at R_SIGVAL and R_PRODUCED_AT; they + may be NULL or an empty string if not available. A new hash + context is returned at R_MD. */ static gpg_error_t -do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, - const char *url, ksba_cert_t cert, ksba_cert_t issuer_cert) +do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, + const char *url, ksba_cert_t cert, ksba_cert_t issuer_cert, + ksba_sexp_t *r_sigval, ksba_isotime_t r_produced_at, + gcry_md_hd_t *r_md) { gpg_error_t err; unsigned char *request, *response; @@ -132,6 +137,10 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, (void)ctrl; + *r_sigval = NULL; + *r_produced_at = 0; + *r_md = NULL; + if (dirmngr_use_tor ()) { /* For now we do not allow OCSP via Tor due to possible privacy @@ -238,6 +247,10 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, } break; + case 413: /* Payload too large */ + err = gpg_error (GPG_ERR_TOO_LARGE); + break; + default: log_error (_("error accessing '%s': http status %u\n"), url, http_get_status_code (http)); @@ -259,6 +272,7 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, xfree (free_this); return err; } + /* log_printhex (response, responselen, "ocsp response"); */ err = ksba_ocsp_parse_response (ocsp, response, responselen, &response_status); @@ -286,11 +300,34 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, } if (response_status == KSBA_OCSP_RSPSTATUS_SUCCESS) { + int hash_algo; + if (opt.verbose) log_info (_("OCSP responder at '%s' status: %s\n"), url, t); + /* Get the signature value now because we can all this fucntion + * only once. */ + *r_sigval = ksba_ocsp_get_sig_val (ocsp, r_produced_at); + + hash_algo = hash_algo_from_sigval (*r_sigval); + if (!hash_algo) + { + if (opt.verbose) + log_info ("ocsp: using SHA-256 as fallback hash algo.\n"); + hash_algo = GCRY_MD_SHA256; + } + err = gcry_md_open (r_md, hash_algo, 0); + if (err) + { + log_error (_("failed to establish a hashing context for OCSP: %s\n"), + gpg_strerror (err)); + goto leave; + } + if (DBG_HASHING) + gcry_md_debug (*r_md, "ocsp"); + err = ksba_ocsp_hash_response (ocsp, response, responselen, - HASH_FNC, md); + HASH_FNC, *r_md); if (err) log_error (_("hashing the OCSP response for '%s' failed: %s\n"), url, gpg_strerror (err)); @@ -301,8 +338,17 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, err = gpg_error (GPG_ERR_GENERAL); } + leave: xfree (response); xfree (free_this); + if (err) + { + xfree (*r_sigval); + *r_sigval = NULL; + *r_produced_at = 0; + gcry_md_close (*r_md); + *r_md = NULL; + } return err; } @@ -387,7 +433,7 @@ check_signature_core (ctrl_t ctrl, ksba_cert_t cert, gcry_sexp_t s_sig, /* We simply ignore all errors. */ gcry_sexp_release (s_pkey); - return -1; + return err; } @@ -406,18 +452,27 @@ check_signature (ctrl_t ctrl, int algo, cert_idx; gcry_sexp_t s_hash; ksba_cert_t cert; + const char *s; /* Create a suitable S-expression with the hash value of our response. */ gcry_md_final (md); algo = gcry_md_get_algo (md); - if (algo != GCRY_MD_SHA1 ) + s = gcry_md_algo_name (algo); + if (algo && s && strlen (s) < 16) { - log_error (_("only SHA-1 is supported for OCSP responses\n")); - return gpg_error (GPG_ERR_DIGEST_ALGO); + char hashalgostr[16+1]; + int i; + + for (i=0; s[i]; i++) + hashalgostr[i] = ascii_tolower (s[i]); + hashalgostr[i] = 0; + err = gcry_sexp_build (&s_hash, NULL, "(data(flags pkcs1)(hash %s %b))", + hashalgostr, + (int)gcry_md_get_algo_dlen (algo), + gcry_md_read (md, algo)); } - err = gcry_sexp_build (&s_hash, NULL, "(data(flags pkcs1)(hash sha1 %b))", - gcry_md_get_algo_dlen (algo), - gcry_md_read (md, algo)); + else + err = gpg_error (GPG_ERR_DIGEST_ALGO); if (err) { log_error (_("creating S-expression failed: %s\n"), gcry_strerror (err)); @@ -461,6 +516,7 @@ check_signature (ctrl_t ctrl, { cert_ref_t cref; + /* dump_cert ("from ocsp response", cert); */ cref = xtrymalloc (sizeof *cref); if (!cref) log_error (_("allocating list item failed: %s\n"), @@ -496,8 +552,6 @@ check_signature (ctrl_t ctrl, } log_printf ("not found\n"); } - ksba_free (name); - ksba_free (keyid); if (cert) { @@ -506,10 +560,24 @@ check_signature (ctrl_t ctrl, ksba_cert_release (cert); if (!err) { + ksba_free (name); + ksba_free (keyid); gcry_sexp_release (s_hash); return 0; /* Successfully verified the signature. */ } + log_error ("responder certificate "); + if (name) + log_printf ("'/%s' ", name); + if (keyid) + { + log_printf ("{"); + dump_serial (keyid); + log_printf ("} "); + } + log_printf ("did not verify: %s\n", gpg_strerror (err)); } + ksba_free (name); + ksba_free (keyid); } gcry_sexp_release (s_hash); @@ -584,8 +652,6 @@ ocsp_isvalid (ctrl_t ctrl, ksba_cert_t cert, const char *cert_fpr, goto leave; } - - /* Figure out the OCSP responder to use. 1. Try to get the reponder from the certificate. We do only take http and https style URIs into account. @@ -642,14 +708,8 @@ ocsp_isvalid (ctrl_t ctrl, ksba_cert_t cert, const char *cert_fpr, } /* Ask the OCSP responder. */ - err = gcry_md_open (&md, GCRY_MD_SHA1, 0); - if (err) - { - log_error (_("failed to establish a hashing context for OCSP: %s\n"), - gpg_strerror (err)); - goto leave; - } - err = do_ocsp_request (ctrl, ocsp, md, url, cert, issuer_cert); + err = do_ocsp_request (ctrl, ocsp, url, cert, issuer_cert, + &sigval, produced_at, &md); if (err) goto leave; @@ -681,8 +741,7 @@ ocsp_isvalid (ctrl_t ctrl, ksba_cert_t cert, const char *cert_fpr, } /* We got a useful answer, check that the answer has a valid signature. */ - sigval = ksba_ocsp_get_sig_val (ocsp, produced_at); - if (!sigval || !*produced_at) + if (!sigval || !*produced_at || !md) { err = gpg_error (GPG_ERR_INV_OBJ); goto leave; diff --git a/doc/dirmngr.texi b/doc/dirmngr.texi index 76be528..4345e36 100644 --- a/doc/dirmngr.texi +++ b/doc/dirmngr.texi @@ -251,7 +251,7 @@ The option @option{--use-tor} switches Dirmngr and thus GnuPG into ``Tor mode'' to route all network access via Tor (an anonymity network). Certain other features are disabled in this mode. The effect of @option{--use-tor} cannot be overridden by any other command -or even be reloading gpg-agent. The use of @option{--no-use-tor} +or even by reloading dirmngr. The use of @option{--no-use-tor} disables the use of Tor. The default is to use Tor if it is available on startup or after reloading dirmngr. @@ -1178,5 +1178,3 @@ as a binary blob. @c used for this. The first one starts a search and the second one is @c used to retrieve certificate after certificate. @c - - diff --git a/doc/gpg.texi b/doc/gpg.texi index 22813c7..74862e5 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -404,7 +404,10 @@ functionality is also available as the subcommand "passwd" with the @opindex delete-keys Remove key from the public keyring. In batch mode either @option{--yes} is required or the key must be specified by fingerprint. This is a -safeguard against accidental deletion of multiple keys. +safeguard against accidental deletion of multiple keys. If the +exclamation mark syntax is used with the fingerprint of a subkey only +that subkey is deleted; if the exclamation mark is used with the +fingerprint of the primary key the entire public key is deleted. @item --delete-secret-keys @var{name} @opindex delete-secret-keys @@ -413,7 +416,10 @@ specified by fingerprint. The option @option{--yes} can be used to advice gpg-agent not to request a confirmation. This extra pre-caution is done because @command{@gpgname} can't be sure that the secret key (as controlled by gpg-agent) is only used for the given -OpenPGP public key. +OpenPGP public key. If the exclamation mark syntax is used with the +fingerprint of a subkey only the secret part of that subkey is +deleted; if the exclamation mark is used with the fingerprint of the +primary key only the secret part of the primary key is deleted. @item --delete-secret-and-public-key @var{name} @@ -434,9 +440,8 @@ file given with option @option{--output}. Use together with @item --send-keys @var{keyIDs} @opindex send-keys Similar to @option{--export} but sends the keys to a keyserver. -Fingerprints may be used instead of key IDs. Option -@option{--keyserver} must be used to give the name of this -keyserver. Don't send your complete keyring to a keyserver --- select +Fingerprints may be used instead of key IDs. +Don't send your complete keyring to a keyserver --- select only those keys which are new or changed by you. If no @var{keyIDs} are given, @command{@gpgname} does nothing. @@ -491,27 +496,25 @@ signatures, user-IDs and subkeys. @opindex receive-keys @itemx --recv-keys @var{keyIDs} @opindex recv-keys -Import the keys with the given @var{keyIDs} from a keyserver. Option -@option{--keyserver} must be used to give the name of this keyserver. +Import the keys with the given @var{keyIDs} from a keyserver. @item --refresh-keys @opindex refresh-keys Request updates from a keyserver for keys that already exist on the local keyring. This is useful for updating a key with the latest signatures, user IDs, etc. Calling this with no arguments will refresh -the entire keyring. Option @option{--keyserver} must be used to give the -name of the keyserver for all keys that do not have preferred keyservers -set (see @option{--keyserver-options honor-keyserver-url}). +the entire keyring. @item --search-keys @var{names} @opindex search-keys -Search the keyserver for the given @var{names}. Multiple names given here will -be joined together to create the search string for the keyserver. -Option @option{--keyserver} must be used to give the name of this -keyserver. Keyservers that support different search methods allow using -the syntax specified in "How to specify a user ID" below. Note that -different keyserver types support different search methods. Currently -only LDAP supports them all. +Search the keyserver for the given @var{names}. Multiple names given +here will be joined together to create the search string for the +keyserver. Note that keyservers search for @var{names} in a different +and simpler way than gpg does. The best choice is to use a mail +address. Due to data privacy reasons keyservers may even not even +allow searching by user id or mail address and thus may only return +results when being used with the @option{--recv-key} command to +search by key fingerprint or keyid. @item --fetch-keys @var{URIs} @opindex fetch-keys @@ -1330,8 +1333,8 @@ give the opposite meaning. The options are: @item show-only-fpr-mbox @opindex list-options:show-only-fpr-mbox - For each valid user-id which also has a valid mail address print - only the fingerprint and the mail address. + For each user-id which has a valid mail address print + only the fingerprint followed by the mail address. @end table @item --verify-options @var{parameters} @@ -1429,19 +1432,24 @@ viewed (e.g. "f"), "%V" for the calculated validity as a string (e.g. and "%%" for an actual percent sign. If neither %i or %I are present, then the photo will be supplied to the viewer on standard input. -The default viewer is "xloadimage -fork -quiet -title 'KeyID 0x%k' -STDIN". Note that if your image viewer program is not secure, then -executing it from GnuPG does not make it secure. +On Unix the default viewer is +@code{xloadimage -fork -quiet -title 'KeyID 0x%k' STDIN} +with a fallback to +@code{display -title 'KeyID 0x%k' %i} +and finally to +@code{xdg-open %i}. +On Windows +@code{!ShellExecute 400 %i} is used; here the command is a meta +command to use that API call followed by a wait time in milliseconds +which is used to give the viewer time to read the temporary image file +before gpg deletes it again. Note that if your image viewer program +is not secure, then executing it from gpg does not make it secure. @item --exec-path @var{string} @opindex exec-path @efindex PATH -Sets a list of directories to search for photo viewers and keyserver -helpers. If not provided, keyserver helpers use the compiled-in -default directory, and photo viewers use the @code{PATH} environment -variable. -Note, that on W32 system this value is ignored when searching for -keyserver helpers. +Sets a list of directories to search for photo viewers If not provided +photo viewers use the @code{PATH} environment variable. @item --keyring @var{file} @opindex keyring @@ -1766,12 +1774,11 @@ list. The default is "local,wkd". PGP Universal method of checking @samp{ldap://keys.(thedomain)}. @item keyserver - Locate a key using whatever keyserver is defined using the - @option{--keyserver} option. + Locate a key using a keyserver. @item keyserver-URL - In addition, a keyserver URL as used in the @option{--keyserver} option - may be used here to query that particular keyserver. + In addition, a keyserver URL as used in the @command{dirmngr} + configuration may be used here to query that particular keyserver. @item local Locate the key using the local keyrings. This mechanism allows the user to @@ -2975,7 +2982,8 @@ to display the message. This option overrides @option{--set-filename}. @itemx --no-use-embedded-filename @opindex use-embedded-filename Try to create a file with a name as embedded in the data. This can be -a dangerous option as it enables overwriting files. Defaults to no. +a dangerous option as it enables overwriting files. Defaults to no. +Note that the option @option{--output} overrides this option. @item --cipher-algo @var{name} @opindex cipher-algo diff --git a/doc/tools.texi b/doc/tools.texi index 4e09664..dc5ca25 100644 --- a/doc/tools.texi +++ b/doc/tools.texi @@ -352,11 +352,12 @@ may use this command to ensure that they are started. Using "all" for @item --kill [@var{component}] @opindex kill -Kill the given component. Components which support killing are -@command{gpg-agent} and @command{scdaemon}. Components which don't -support reloading are ignored. Using "all" for @var{component} kills -all components running as daemons. Note that as of now reload and -kill have the same effect for @command{scdaemon}. +Kill the given component that runs as a daemon, including +@command{gpg-agent}, @command{dirmngr}, and @command{scdaemon}. A +@command{component} which does not run as a daemon will be ignored. +Using "all" for @var{component} kills all components running as +daemons. Note that as of now reload and kill have the same effect for +@command{scdaemon}. @item --create-socketdir @opindex create-socketdir @@ -392,6 +393,8 @@ extends numerical field values by human-readable descriptions. @opindex quiet Try to be as quiet as possible. +@include opt-homedir.texi + @item -n @itemx --dry-run Do not actually change anything. This is currently only implemented diff --git a/g10/armor.c b/g10/armor.c index cc80968..36215a3 100644 --- a/g10/armor.c +++ b/g10/armor.c @@ -1156,10 +1156,10 @@ armor_filter( void *opaque, int control, } /* write the comment strings */ - for(s=comment->d;comment;comment=comment->next,s=comment->d) + for(;comment;comment=comment->next) { iobuf_writestr(a, "Comment: " ); - for( ; *s; s++ ) + for( s=comment->d; *s; s++ ) { if( *s == '\n' ) iobuf_writestr(a, "\\n" ); diff --git a/g10/build-packet.c b/g10/build-packet.c index b83ea84..14e40a1 100644 --- a/g10/build-packet.c +++ b/g10/build-packet.c @@ -424,15 +424,21 @@ do_user_id( IOBUF out, int ctb, PKT_user_id *uid ) * Without forcing HDRLEN to 2 in this case an indeterminate length * packet would be written which is not allowed. Note that we are * always called with a CTB indicating an old packet header format, - * so that forcing a 2 octet header works. */ + * so that forcing a 2 octet header works. We also check for the + * maximum allowed packet size by the parser using an arbitrary + * extra 10 bytes for header data. */ if (uid->attrib_data) { + if (uid->attrib_len > MAX_ATTR_PACKET_LENGTH - 10) + return gpg_error (GPG_ERR_TOO_LARGE); hdrlen = uid->attrib_len? 0 : 2; write_header2 (out, ctb, uid->attrib_len, hdrlen); rc = iobuf_write( out, uid->attrib_data, uid->attrib_len ); } else { + if (uid->len > MAX_UID_PACKET_LENGTH - 10) + return gpg_error (GPG_ERR_TOO_LARGE); hdrlen = uid->len? 0 : 2; write_header2 (out, ctb, uid->len, hdrlen); rc = iobuf_write( out, uid->name, uid->len ); diff --git a/g10/decrypt.c b/g10/decrypt.c index 4d6734d..9589aff 100644 --- a/g10/decrypt.c +++ b/g10/decrypt.c @@ -48,7 +48,6 @@ decrypt_message (ctrl_t ctrl, const char *filename) armor_filter_context_t *afx = NULL; progress_filter_context_t *pfx; int rc; - int no_out = 0; pfx = new_progress_context (); @@ -82,11 +81,13 @@ decrypt_message (ctrl_t ctrl, const char *filename) if (!opt.outfile) { - no_out = 1; opt.outfile = "-"; + opt.flags.dummy_outfile = 1; } + else + opt.flags.dummy_outfile = 0; rc = proc_encryption_packets (ctrl, NULL, fp ); - if (no_out) + if (opt.flags.dummy_outfile) opt.outfile = NULL; iobuf_close (fp); diff --git a/g10/delkey.c b/g10/delkey.c index bf8c4e9..e91acb0 100644 --- a/g10/delkey.c +++ b/g10/delkey.c @@ -1,7 +1,7 @@ /* delkey.c - delete keys * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, * 2005, 2006 Free Software Foundation, Inc. - * Copyright (C) 2014 Werner Koch + * Copyright (C) 2014, 2019 Werner Koch * * This file is part of GnuPG. * @@ -53,13 +53,15 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, gpg_error_t err; kbnode_t keyblock = NULL; kbnode_t node, kbctx; + kbnode_t targetnode; KEYDB_HANDLE hd; PKT_public_key *pk = NULL; u32 keyid[2]; int okay=0; int yes; KEYDB_SEARCH_DESC desc; - int exactmatch; + int exactmatch; /* True if key was found by fingerprint. */ + int thiskeyonly; /* 0 = false, 1 = is primary key, 2 = is a subkey. */ *r_sec_avail = 0; @@ -72,6 +74,7 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, exactmatch = (desc.mode == KEYDB_SEARCH_MODE_FPR || desc.mode == KEYDB_SEARCH_MODE_FPR16 || desc.mode == KEYDB_SEARCH_MODE_FPR20); + thiskeyonly = desc.exact; if (!err) err = keydb_search (hd, &desc, 1, NULL); if (err) @@ -97,7 +100,35 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, err = gpg_error (GPG_ERR_GENERAL); goto leave; } - pk = node->pkt->pkt.public_key; + + /* If an operation only on a subkey is requested, find that subkey + * now. */ + if (thiskeyonly) + { + kbnode_t tmpnode; + + for (kbctx=NULL; (tmpnode = walk_kbnode (keyblock, &kbctx, 0)); ) + { + if (!(tmpnode->pkt->pkttype == PKT_PUBLIC_KEY + || tmpnode->pkt->pkttype == PKT_PUBLIC_SUBKEY)) + continue; + if (exact_subkey_match_p (&desc, tmpnode)) + break; + } + if (!tmpnode) + { + log_error ("Oops; requested subkey not found anymore!\n"); + err = gpg_error (GPG_ERR_GENERAL); + goto leave; + } + /* Set NODE to this specific subkey or primary key. */ + thiskeyonly = node == tmpnode? 1 : 2; + targetnode = tmpnode; + } + else + targetnode = node; + + pk = targetnode->pkt->pkt.public_key; keyid_from_pk (pk, keyid); if (!secret && !force) @@ -143,6 +174,32 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, print_pubkey_info (ctrl, NULL, pk ); tty_printf( "\n" ); + if (thiskeyonly == 1 && !secret) + { + /* We need to delete the entire public key despite the use + * of the thiskeyonly request. */ + tty_printf (_("Note: The public primary key and all its subkeys" + " will be deleted.\n")); + } + else if (thiskeyonly == 2 && !secret) + { + tty_printf (_("Note: Only the shown public subkey" + " will be deleted.\n")); + } + if (thiskeyonly == 1 && secret) + { + tty_printf (_("Note: Only the secret part of the shown primary" + " key will be deleted.\n")); + } + else if (thiskeyonly == 2 && secret) + { + tty_printf (_("Note: Only the secret part of the shown subkey" + " will be deleted.\n")); + } + + if (thiskeyonly) + tty_printf ("\n"); + yes = cpr_get_answer_is_yes (secret? "delete_key.secret.okay": "delete_key.okay", _("Delete this key from the keyring? (y/N) ")); @@ -178,6 +235,9 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, || node->pkt->pkttype == PKT_PUBLIC_SUBKEY)) continue; + if (thiskeyonly && targetnode != node) + continue; + if (agent_probe_secret_key (NULL, node->pkt->pkt.public_key)) continue; /* No secret key for that public (sub)key. */ @@ -190,7 +250,7 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, * pre-caution is that since 2.1 the secret key may also * be used for other protocols and thus deleting it from * the gpg would also delete the key for other tools. */ - if (!err) + if (!err && !opt.dry_run) err = agent_delete_key (NULL, hexgrip, prompt, opt.answer_yes); xfree (prompt); @@ -219,6 +279,35 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, if (firsterr) goto leave; } + else if (thiskeyonly == 2) + { + int selected = 0; + + /* Delete the specified public subkey. */ + for (kbctx=NULL; (node = walk_kbnode (keyblock, &kbctx, 0)); ) + { + if (thiskeyonly && targetnode != node) + continue; + + if (node->pkt->pkttype == PKT_PUBLIC_SUBKEY) + { + selected = targetnode == node; + if (selected) + delete_kbnode (node); + } + else if (selected && node->pkt->pkttype == PKT_SIGNATURE) + delete_kbnode (node); + else + selected = 0; + } + commit_kbnode (&keyblock); + err = keydb_update_keyblock (ctrl, hd, keyblock); + if (err) + { + log_error (_("update failed: %s\n"), gpg_strerror (err)); + goto leave; + } + } else { err = keydb_delete_keyblock (hd); @@ -234,7 +323,8 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, revalidation_mark(). This makes sense - only deleting keys that have ownertrust set should trigger this. */ - if (!secret && pk && clear_ownertrusts (ctrl, pk)) + if (!secret && pk && !opt.dry_run && thiskeyonly != 2 + && clear_ownertrusts (ctrl, pk)) { if (opt.verbose) log_info (_("ownertrust information cleared\n")); @@ -247,7 +337,8 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, return err; } -/**************** + +/* * Delete a public or secret key from a keyring. */ gpg_error_t @@ -39,7 +39,7 @@ static const struct /* Note: Must be sorted by ascending values for QBITS. */ { { 256, DIGEST_ALGO_SHA256, CIPHER_ALGO_AES }, - { 384, DIGEST_ALGO_SHA384, CIPHER_ALGO_AES256 }, + { 384, DIGEST_ALGO_SHA384, CIPHER_ALGO_AES192 }, /* Note: 528 is 521 rounded to the 8 bit boundary */ { 528, DIGEST_ALGO_SHA512, CIPHER_ALGO_AES256 } @@ -77,37 +77,99 @@ set_exec_path(const char *path) { return GPG_ERR_GENERAL; } static int w32_system(const char *command) { -#ifdef HAVE_W32CE_SYSTEM -#warning Change this code to use common/exechelp.c -#else - PROCESS_INFORMATION pi; - STARTUPINFO si; - char *string; + if (!strncmp (command, "!ShellExecute ", 14)) + { + SHELLEXECUTEINFOW see; + wchar_t *wname; + int waitms; + + command = command + 14; + while (spacep (command)) + command++; + waitms = atoi (command); + if (waitms < 0) + waitms = 0; + else if (waitms > 60*1000) + waitms = 60000; + while (*command && !spacep (command)) + command++; + while (spacep (command)) + command++; + + wname = utf8_to_wchar (command); + if (!wname) + return -1; + + memset (&see, 0, sizeof see); + see.cbSize = sizeof see; + see.fMask = (SEE_MASK_NOCLOSEPROCESS + | SEE_MASK_NOASYNC + | SEE_MASK_FLAG_NO_UI + | SEE_MASK_NO_CONSOLE); + see.lpVerb = L"open"; + see.lpFile = (LPCWSTR)wname; + see.nShow = SW_SHOW; + + if (DBG_EXTPROG) + log_debug ("running ShellExecuteEx(open,'%s')\n", command); + if (!ShellExecuteExW (&see)) + { + if (DBG_EXTPROG) + log_debug ("ShellExecuteEx failed: rc=%d\n", (int)GetLastError ()); + xfree (wname); + return -1; + } + if (DBG_EXTPROG) + log_debug ("ShellExecuteEx succeeded (hProcess=%p,hInstApp=%d)\n", + see.hProcess, (int)see.hInstApp); + + if (!see.hProcess) + { + gnupg_usleep (waitms*1000); + if (DBG_EXTPROG) + log_debug ("ShellExecuteEx ready (wait=%dms)\n", waitms); + } + else + { + WaitForSingleObject (see.hProcess, INFINITE); + if (DBG_EXTPROG) + log_debug ("ShellExecuteEx ready\n"); + } + CloseHandle (see.hProcess); + + xfree (wname); + } + else + { + char *string; + PROCESS_INFORMATION pi; + STARTUPINFO si; - /* We must use a copy of the command as CreateProcess modifies this - argument. */ - string=xstrdup(command); + /* We must use a copy of the command as CreateProcess modifies + * this argument. */ + string = xstrdup (command); - memset(&pi,0,sizeof(pi)); - memset(&si,0,sizeof(si)); - si.cb=sizeof(si); + memset (&pi, 0, sizeof(pi)); + memset (&si, 0, sizeof(si)); + si.cb = sizeof (si); - if(!CreateProcess(NULL,string,NULL,NULL,FALSE, - DETACHED_PROCESS, - NULL,NULL,&si,&pi)) - return -1; + if (!CreateProcess (NULL, string, NULL, NULL, FALSE, + DETACHED_PROCESS, + NULL, NULL, &si, &pi)) + return -1; - /* Wait for the child to exit */ - WaitForSingleObject(pi.hProcess,INFINITE); + /* Wait for the child to exit */ + WaitForSingleObject (pi.hProcess, INFINITE); - CloseHandle(pi.hProcess); - CloseHandle(pi.hThread); - xfree(string); + CloseHandle (pi.hProcess); + CloseHandle (pi.hThread); + xfree (string); + } return 0; -#endif } -#endif +#endif /*_W32*/ + /* Replaces current $PATH */ int @@ -508,7 +570,7 @@ exec_read(struct exec_info *info) if(info->flags.use_temp_files) { if(DBG_EXTPROG) - log_debug("system() command is %s\n",info->command); + log_debug ("running command: %s\n",info->command); #if defined (_WIN32) info->progreturn=w32_system(info->command); diff --git a/g10/export.c b/g10/export.c index e94e959..4216a24 100644 --- a/g10/export.c +++ b/g10/export.c @@ -428,8 +428,8 @@ new_subkey_list_item (KBNODE node) (keyID or fingerprint) and does match the one at NODE. It is assumed that the packet at NODE is either a public or secret subkey. */ -static int -exact_subkey_match_p (KEYDB_SEARCH_DESC *desc, KBNODE node) +int +exact_subkey_match_p (KEYDB_SEARCH_DESC *desc, kbnode_t node) { u32 kid[2]; byte fpr[MAX_FINGERPRINT_LEN]; @@ -596,7 +596,10 @@ cleartext_secret_key_to_openpgp (gcry_sexp_t s_key, PKT_public_key *pk) top_list = gcry_sexp_find_token (s_key, "private-key", 0); if (!top_list) goto bad_seckey; - if (gcry_sexp_length(top_list) != 2) + + /* ignore all S-expression after the first sublist -- we assume that + they are comments or otherwise irrelevant to OpenPGP */ + if (gcry_sexp_length(top_list) < 2) goto bad_seckey; key = gcry_sexp_nth (top_list, 1); if (!key) diff --git a/g10/getkey.c b/g10/getkey.c index c4afe45..1b699a4 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -1495,15 +1495,14 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk, /* Old key is better. */ release_public_key_parts (&new.key); free_user_id (new.uid); - new.uid = NULL; } else { /* A tie. Keep the old key. */ release_public_key_parts (&new.key); free_user_id (new.uid); - new.uid = NULL; } + new.uid = NULL; } getkey_end (ctrl, ctx); ctx = NULL; diff --git a/g10/import.c b/g10/import.c index eb3063d..1899f52 100644 --- a/g10/import.c +++ b/g10/import.c @@ -665,6 +665,18 @@ import (ctrl_t ctrl, IOBUF inp, const char* fname,struct import_stats_s *stats, if (!(++stats->count % 100) && !opt.quiet) log_info (_("%lu keys processed so far\n"), stats->count ); + + if (origin == KEYORG_WKD && stats->count >= 5) + { + /* We limit the number of keys _received_ from the WKD to 5. + * In fact there should be only one key but some sites want + * to store a few expired keys there also. gpg's key + * selection will later figure out which key to use. Note + * that for WKD we always return the fingerprint of the + * first imported key. */ + log_info ("import from WKD stopped after %d keys\n", 5); + break; + } } stats->v3keys += v3keys; if (rc == -1) @@ -2174,14 +2186,19 @@ import_one (ctrl_t ctrl, fingerprint of the key in all cases. */ if (fpr) { - xfree (*fpr); /* Note that we need to compare against 0 here because COUNT gets only incremented after returning from this function. */ if (!stats->count) - *fpr = fingerprint_from_pk (pk, NULL, fpr_len); - else - *fpr = NULL; + { + xfree (*fpr); + *fpr = fingerprint_from_pk (pk, NULL, fpr_len); + } + else if (origin != KEYORG_WKD) + { + xfree (*fpr); + *fpr = NULL; + } } } diff --git a/g10/keydb.c b/g10/keydb.c index 0475f85..670a8a1 100644 --- a/g10/keydb.c +++ b/g10/keydb.c @@ -1249,12 +1249,19 @@ parse_keyblock_image (iobuf_t iobuf, int pk_no, int uid_no, } if (err) { - if (gpg_err_code (err) != GPG_ERR_UNKNOWN_VERSION) + es_fflush (es_stdout); + log_error ("parse_keyblock_image: read error: %s\n", + gpg_strerror (err)); + if (gpg_err_code (err) == GPG_ERR_INV_PACKET) { - log_error ("parse_keyblock_image: read error: %s\n", - gpg_strerror (err)); - err = gpg_error (GPG_ERR_INV_KEYRING); + free_packet (pkt, &parsectx); + init_packet (pkt); + continue; } + /* Unknown version maybe due to v5 keys - we treat this + * error different. */ + if (gpg_err_code (err) != GPG_ERR_UNKNOWN_VERSION) + err = gpg_error (GPG_ERR_INV_KEYRING); break; } diff --git a/g10/keygen.c b/g10/keygen.c index ed57d5d..6042226 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -218,18 +218,22 @@ print_status_key_not_created (const char *handle) -static void -write_uid( KBNODE root, const char *s ) +static gpg_error_t +write_uid (kbnode_t root, const char *s) { - PACKET *pkt = xmalloc_clear(sizeof *pkt ); - size_t n = strlen(s); - - pkt->pkttype = PKT_USER_ID; - pkt->pkt.user_id = xmalloc_clear (sizeof *pkt->pkt.user_id + n); - pkt->pkt.user_id->len = n; - pkt->pkt.user_id->ref = 1; - strcpy(pkt->pkt.user_id->name, s); - add_kbnode( root, new_kbnode( pkt ) ); + PACKET *pkt = xmalloc_clear (sizeof *pkt); + size_t n = strlen (s); + + if (n > MAX_UID_PACKET_LENGTH - 10) + return gpg_error (GPG_ERR_INV_USER_ID); + + pkt->pkttype = PKT_USER_ID; + pkt->pkt.user_id = xmalloc_clear (sizeof *pkt->pkt.user_id + n); + pkt->pkt.user_id->len = n; + pkt->pkt.user_id->ref = 1; + strcpy (pkt->pkt.user_id->name, s); + add_kbnode (root, new_kbnode (pkt)); + return 0; } static void @@ -2356,14 +2360,25 @@ ask_curve (int *algo, int *subkey_algo, const char *current) else { /* If the user selected a signing algorithm and Curve25519 - we need to set the algo to EdDSA and update the curve name. */ - if ((*algo == PUBKEY_ALGO_ECDSA || *algo == PUBKEY_ALGO_EDDSA) - && curves[idx].eddsa_curve) + we need to set the algo to EdDSA and update the curve name. + If switching away from EdDSA, we need to set the algo back + to ECDSA. */ + if (*algo == PUBKEY_ALGO_ECDSA || *algo == PUBKEY_ALGO_EDDSA) { - if (subkey_algo && *subkey_algo == PUBKEY_ALGO_ECDSA) - *subkey_algo = PUBKEY_ALGO_EDDSA; - *algo = PUBKEY_ALGO_EDDSA; - result = curves[idx].eddsa_curve; + if (curves[idx].eddsa_curve) + { + if (subkey_algo && *subkey_algo == PUBKEY_ALGO_ECDSA) + *subkey_algo = PUBKEY_ALGO_EDDSA; + *algo = PUBKEY_ALGO_EDDSA; + result = curves[idx].eddsa_curve; + } + else + { + if (subkey_algo && *subkey_algo == PUBKEY_ALGO_EDDSA) + *subkey_algo = PUBKEY_ALGO_ECDSA; + *algo = PUBKEY_ALGO_ECDSA; + result = curves[idx].name; + } } else result = curves[idx].name; @@ -4740,10 +4755,11 @@ do_generate_keypair (ctrl_t ctrl, struct para_data_s *para, if (!err && (s = get_parameter_value (para, pUSERID))) { - write_uid (pub_root, s ); - err = write_selfsigs (ctrl, pub_root, pri_psk, - get_parameter_uint (para, pKEYUSAGE), timestamp, - cache_nonce); + err = write_uid (pub_root, s ); + if (!err) + err = write_selfsigs (ctrl, pub_root, pri_psk, + get_parameter_uint (para, pKEYUSAGE), timestamp, + cache_nonce); } /* Write the auth key to the card before the encryption key. This diff --git a/g10/keyserver.c b/g10/keyserver.c index 8509d83..cadb71f 100644 --- a/g10/keyserver.c +++ b/g10/keyserver.c @@ -1537,9 +1537,7 @@ keyserver_search (ctrl_t ctrl, strlist_t tokens) log_info (_("key not found on keyserver\n")); } - if (gpg_err_code (err) == GPG_ERR_NO_KEYSERVER) - log_error (_("no keyserver known (use option --keyserver)\n")); - else if (gpg_err_code (err) == GPG_ERR_NO_DATA) + if (gpg_err_code (err) == GPG_ERR_NO_DATA) err = gpg_error (GPG_ERR_NOT_FOUND); else if (err) log_error ("error searching keyserver: %s\n", gpg_strerror (err)); @@ -2072,8 +2070,9 @@ keyserver_import_wkd (ctrl_t ctrl, const char *name, int quick, int armor_status = opt.no_armor; import_filter_t save_filt; - /* Keys returned via WKD are in binary format. */ - opt.no_armor = 1; + /* Keys returned via WKD are in binary format. However, we + * relax that requirement and allow also for armored data. */ + opt.no_armor = 0; save_filt = save_and_clear_import_filter (); if (!save_filt) err = gpg_error_from_syserror (); @@ -394,6 +394,8 @@ void export_print_stats (export_stats_t stats); int parse_export_options(char *str,unsigned int *options,int noisy); gpg_error_t parse_and_set_export_filter (const char *string); +int exact_subkey_match_p (KEYDB_SEARCH_DESC *desc, kbnode_t node); + int export_pubkeys (ctrl_t ctrl, strlist_t users, unsigned int options, export_stats_t stats); int export_seckeys (ctrl_t ctrl, strlist_t users, unsigned int options, diff --git a/g10/options.h b/g10/options.h index 782c0cb..a7677e6 100644 --- a/g10/options.h +++ b/g10/options.h @@ -241,6 +241,8 @@ struct unsigned int disable_signer_uid:1; /* Flag to enable experimental features from RFC4880bis. */ unsigned int rfc4880bis:1; + /* Hack: --output is not given but OUTFILE was temporary set to "-". */ + unsigned int dummy_outfile:1; } flags; /* Linked list of ways to find a key if the key isn't on the local diff --git a/g10/packet.h b/g10/packet.h index d273bb3..b0431d5 100644 --- a/g10/packet.h +++ b/g10/packet.h @@ -33,6 +33,11 @@ #define DEBUG_PARSE_PACKET 1 +/* Maximum length of packets to avoid excessive memory allocation. */ +#define MAX_KEY_PACKET_LENGTH (256 * 1024) +#define MAX_UID_PACKET_LENGTH ( 2 * 1024) +#define MAX_COMMENT_PACKET_LENGTH ( 64 * 1024) +#define MAX_ATTR_PACKET_LENGTH ( 16 * 1024*1024) /* Constants to allocate static MPI arrays. */ #define PUBKEY_MAX_NPKEY OPENPGP_MAX_NPKEY diff --git a/g10/parse-packet.c b/g10/parse-packet.c index 05f63e9..2d6ec92 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -35,14 +35,9 @@ #include "main.h" #include "../common/i18n.h" #include "../common/host2net.h" +#include "../common/mbox-util.h" -/* Maximum length of packets to avoid excessive memory allocation. */ -#define MAX_KEY_PACKET_LENGTH (256 * 1024) -#define MAX_UID_PACKET_LENGTH ( 2 * 1024) -#define MAX_COMMENT_PACKET_LENGTH ( 64 * 1024) -#define MAX_ATTR_PACKET_LENGTH ( 16 * 1024*1024) - static int mpi_print_mode; static int list_mode; static estream_t listfp; @@ -2064,12 +2059,20 @@ parse_signature (IOBUF inp, int pkttype, unsigned long pktlen, p = parse_sig_subpkt (sig->hashed, SIGSUBPKT_SIGNERS_UID, &len); if (p && len) { + char *mbox; + sig->signers_uid = try_make_printable_string (p, len, 0); if (!sig->signers_uid) { rc = gpg_error_from_syserror (); goto leave; } + mbox = mailbox_from_userid (sig->signers_uid); + if (mbox) + { + xfree (sig->signers_uid); + sig->signers_uid = mbox; + } } p = parse_sig_subpkt (sig->hashed, SIGSUBPKT_NOTATION, NULL); diff --git a/g10/photoid.c b/g10/photoid.c index bcea64f..f9720d3 100644 --- a/g10/photoid.c +++ b/g10/photoid.c @@ -262,7 +262,8 @@ char *image_type_to_string(byte type,int style) } #if !defined(FIXED_PHOTO_VIEWER) && !defined(DISABLE_PHOTO_VIEWER) -static const char *get_default_photo_command(void) +static const char * +get_default_photo_command(void) { #if defined(_WIN32) OSVERSIONINFO osvi; @@ -274,14 +275,21 @@ static const char *get_default_photo_command(void) if(osvi.dwPlatformId==VER_PLATFORM_WIN32_WINDOWS) return "start /w %i"; else - return "cmd /c start /w %i"; + return "!ShellExecute 400 %i"; #elif defined(__APPLE__) /* OS X. This really needs more than just __APPLE__. */ return "open %I"; #elif defined(__riscos__) return "Filer_Run %I"; #else - return "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin"; + if (!path_access ("xloadimage", X_OK)) + return "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin"; + else if (!path_access ("display",X_OK)) + return "display -title 'KeyID 0x%k' %i"; + else if (getuid () && !path_access ("xdg-open", X_OK)) + return "xdg-open %i"; + else + return "/bin/true"; #endif } #endif @@ -312,6 +320,8 @@ show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count, if (pk) keyid_from_pk (pk, kid); + es_fflush (es_stdout); + for(i=0;i<count;i++) if(attrs[i].type==ATTRIB_IMAGE && parse_image_header(&attrs[i],&args.imagetype,&len)) diff --git a/g10/plaintext.c b/g10/plaintext.c index c5d1ddb..f9e0a42 100644 --- a/g10/plaintext.c +++ b/g10/plaintext.c @@ -70,7 +70,8 @@ get_output_file (const byte *embedded_name, int embedded_namelen, goto leave; } } - else if (opt.outfile) + else if (opt.outfile + && !(opt.flags.use_embedded_filename && opt.flags.dummy_outfile)) { fname = xtrystrdup (opt.outfile); if (!fname) @@ -1593,6 +1593,13 @@ update_keysig_packet (ctrl_t ctrl, if ( opt.cert_digest_algo ) digest_algo = opt.cert_digest_algo; + else if (pksk->pubkey_algo == PUBKEY_ALGO_DSA + || pksk->pubkey_algo == PUBKEY_ALGO_ECDSA + || pksk->pubkey_algo == PUBKEY_ALGO_EDDSA) + digest_algo = orig_sig->digest_algo; + else if (orig_sig->digest_algo == DIGEST_ALGO_SHA1 + || orig_sig->digest_algo == DIGEST_ALGO_RMD160) + digest_algo = DEFAULT_DIGEST_ALGO; else digest_algo = orig_sig->digest_algo; @@ -534,7 +534,7 @@ check_utks (sqlite3 *db) NULL, NULL, &err); if (rc) { - log_error (_("error creating 'ultimately_trusted_keys' TOFU table: %s\n"), + log_error ("error creating 'ultimately_trusted_keys' TOFU table: %s\n", err); sqlite3_free (err); goto out; @@ -840,7 +840,7 @@ initdb (sqlite3 *db) NULL, NULL, &err); if (rc) { - log_error (_("error creating 'encryptions' TOFU table: %s\n"), + log_error ("error creating 'encryptions' TOFU table: %s\n", err); sqlite3_free (err); } @@ -870,7 +870,7 @@ initdb (sqlite3 *db) * safely ignore. */ rc = 0; else - log_error (_("adding column effective_policy to bindings DB: %s\n"), + log_error ("adding column effective_policy to bindings DB: %s\n", err); sqlite3_free (err); } @@ -2143,8 +2143,7 @@ build_conflict_set (ctrl_t ctrl, tofu_dbs_t dbs, rc = keydb_search_reset (hd); if (rc) { - log_error (_("resetting keydb: %s\n"), - gpg_strerror (rc)); + log_error ("resetting keydb failed: %s\n", gpg_strerror (rc)); continue; } @@ -2610,8 +2609,8 @@ get_policy (ctrl_t ctrl, tofu_dbs_t dbs, PKT_public_key *pk, if (record_binding (dbs, fingerprint, email, user_id, policy == TOFU_POLICY_NONE ? TOFU_POLICY_AUTO : policy, effective_policy, conflict, 1, 0, now) != 0) - log_error (_("error setting TOFU binding's policy" - " to %s\n"), tofu_policy_str (policy)); + log_error ("error setting TOFU binding's policy" + " to %s\n", tofu_policy_str (policy)); } /* If the caller wants the set of conflicts, return it. */ @@ -3148,14 +3147,10 @@ show_statistics (tofu_dbs_t dbs, es_fprintf (fp, _("%s: Verified 0 signatures."), email); else { - /* TRANSLATORS: The final %s is replaced by a string like - "7~months". */ + /* Note: Translation not possible with that wording. */ char *ago_str = time_ago_str (now - signature_first_seen); es_fprintf - (fp, - ngettext("%s: Verified %ld~signature in the past %s.", - "%s: Verified %ld~signatures in the past %s.", - signature_count), + (fp, "%s: Verified %ld~signatures in the past %s.", email, signature_count, ago_str); xfree (ago_str); } @@ -3168,12 +3163,9 @@ show_statistics (tofu_dbs_t dbs, { char *ago_str = time_ago_str (now - encryption_first_done); - /* TRANSLATORS: The final %s is replaced by a string like - "7~months". */ - es_fprintf (fp, - ngettext("Encrypted %ld~message in the past %s.", - "Encrypted %ld~messages in the past %s.", - encryption_count), + /* Note: Translation not possible with this kind of + * composition. */ + es_fprintf (fp, "Encrypted %ld~messages in the past %s.", encryption_count, ago_str); xfree (ago_str); } @@ -3940,7 +3932,7 @@ tofu_set_policy (ctrl_t ctrl, kbnode_t kb, enum tofu_policy policy) policy, TOFU_POLICY_NONE, NULL, 0, 1, now); if (err) { - log_error (_("error setting policy for key %s, user id \"%s\": %s"), + log_error ("error setting policy for key %s, user id \"%s\": %s", fingerprint, email, gpg_strerror (err)); xfree (email); break; diff --git a/kbx/keybox-init.c b/kbx/keybox-init.c index 6a83f71..6d656f2 100644 --- a/kbx/keybox-init.c +++ b/kbx/keybox-init.c @@ -289,18 +289,14 @@ keybox_lock (KEYBOX_HANDLE hd, int yes) if (!kb->is_locked) { #ifdef HAVE_W32_SYSTEM - /* Under Windows we need to close the file before we try - * to lock it. This is because another process might have - * taken the lock and is using keybox_file_rename to - * rename the base file. How if our dotlock_take below is - * waiting for the lock but we have the base file still - * open, keybox_file_rename will never succeed as we are - * in a deadlock. */ - if (hd->fp) - { - fclose (hd->fp); - hd->fp = NULL; - } + /* Under Windows we need to close the file before we try + * to lock it. This is because another process might have + * taken the lock and is using keybox_file_rename to + * rename the base file. Now if our dotlock_take below is + * waiting for the lock but we have the base file still + * open, keybox_file_rename will never succeed as we are + * in a deadlock. */ + _keybox_close_file (hd); #endif /*HAVE_W32_SYSTEM*/ if (dotlock_take (kb->lockhd, -1)) { diff --git a/kbx/keybox-search.c b/kbx/keybox-search.c index 1f5dbdf..c07fe81 100644 --- a/kbx/keybox-search.c +++ b/kbx/keybox-search.c @@ -844,16 +844,21 @@ keybox_search (KEYBOX_HANDLE hd, KEYBOX_SEARCH_DESC *desc, size_t ndesc, KEYBOXBLOB blob = NULL; struct sn_array_s *sn_array = NULL; int pk_no, uid_no; + off_t lastfoundoff; if (!hd) return gpg_error (GPG_ERR_INV_VALUE); - /* clear last found result */ + /* Clear last found result but reord the offset of the last found + * blob which we may need later. */ if (hd->found.blob) { + lastfoundoff = _keybox_get_blob_fileoffset (hd->found.blob); _keybox_release_blob (hd->found.blob); hd->found.blob = NULL; } + else + lastfoundoff = 0; if (hd->error) return hd->error; /* still in error state */ @@ -872,6 +877,7 @@ keybox_search (KEYBOX_HANDLE hd, KEYBOX_SEARCH_DESC *desc, size_t ndesc, case KEYDB_SEARCH_MODE_FIRST: /* always restart the search in this mode */ keybox_search_reset (hd); + lastfoundoff = 0; break; default: break; @@ -896,6 +902,32 @@ keybox_search (KEYBOX_HANDLE hd, KEYBOX_SEARCH_DESC *desc, size_t ndesc, xfree (sn_array); return rc; } + /* log_debug ("%s: re-opened file\n", __func__); */ + if (ndesc && desc[0].mode != KEYDB_SEARCH_MODE_FIRST && lastfoundoff) + { + /* Search mode is not first and the last search operation + * returned a blob which also was not the first one. We now + * need to skip over that blob and hope that the file has + * not changed. */ + if (fseeko (hd->fp, lastfoundoff, SEEK_SET)) + { + rc = gpg_error_from_syserror (); + log_debug ("%s: seeking to last found offset failed: %s\n", + __func__, gpg_strerror (rc)); + xfree (sn_array); + return gpg_error (GPG_ERR_NOTHING_FOUND); + } + /* log_debug ("%s: re-opened file and sought to last offset\n", */ + /* __func__); */ + rc = _keybox_read_blob (NULL, hd->fp, NULL); + if (rc) + { + log_debug ("%s: skipping last found blob failed: %s\n", + __func__, gpg_strerror (rc)); + xfree (sn_array); + return gpg_error (GPG_ERR_NOTHING_FOUND); + } + } } /* Kludge: We need to convert an SN given as hexstring to its binary diff --git a/kbx/keybox-update.c b/kbx/keybox-update.c index 580330f..e09fefc 100644 --- a/kbx/keybox-update.c +++ b/kbx/keybox-update.c @@ -423,7 +423,7 @@ keybox_update_keyblock (KEYBOX_HANDLE hd, const void *image, size_t imagelen) if (off == (off_t)-1) return gpg_error (GPG_ERR_GENERAL); - /* Close this the file so that we do no mess up the position for a + /* Close the file so that we do no mess up the position for a next search. */ _keybox_close_file (hd); diff --git a/m4/iconv.m4 b/m4/iconv.m4 index 66bc76f..a285e9d 100644 --- a/m4/iconv.m4 +++ b/m4/iconv.m4 @@ -1,5 +1,6 @@ -# iconv.m4 serial AM6 (gettext-0.17) -dnl Copyright (C) 2000-2002, 2007 Free Software Foundation, Inc. +# iconv.m4 serial 21 +dnl Copyright (C) 2000-2002, 2007-2014, 2016-2019 Free Software Foundation, +dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -30,61 +31,118 @@ AC_DEFUN([AM_ICONV_LINK], dnl Add $INCICONV to CPPFLAGS before performing the following checks, dnl because if the user has installed libiconv and not disabled its use dnl via --without-libiconv-prefix, he wants to use it. The first - dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed. + dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. am_save_CPPFLAGS="$CPPFLAGS" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) - AC_CACHE_CHECK([for iconv], am_cv_func_iconv, [ + AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [ am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no - AC_TRY_LINK([#include <stdlib.h> -#include <iconv.h>], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_func_iconv=yes) + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include <stdlib.h> +#include <iconv.h> + ]], + [[iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd);]])], + [am_cv_func_iconv=yes]) if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" - AC_TRY_LINK([#include <stdlib.h> -#include <iconv.h>], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_lib_iconv=yes - am_cv_func_iconv=yes) + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include <stdlib.h> +#include <iconv.h> + ]], + [[iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd);]])], + [am_cv_lib_iconv=yes] + [am_cv_func_iconv=yes]) LIBS="$am_save_LIBS" fi ]) if test "$am_cv_func_iconv" = yes; then - AC_CACHE_CHECK([for working iconv], am_cv_func_iconv_works, [ - dnl This tests against bugs in AIX 5.1 and HP-UX 11.11. + AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ + dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11, + dnl Solaris 10. am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi - AC_TRY_RUN([ + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[ #include <iconv.h> #include <string.h> -int main () -{ + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + ]], + [[int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\342\202\254"; /* EURO SIGN */ + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res == 0) + result |= 1; + iconv_close (cd_utf8_to_88591); + } + } + /* Test against Solaris 10 bug: Failures are not distinguishable from + successful returns. */ + { + iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); + if (cd_ascii_to_88591 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\263"; + char buf[10]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_ascii_to_88591, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) - return 1; + result |= 2; + iconv_close (cd_ascii_to_88591); + } + } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + ICONV_CONST char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + result |= 4; + iconv_close (cd_88591_to_utf8); } } #if 0 /* This bug could be worked around by the caller. */ @@ -93,37 +151,53 @@ int main () iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) - return 1; + result |= 8; + iconv_close (cd_88591_to_utf8); } } #endif /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is provided. */ - if (/* Try standardized names. */ - iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) - /* Try IRIX, OSF/1 names. */ - && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) - /* Try AIX names. */ - && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) - /* Try HP-UX names. */ - && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) - return 1; - return 0; -}], [am_cv_func_iconv_works=yes], [am_cv_func_iconv_works=no], - [case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac]) + { + /* Try standardized names. */ + iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP"); + /* Try IRIX, OSF/1 names. */ + iconv_t cd2 = iconv_open ("UTF-8", "eucJP"); + /* Try AIX names. */ + iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP"); + /* Try HP-UX names. */ + iconv_t cd4 = iconv_open ("utf8", "eucJP"); + if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1) + && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1)) + result |= 16; + if (cd1 != (iconv_t)(-1)) + iconv_close (cd1); + if (cd2 != (iconv_t)(-1)) + iconv_close (cd2); + if (cd3 != (iconv_t)(-1)) + iconv_close (cd3); + if (cd4 != (iconv_t)(-1)) + iconv_close (cd4); + } + return result; +]])], + [am_cv_func_iconv_works=yes], , + [case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac]) + test "$am_cv_func_iconv_works" = no || break + done LIBS="$am_save_LIBS" ]) case "$am_cv_func_iconv_works" in @@ -134,7 +208,7 @@ int main () am_func_iconv=no am_cv_lib_iconv=no fi if test "$am_func_iconv" = yes; then - AC_DEFINE(HAVE_ICONV, 1, + AC_DEFINE([HAVE_ICONV], [1], [Define if you have the iconv() function and it works.]) fi if test "$am_cv_lib_iconv" = yes; then @@ -147,34 +221,68 @@ int main () LIBICONV= LTLIBICONV= fi - AC_SUBST(LIBICONV) - AC_SUBST(LTLIBICONV) + AC_SUBST([LIBICONV]) + AC_SUBST([LTLIBICONV]) ]) -AC_DEFUN([AM_ICONV], +dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to +dnl avoid warnings like +dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". +dnl This is tricky because of the way 'aclocal' is implemented: +dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. +dnl Otherwise aclocal's initial scan pass would miss the macro definition. +dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. +dnl Otherwise aclocal would emit many "Use of uninitialized value $1" +dnl warnings. +m4_define([gl_iconv_AC_DEFUN], + m4_version_prereq([2.64], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [m4_ifdef([gl_00GNULIB], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [[AC_DEFUN( + [$1], [$2])]])])) +gl_iconv_AC_DEFUN([AM_ICONV], [ AM_ICONV_LINK if test "$am_cv_func_iconv" = yes; then AC_MSG_CHECKING([for iconv declaration]) - AC_CACHE_VAL(am_cv_proto_iconv, [ - AC_TRY_COMPILE([ + AC_CACHE_VAL([am_cv_proto_iconv], [ + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ #include <stdlib.h> #include <iconv.h> extern #ifdef __cplusplus "C" #endif -#if defined(__STDC__) || defined(__cplusplus) +#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); #else size_t iconv(); #endif -], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") + ]], + [[]])], + [am_cv_proto_iconv_arg1=""], + [am_cv_proto_iconv_arg1="const"]) am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` - AC_MSG_RESULT([$]{ac_t:- - }[$]am_cv_proto_iconv) - AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, - [Define as const if the declaration of iconv() needs const.]) + AC_MSG_RESULT([ + $am_cv_proto_iconv]) + else + dnl When compiling GNU libiconv on a system that does not have iconv yet, + dnl pick the POSIX compliant declaration without 'const'. + am_cv_proto_iconv_arg1="" fi + AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], + [Define as const if the declaration of iconv() needs const.]) + dnl Also substitute ICONV_CONST in the gnulib generated <iconv.h>. + m4_ifdef([gl_ICONV_H_DEFAULTS], + [AC_REQUIRE([gl_ICONV_H_DEFAULTS]) + if test -n "$am_cv_proto_iconv_arg1"; then + ICONV_CONST="const" + fi + ]) ]) @@ -1737,6 +1737,18 @@ msgstr "(a no ser que especifiqueu la clau per la empremta digital)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "no es pot fer això en el mode desatès sense «--yes»\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Voleu esborrar aquesta clau de l'anell? " @@ -1758,6 +1770,10 @@ msgid "subkey" msgstr "Clau pública: " #, c-format +msgid "update failed: %s\n" +msgstr "ha fallat l'actualització: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "no s'ha pogut eliminar el bloc de claus: %s\n" @@ -3705,10 +3721,6 @@ msgid "Quit without saving? (y/N) " msgstr "Voleu eixir sense desar? " #, c-format -msgid "update failed: %s\n" -msgstr "ha fallat l'actualització: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "La clau no ha canviat, per tant no cal actualització.\n" @@ -4758,10 +4770,6 @@ msgstr "no s'ha trobat la clau «%s»: %s\n" msgid "key not found on keyserver\n" msgstr "no s'ha trobat la clau «%s»: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "no es coneix cap servidor de claus (useu l'opció \"--keyserver\")\n" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "s'està sol·licitant la clau %08lX de %s\n" @@ -6054,10 +6062,6 @@ msgstr "" "\n" "Algoritmes suportats:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "error en la creació de la contrasenya: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -6077,14 +6081,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: error en escriure el registre de directoris: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "error mentre s'enviava a «%s»: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "error en la lectura de «%s»: %s\n" @@ -6237,14 +6233,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "error mentre s'escrivia l'anell «%s»: %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "error en la lectura de «%s»: %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "error en la creació de la contrasenya: %s\n" @@ -6300,24 +6288,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "S'han esborrat %d signatures.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [fitxers]|imprimeix resums de missatges" -msgstr[1] "|algo [fitxers]|imprimeix resums de missatges" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "xifrat amb %lu contrasenyes\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [fitxers]|imprimeix resums de missatges" -msgstr[1] "|algo [fitxers]|imprimeix resums de missatges" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Política: " @@ -6365,11 +6341,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "s'ha produït un error mentre s'escrivia l'anell públic «%s»: %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "«%s» no és un ID de clau llarg vàlid\n" @@ -8773,6 +8744,10 @@ msgstr "error mentre s'enviava a «%s»: %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "changing permission of `%s' failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -8782,10 +8757,6 @@ msgstr "no s'han pogut canviar els permissos de «%s»: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "no s'ha pogut eliminar el bloc de claus: %s\n" @@ -8836,10 +8807,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "Ha fallat el procés de signatura: %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "error en la creació de la contrasenya: %s\n" @@ -9162,6 +9129,15 @@ msgid "Component not suitable for launching" msgstr "no s'ha trobat la clau pública" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Useu l'ordre «toggle» abans.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9397,6 +9373,42 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "no es coneix cap servidor de claus (useu l'opció \"--keyserver\")\n" + +#, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "error en la creació de la contrasenya: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "error mentre s'enviava a «%s»: %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "error mentre s'escrivia l'anell «%s»: %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "error en la lectura de «%s»: %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [fitxers]|imprimeix resums de missatges" +#~ msgstr[1] "|algo [fitxers]|imprimeix resums de missatges" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [fitxers]|imprimeix resums de missatges" +#~ msgstr[1] "|algo [fitxers]|imprimeix resums de missatges" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "s'ha produït un error mentre s'escrivia l'anell públic «%s»: %s\n" + #, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "error en la lectura de «%s»: %s\n" @@ -4,7 +4,7 @@ # Magda Procházková <magda@math.muni.cz> 2001, # Roman Pavlik <rp@tns.cz> 2001, 2002, 2003, 2004, 2005. # Petr Pisar <petr.pisar@atlas.cz>, 2009, 2010, 2011, 2013, 2014, 2015, 2016. -# Petr Pisar <petr.pisar@atlas.cz>, 2017, 2018. +# Petr Pisar <petr.pisar@atlas.cz>, 2017, 2018, 2019. # # A "%%0A" is used by Pinentry to insert a line break. The double percent # sign is actually needed because it is also a printf format string. If you @@ -31,13 +31,14 @@ # DP (distribution point (of CRL)) → DP # load → zavést # OCSP request → OCSP dotaz +# token → bezpečnostní zařízení # validate → ověřit (platnost) # msgid "" msgstr "" -"Project-Id-Version: gnupg2 2.2.10\n" +"Project-Id-Version: gnupg2 2.2.15\n" "Report-Msgid-Bugs-To: translations@gnupg.org\n" -"PO-Revision-Date: 2018-11-06 11:01+0100\n" +"PO-Revision-Date: 2019-04-21 06:20+02:00\n" "Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n" "Language-Team: Czech <gnupg-i18n@gnupg.org>\n" "Language: cs\n" @@ -231,12 +232,10 @@ msgid "Reset Code" msgstr "Resetační kód" msgid "Push ACK button on card/token." -msgstr "" +msgstr "Potvrďte tlačítkem na kartě nebo bezpečnostním zařízení." -#, fuzzy -#| msgid "%s%%0A%%0AUse the reader's pinpad for input." msgid "Use the reader's pinpad for input." -msgstr "%s%%0A%%0APro vstup použijte klávesnici čtečky." +msgstr "Pro vstup použijte klávesnici čtečky." msgid "Repeat this Reset Code" msgstr "Zopakujte resetační kód" @@ -1605,6 +1604,18 @@ msgstr "(dokud neurčíte klíč jeho otiskem)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "bez parametru „--yes“ to nelze v dávkovém režimu provést\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Smazat tento klíč ze souboru klíčů? (a/N) " @@ -1625,6 +1636,10 @@ msgid "subkey" msgstr "podklíče" #, c-format +msgid "update failed: %s\n" +msgstr "aktualizace selhala: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "smazání bloku klíče se nezdařilo: %s\n" @@ -3404,10 +3419,6 @@ msgid "Quit without saving? (y/N) " msgstr "Ukončit bez uložení? (a/N) " #, c-format -msgid "update failed: %s\n" -msgstr "aktualizace selhala: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Klíč nebyl změněn, takže není potřeba jej aktualizovat.\n" @@ -4396,10 +4407,6 @@ msgid "key not found on keyserver\n" msgstr "klíč nebyl na serveru klíčů nalezen\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "žádný server klíčů není znám (použijte volbu --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "požaduji klíč %s z %s serveru %s\n" @@ -5637,10 +5644,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "nepodporovaná verze databáze TOFU: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "chyba při vytváření TOFU tabulky „ultimately_trusted_keys“: %s\n" - -#, c-format msgid "TOFU DB error" msgstr "Chyba databáze TOFU" @@ -5657,15 +5660,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "chyba při inicializaci databáze TOFU: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "chyba při vytváření TOFU tabulky „encryptions“: %s\n" - -# ??? Typo: error adding -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "přidávání sloupce effective_policy do vazeb databáze: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "chyba při otevírání databáze TOFU „%s“: %s\n" @@ -5827,14 +5821,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Zjištěno poškození databáze TOFU.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "databáze klíčů se resetuje: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "chyba při nastavování politiky vazby TOFU na %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "chyba při měnění politiky TOFU: %s\n" @@ -5896,25 +5882,10 @@ msgstr "%s: Ověřeno 0~podpisů a zašifrováno 0~zpráv." msgid "%s: Verified 0 signatures." msgstr "%s: Ověřeno 0 podpisů." -# The final %s is replaced by a string like "7~months". -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: Ověřen %ld~podpis za poslední období %s." -msgstr[1] "%s: Ověřeny %ld~podpisy za poslední období %s." -msgstr[2] "%s: Ověřeno %ld~podpisů za poslední období %s." - msgid "Encrypted 0 messages." msgstr "Zašifrováno 0 zpráv." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Zašifrována %ld~zpráva za poslední období %s." -msgstr[1] "Zašifrovány %ld~zprávy za poslední období %s." -msgstr[2] "Zašifrováno %ld~zpráv za poslední období %s." - -#, c-format msgid "(policy: %s)" msgstr "(politika: %s)" @@ -5982,11 +5953,6 @@ msgstr "" "POZOR: Šifruje se pro %s, kterýžto nemá neodvolané identity uživatele\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "" -"chyba při nastavování politiky pro klíč %s a identitu uživatele „%s“: %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "„%s“ není platný dlouhý keyID\n" @@ -8188,11 +8154,9 @@ msgstr "URL „%s“ přesměrováno na „%s“ (%u)\n" msgid "too many redirections\n" msgstr "příliš mnoho přesměrování\n" -# g10/import.c:766 g10/openfile.c:261#, c-format -#, fuzzy, c-format -#| msgid "writing to '%s'\n" +#, c-format msgid "redirection changed to '%s'\n" -msgstr "zapisuje se do „%s“\n" +msgstr "přesměrování změněno na „%s“\n" #, c-format msgid "error allocating memory: %s\n" @@ -8303,6 +8267,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "Stav odpovídače OCSP na „%s“: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "nepodařilo se ustanovit hašovací kontext OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "hašování OCSP odpovědi pro „%s“ selhalo: %s\n" @@ -8311,10 +8279,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "nepodepsáno výchozím OCSP certifikátem podepisovatele" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "v OCSP odpovědích je podporováno jen SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "alokování prvku seznamu selhalo: %s\n" @@ -8363,10 +8327,6 @@ msgid "using OCSP responder '%s'\n" msgstr "použije se OCSP odpovídač „%s“\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "nepodařilo se ustanovit hašovací kontext OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "chyba při zjišťování OCSP stavu cílového certifikátu: %s\n" @@ -8674,6 +8634,16 @@ msgstr "Pole pro heslo" msgid "Component not suitable for launching" msgstr "Komponenta není vhodná pro spuštění" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Selhalo externí ověření komponenty %s" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Poznámka: Restartovat je můžete příkazem „%s“.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Selhalo externí ověření komponenty %s" @@ -8905,6 +8875,45 @@ msgstr "" "Syntaxe: gpg-check-pattern [volby] soubor_se_vzorem\n" "Prověří heslo zadané na vstupu proti souboru se vzory\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "žádný server klíčů není znám (použijte volbu --keyserver)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "chyba při vytváření TOFU tabulky „ultimately_trusted_keys“: %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "chyba při vytváření TOFU tabulky „encryptions“: %s\n" + +# ??? Typo: error adding +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "přidávání sloupce effective_policy do vazeb databáze: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "databáze klíčů se resetuje: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "chyba při nastavování politiky vazby TOFU na %s\n" + +# The final %s is replaced by a string like "7~months". +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: Ověřen %ld~podpis za poslední období %s." +#~ msgstr[1] "%s: Ověřeny %ld~podpisy za poslední období %s." +#~ msgstr[2] "%s: Ověřeno %ld~podpisů za poslední období %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Zašifrována %ld~zpráva za poslední období %s." +#~ msgstr[1] "Zašifrovány %ld~zprávy za poslední období %s." +#~ msgstr[2] "Zašifrováno %ld~zpráv za poslední období %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "" +#~ "chyba při nastavování politiky pro klíč %s a identitu uživatele „%s“: %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "v OCSP odpovědích je podporováno jen SHA-1\n" + #~ msgid "listen() failed: %s\n" #~ msgstr "volání listen() selhalo: %s\n" @@ -1723,6 +1723,18 @@ msgstr "(med mindre du angiver nøglen med fingeraftryk)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "kan ikke udføre dette i jobtilstand uden »--yes«\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Slet denne nøgle fra nøgleringen? (j/N) " @@ -1743,6 +1755,10 @@ msgid "subkey" msgstr "Pubkey: " #, c-format +msgid "update failed: %s\n" +msgstr "opdatering mislykkedes: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "sletning af nøgleblok mislykkedes: %s\n" @@ -3648,10 +3664,6 @@ msgid "Quit without saving? (y/N) " msgstr "Afslut uden at gemme? (j/N) " #, c-format -msgid "update failed: %s\n" -msgstr "opdatering mislykkedes: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Nøgle ikke ændret så ingen opdatering krævet.\n" @@ -4693,10 +4705,6 @@ msgid "key not found on keyserver\n" msgstr "nøgle blev ikke fundet på nøgleserver\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "ingen kendt nøgleserver (brug tilvalget --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "anmoder om nøgle %s fra %s server %s\n" @@ -5990,11 +5998,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "ikke understøttet algoritme: %s" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "fejl ved oprettelse af midlertidig fil: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -6015,15 +6018,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: fejl ved skrivning af mappepost: %s\n" #, fuzzy, c-format -#| msgid "error sending %s command: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "fejl under afsendelse af %s-kommando: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format #| msgid "error opening `%s': %s\n" msgid "error opening TOFU database '%s': %s\n" msgstr "fejl ved åbning af »%s«: %s\n" @@ -6184,16 +6178,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "fejl ved skrivning af nøgle: %s\n" - -#, fuzzy, c-format -#| msgid "error storing flags: %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "fejl ved lagring af flag: %s\n" - -#, fuzzy, c-format #| msgid "error creating a pipe: %s\n" msgid "error changing TOFU policy: %s\n" msgstr "fejl ved oprettelse af datakanal: %s\n" @@ -6249,26 +6233,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Slettede %d underskrifter.\n" -#, fuzzy, c-format -#| msgid "print message digests" -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "vis beskedsammendrag" -msgstr[1] "vis beskedsammendrag" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "krypteret med %lu adgangsfraser\n" #, fuzzy, c-format -#| msgid "print message digests" -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "vis beskedsammendrag" -msgstr[1] "vis beskedsammendrag" - -#, fuzzy, c-format #| msgid "validity: %s" msgid "(policy: %s)" msgstr "validitet: %s" @@ -6317,11 +6287,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "fejl ved skrivning af offentlig nøglering »%s«: %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "»%s« er ikke et gyldigt nøgle-id\n" @@ -8850,6 +8815,10 @@ msgstr "fejl ved binding af sokkel til »%s«: %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "checking the trust list failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -8859,10 +8828,6 @@ msgstr "kontrol af troværdighedslisten mislykkedes: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format #| msgid "receiving line failed: %s\n" msgid "allocating list item failed: %s\n" @@ -8922,10 +8887,6 @@ msgstr "bruger standard-PIN som %s\n" msgid "using OCSP responder '%s'\n" msgstr "bruger chiffer %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format #| msgid "error storing certificate: %s\n" msgid "error getting OCSP status for target certificate: %s\n" @@ -9273,6 +9234,16 @@ msgstr "Ugyldig adgangsfrase" msgid "Component not suitable for launching" msgstr "Komponent blev ikke fundet" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Ekstern verifikation af komponent %s mislykkedes" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Brug venligst kommandoen »toggle« først.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Ekstern verifikation af komponent %s mislykkedes" @@ -9525,6 +9496,48 @@ msgstr "" "Syntaks: gpg-check-pattern [tilvalg] mønsterfil\n" "Kontroller en adgangsfrase angivet på stdin mod mønsterfilen\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "ingen kendt nøgleserver (brug tilvalget --keyserver)\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "fejl ved oprettelse af midlertidig fil: %s\n" + +#, fuzzy +#~| msgid "error sending %s command: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "fejl under afsendelse af %s-kommando: %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "fejl ved skrivning af nøgle: %s\n" + +#, fuzzy +#~| msgid "error storing flags: %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "fejl ved lagring af flag: %s\n" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "vis beskedsammendrag" +#~ msgstr[1] "vis beskedsammendrag" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "vis beskedsammendrag" +#~ msgstr[1] "vis beskedsammendrag" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "fejl ved skrivning af offentlig nøglering »%s«: %s\n" + #, fuzzy #~| msgid "waiting %d seconds for the agent to come up\n" #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" @@ -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: 2018-11-06 10:59+0100\n" +"PO-Revision-Date: 2019-05-27 12:47+0200\n" "Last-Translator: Werner Koch <wk@gnupg.org>\n" "Language-Team: German <de@li.org>\n" "Language: de\n" @@ -213,12 +213,10 @@ msgid "Reset Code" msgstr "Rückstellcode" msgid "Push ACK button on card/token." -msgstr "" +msgstr "Bitte die Bestätigungstaste des Tokens drücken." -#, fuzzy -#| msgid "%s%%0A%%0AUse the reader's pinpad for input." msgid "Use the reader's pinpad for input." -msgstr "%s%%0A%%0AZur Eingabe die Tastatur des Kartenlesers verwenden." +msgstr "Zur Eingabe die Tastatur des Kartenlesers verwenden." msgid "Repeat this Reset Code" msgstr "Rückstellcode bitte wiederholen" @@ -1609,6 +1607,24 @@ msgstr "(es sei denn, Sie geben den Schlüssel mittels Fingerprint an)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "dies kann im Batchmodus ohne \"--yes\" nicht durchgeführt werden\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" +"Hinweis: Der öffentliche Schlüssel mit allen Unterschlüsseln wird gelöscht.\n" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" +"Hinweis: Nur der angezeigte öffentliche Unterschlüssel wird gelöscht.\n" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" +"Hinweis: Nur der geheime Teil des angezeigten Hauptschlüssels wird " +"gelöscht.\n" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" +"Hinweis: Nur der geheime Teil des angezeigten Unterschlüssels wird " +"gelöscht.\n" + msgid "Delete this key from the keyring? (y/N) " msgstr "Diesen Schlüssel aus dem Schlüsselbund löschen? (j/N) " @@ -1626,6 +1642,10 @@ msgid "subkey" msgstr "Unterschlüssel" #, c-format +msgid "update failed: %s\n" +msgstr "Änderung fehlgeschlagen: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "löschen des Schlüsselblocks fehlgeschlagen: %s\n" @@ -3445,10 +3465,6 @@ msgid "Quit without saving? (y/N) " msgstr "Beenden ohne zu speichern? (j/N) " #, c-format -msgid "update failed: %s\n" -msgstr "Änderung fehlgeschlagen: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Schlüssel ist nicht geändert worden, also ist kein Speichern nötig.\n" @@ -4436,10 +4452,6 @@ msgid "key not found on keyserver\n" msgstr "Schlüssel wurde auf dem Schlüsselserver nicht gefunden\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "Kein Schlüsselserver bekannt (Option --keyserver verwenden)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "fordere Schlüssel %s von %s-Server %s an\n" @@ -5724,11 +5736,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "Nicht unterstützte TOFU Datenbank Version: %s\n" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "Fehler beim Erstellen einer temporären Datei: %s\n" - #, c-format msgid "TOFU DB error" msgstr "TOFU (Trust on First Use) database error" @@ -5745,15 +5752,6 @@ msgstr "Fehler beim Feststellen der TOFU Datenbank Version: %s\n" msgid "error initializing TOFU database: %s\n" msgstr "Fehler beim Initialisieren der TOFU Datenbank: %s\n" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "Fehler beim Erstellen einer temporären Datei: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - #, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "Fehler beim Öffner der TOFU Datenbank '%s': %s\n" @@ -5762,36 +5760,28 @@ msgstr "Fehler beim Öffner der TOFU Datenbank '%s': %s\n" msgid "error updating TOFU database: %s\n" msgstr "Fehler beim Schreiben der TOFU Datenbank: %s\n" -#, fuzzy, c-format -#| msgid "The email address \"%s\" is associated with %d key:\n" -#| msgid_plural "The email address \"%s\" is associated with %d keys:\n" +#, c-format msgid "" "This is the first time the email address \"%s\" is being used with key %s." -msgstr "Die Email-Adresse \"%s\" ist mit einem Schlüssel assoziert:\n" +msgstr "" +"Die Mail-Adresse \"%s\" wird zum ersten mal mit dem Schlüssel %s verwendet." -#, fuzzy, c-format -#| msgid "The email address \"%s\" is associated with %d key:\n" -#| msgid_plural "The email address \"%s\" is associated with %d keys:\n" +#, c-format msgid "The email address \"%s\" is associated with %d key!" msgid_plural "The email address \"%s\" is associated with %d keys!" -msgstr[0] "Die Email-Adresse \"%s\" ist mit einem Schlüssel assoziert:\n" -msgstr[1] "Die Email-Adresse \"%s\" ist mit einem Schlüssel assoziert:\n" +msgstr[0] "Die Mail-Adresse \"%s\" ist mit %d Schlüssel assoziert!" +msgstr[1] "Die Mail-Adresse \"%s\" ist mit %d Schlüsseln assoziert!" -#, fuzzy -#| msgid "" -#| "The key with fingerprint %s raised a conflict with the binding %s. Since " -#| "this binding's policy was 'auto', it was changed to 'ask'." msgid " Since this binding's policy was 'auto', it has been changed to 'ask'." -msgstr "" -"Der Schlüssel mit dem Fingerabdruck %s steht im Konflikt mit der Bindung " -"(%s). Die Richtlinie dieser Bindung wurde deswegen von 'auto' auf 'ask' " -"geändert." +msgstr " Aufgrund der Bindungs-Richtline 'auto' wurde sie auf 'ask' geändert." #, c-format msgid "" "Please indicate whether this email address should be associated with key %s " "or whether you think someone is impersonating \"%s\"." msgstr "" +"Bitte geben Sie an, ob diese Mailadresse mit dem Schlüssel %s\n" +"verbunden sein soll oder ob jemand anderes sich für \"%s\" ausgibt." #, c-format msgid "error gathering other user IDs: %s\n" @@ -5833,87 +5823,72 @@ msgid_plural "Encrypted %d messages." msgstr[0] "%d Nachricht wurde verschlüsselt." msgstr[1] "%d Nachrichten wurden verschlüsselt." -#, fuzzy, c-format -#| msgid "%ld message signed in the future." -#| msgid_plural "%ld messages signed in the future." +#, c-format msgid "Verified %d message in the future." msgid_plural "Verified %d messages in the future." -msgstr[0] "%ld Nachricht in der Zukunft signiert." -msgstr[1] "%ld Nachrichten in der Zukunf signiert." +msgstr[0] "%d Nachricht in der Zukunft signiert." +msgstr[1] "%d Nachrichten in der Zukunf signiert." -#, fuzzy, c-format -#| msgid "%ld message signed in the future." -#| msgid_plural "%ld messages signed in the future." +#, c-format msgid "Encrypted %d message in the future." msgid_plural "Encrypted %d messages in the future." -msgstr[0] "%ld Nachricht in der Zukunft signiert." -msgstr[1] "%ld Nachrichten in der Zukunf signiert." +msgstr[0] "%d Nachricht in der Zukunft verschlüsselt." +msgstr[1] "%d Nachrichten in der Zukunft verschlüsselt." -#, fuzzy, c-format -#| msgid " over the past %ld day." -#| msgid_plural " over the past %ld days." +#, c-format msgid "Messages verified over the past %d day: %d." msgid_plural "Messages verified over the past %d days: %d." -msgstr[0] " innerhalb des letzten Tages." -msgstr[1] " innerhalb der letzten %ld Tage." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Tages überprüft wurden: %d." +msgstr[1] "Nachrichten die innerhalb der letzten %d Tage überprüft wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld day." -#| msgid_plural " over the past %ld days." +#, c-format msgid "Messages encrypted over the past %d day: %d." msgid_plural "Messages encrypted over the past %d days: %d." -msgstr[0] " innerhalb des letzten Tages." -msgstr[1] " innerhalb der letzten %ld Tage." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Tages verschlüsselt wurden: %d." +msgstr[1] "" +"Nachrichten die innerhalb der letzten %d Tage verschlüsselt wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld month." -#| msgid_plural " over the past %ld months." +#, c-format msgid "Messages verified over the past %d month: %d." msgid_plural "Messages verified over the past %d months: %d." -msgstr[0] " innerhalb des letzten Monats." -msgstr[1] " innerhalb der letzten %ld Monate." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Monats überprüft wurden: %d." +msgstr[1] "" +"Nachrichten die innerhalb der letzten %d Monate überprüft wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld month." -#| msgid_plural " over the past %ld months." +#, c-format msgid "Messages encrypted over the past %d month: %d." msgid_plural "Messages encrypted over the past %d months: %d." -msgstr[0] " innerhalb des letzten Monats." -msgstr[1] " innerhalb der letzten %ld Monate." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Monats verschlüsselt wurden: %d." +msgstr[1] "" +"Nachrichten die innerhalb der letzten %d Monate verschlüsselt wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld day." -#| msgid_plural " over the past %ld days." +#, c-format msgid "Messages verified over the past %d year: %d." msgid_plural "Messages verified over the past %d years: %d." -msgstr[0] " innerhalb des letzten Tages." -msgstr[1] " innerhalb der letzten %ld Tage." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Jahres überprüft wurden: %d." +msgstr[1] "" +"Nachrichten die innerhalb der letzten %d Jahre überprüft wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld day." -#| msgid_plural " over the past %ld days." +#, c-format msgid "Messages encrypted over the past %d year: %d." msgid_plural "Messages encrypted over the past %d years: %d." -msgstr[0] " innerhalb des letzten Tages." -msgstr[1] " innerhalb der letzten %ld Tage." +msgstr[0] "" +"Nachrichten die innerhalb des letzten %d Jahres verschlüsselt wurden: %d." +msgstr[1] "" +"Nachrichten die innerhalb der letzten %d Jahre verschlüsselt wurden: %d." -#, fuzzy, c-format -#| msgid " over the past %ld day." -#| msgid_plural " over the past %ld days." +#, c-format msgid "Messages verified in the past: %d." -msgstr " innerhalb des letzten Tages." - -#, fuzzy, c-format -#| msgid "" -#| "Verified %ld message signed by \"%s\"\n" -#| "in the past %s." -#| msgid_plural "" -#| "Verified %ld messages signed by \"%s\"\n" -#| "in the past %s." +msgstr "Nachrichten die in der Vergangenheit überprüft wurden: %d." + +#, c-format msgid "Messages encrypted in the past: %d." -msgstr "" -"%ld überprüfte Nachricht von \"%s\"\n" -"in den letzten %s." +msgstr "Nachricht die in der Vergangenheit verschlüsselt wurden: %d." #. TRANSLATORS: Please translate the text found in the source #. * file below. We don't directly internationalize that text so @@ -5938,21 +5913,11 @@ msgid "(G)ood, (A)ccept once, (U)nknown, (R)eject once, (B)ad? " msgstr "(G)ut, einmal (A)kzeptieren, (U)nbekannt, einmal ab(L)ehnen, (F)alsch?" msgid "Defaulting to unknown.\n" -msgstr "" +msgstr "Als Voreinstellung wird 'Unbekannt' verwendet.\n" #, c-format msgid "TOFU db corruption detected.\n" -msgstr "" - -#, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "Fehler beim Schreiben des Schlüssels: %s\n" - -#, fuzzy, c-format -#| msgid "error setting TOFU binding's trust level to %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "Fehler beim Setzen der TOFU Binding Vertrauensstufe auf %s\n" +msgstr "TOFU Datenbank ist defekt.\n" #, c-format msgid "error changing TOFU policy: %s\n" @@ -6000,72 +5965,27 @@ msgid_plural "%lld~seconds" msgstr[0] "%lld~Sekunde" msgstr[1] "%lld~Sekunden" -#, fuzzy, c-format -#| msgid "TOFU: few signatures %d message %s" -#| msgid_plural "TOFU: few signatures %d messages %s" +#, c-format msgid "%s: Verified 0~signatures and encrypted 0~messages." -msgstr "" -"WARNUNG: Falls sie glauben, mehr als %d mit diesem Schlüssel signierte\n" -"Nachricht erhalten zu haben, so kann es sich bei diesem Schlüssel um\n" -"eine Fälschung handeln! Prüfen Sie die Email-Adresse genau auf kleine\n" -"Variationen (z.B. zusätzliche Leerzeichen). Falls Ihnen der Schlüssel\n" -"suspekt erscheint, so benutzen Sie '%s' um den Schlüssel als Fälschung\n" -"zu markieren." +msgstr "%s: 0~Signaturen und 0~Nachrichten verschlüsselt." -#, fuzzy, c-format -#| msgid "Deleted %d signatures.\n" +#, c-format msgid "%s: Verified 0 signatures." -msgstr "%d Beglaubigungen entfernt.\n" - -#, fuzzy, c-format -#| msgid "" -#| "Verified %ld message signed by \"%s\"\n" -#| "in the past %s." -#| msgid_plural "" -#| "Verified %ld messages signed by \"%s\"\n" -#| "in the past %s." -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "" -"%ld überprüfte Nachricht von \"%s\"\n" -"in den letzten %s." -msgstr[1] "" -"%ld überprüfte Nachrichten von \"%s\"\n" -"in den letzten %s." +msgstr "%s: 0~Signaturen überprüft." -#, fuzzy -#| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." -msgstr "Verschlüsselt mit %lu Passphrases\n" - -#, fuzzy, c-format -#| msgid "" -#| "Verified %ld message signed by \"%s\"\n" -#| "in the past %s." -#| msgid_plural "" -#| "Verified %ld messages signed by \"%s\"\n" -#| "in the past %s." -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "" -"%ld überprüfte Nachricht von \"%s\"\n" -"in den letzten %s." -msgstr[1] "" -"%ld überprüfte Nachrichten von \"%s\"\n" -"in den letzten %s." +msgstr "0 Nachrichten verschlüsselt." -#, fuzzy, c-format -#| msgid "policy: %s" +#, c-format msgid "(policy: %s)" -msgstr "Richtlinie: %s" +msgstr "(Richtlinie: %s)" -#, fuzzy, c-format -#| msgid "Warning: we've have yet to see a message signed by this key!\n" +#, c-format msgid "" "Warning: we have yet to see a message signed using this key and user id!\n" msgstr "" -"WARNUNG: Wir müssen noch eine mit diesem Schlüssel signierte Nachricht " -"sehen.\n" +"WARNUNG: Wir müssen noch eine mit diesem Schlüssel und User-ID signierte " +"Nachricht sehen.\n" #, c-format msgid "" @@ -6074,19 +5994,17 @@ msgstr "" "WARNUNG: Wir haben nur eine einzige mit diesem Schlüssel signierte Nachricht " "gesehen.\n" -#, fuzzy, c-format -#| msgid "Warning: we've have yet to see a message signed by this key!\n" +#, c-format msgid "Warning: you have yet to encrypt a message to this key!\n" msgstr "" -"WARNUNG: Wir müssen noch eine mit diesem Schlüssel signierte Nachricht " -"sehen.\n" +"WARNUNG: Sie müssen noch eine verschlüselte Nachricht an diesen Schlüssel " +"senden!\n" -#, fuzzy, c-format -#| msgid "Warning: we've only seen a single message signed by this key!\n" +#, c-format msgid "Warning: you have only encrypted one message to this key!\n" msgstr "" -"WARNUNG: Wir haben nur eine einzige mit diesem Schlüssel signierte Nachricht " -"gesehen.\n" +"WARNUNG: Sie haben nur eine verschlüsselte Nachricht an diesen Schlüssel " +"erstellt!\n" #, c-format msgid "" @@ -6125,11 +6043,7 @@ msgstr "Fehler beim Öffnen der TOFU Datenbank: %s\n" #, c-format msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" - -#, fuzzy, c-format -#| msgid "error writing public keyring '%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "Fehler beim Schreiben des öff. Schlüsselbundes `%s': %s\n" +"WARNUNG: Es wird an %s verschlüsselt, welcher nur widerrufene User-IDs hat.\n" #, c-format msgid "'%s' is not a valid long keyID\n" @@ -8376,10 +8290,9 @@ msgstr "URL `%s' nach `%s' umgeleitet (%u)\n" msgid "too many redirections\n" msgstr "zu viele verschachtelte Umleitungen\n" -#, fuzzy, c-format -#| msgid "writing to '%s'\n" +#, c-format msgid "redirection changed to '%s'\n" -msgstr "Schreiben nach '%s'\n" +msgstr "\"Redirection\" geändert auf '%s'\n" #, c-format msgid "error allocating memory: %s\n" @@ -8490,6 +8403,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "OCSP Responder `%s' Status: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "Kontext zum Hashen von OCSP kann nicht erzeugt werden: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "Hashen der OCSP Antwort für `%s' fehlgeschlagen: %s\n" @@ -8498,10 +8415,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "Nicht durch voreingestelltes OCSP \"Signer-Zertifikat\" signiert" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "Lediglich SHA-1 wird bei OCSP Antworten unterstützt\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "malloc() fehlgeschlagen: %s\n" @@ -8551,10 +8464,6 @@ msgid "using OCSP responder '%s'\n" msgstr "Der OCSP Responder `%s' wird benutzt\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "Kontext zum Hashen von OCSP kann nicht erzeugt werden: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "Fehler beim Holen des OCSP Status für das Zielzertifikat: %s\n" @@ -8867,6 +8776,14 @@ msgid "Component not suitable for launching" msgstr "Komponente unterstützt kein direktes starten" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "Die Konfigurationsdatei der Komponente %s ist defekt\n" + +#, c-format +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Hinweis: Für Details bitte das Kommando \"%s%s\" verwenden.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "Die externe Überprüfung der Komponente %s war nicht erfolgreich" @@ -9097,6 +9014,69 @@ msgstr "" "Syntax: gpg-check-pattern [optionen] Musterdatei\n" "Die von stdin gelesene Passphrase gegen die Musterdatei prüfen\n" +#, fuzzy +#~| msgid "error writing public keyring '%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "Fehler beim Schreiben des öff. Schlüsselbundes `%s': %s\n" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "Lediglich SHA-1 wird bei OCSP Antworten unterstützt\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "Fehler beim Erstellen einer temporären Datei: %s\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "Fehler beim Erstellen einer temporären Datei: %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "Fehler beim Schreiben des Schlüssels: %s\n" + +#, fuzzy +#~| msgid "error setting TOFU binding's trust level to %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "Fehler beim Setzen der TOFU Binding Vertrauensstufe auf %s\n" + +#, fuzzy +#~| msgid "" +#~| "Verified %ld message signed by \"%s\"\n" +#~| "in the past %s." +#~| msgid_plural "" +#~| "Verified %ld messages signed by \"%s\"\n" +#~| "in the past %s." +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "" +#~ "%ld überprüfte Nachricht von \"%s\"\n" +#~ "in den letzten %s." +#~ msgstr[1] "" +#~ "%ld überprüfte Nachrichten von \"%s\"\n" +#~ "in den letzten %s." + +#, fuzzy +#~| msgid "" +#~| "Verified %ld message signed by \"%s\"\n" +#~| "in the past %s." +#~| msgid_plural "" +#~| "Verified %ld messages signed by \"%s\"\n" +#~| "in the past %s." +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "" +#~ "%ld überprüfte Nachricht von \"%s\"\n" +#~ "in den letzten %s." +#~ msgstr[1] "" +#~ "%ld überprüfte Nachrichten von \"%s\"\n" +#~ "in den letzten %s." + +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "Kein Schlüsselserver bekannt (Option --keyserver verwenden)\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "Warte bis der Dirmngr bereit ist ... (%ds)\n" @@ -1669,6 +1669,18 @@ msgstr "(εκτός εάν προσδιορίσετε ένα κλειδί από msgid "can't do this in batch mode without \"--yes\"\n" msgstr "δεν μπορεί να γίνει αυτό σε κατάσταση δέσμης χωρίς το \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Διαγραφή αυτού του κλειδιού από τη κλειδοθήκη; " @@ -1690,6 +1702,10 @@ msgid "subkey" msgstr "ΔημοσΚλειδί:" #, c-format +msgid "update failed: %s\n" +msgstr "η ενημέρωση απέτυχε: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "διαγραφή block κλειδιών απέτυχε: %s\n" @@ -3612,10 +3628,6 @@ msgid "Quit without saving? (y/N) " msgstr "Τερματισμός χωρίς αποθήκευση; " #, c-format -msgid "update failed: %s\n" -msgstr "η ενημέρωση απέτυχε: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Το κλειδί δεν άλλαξε οπότε δεν χρειάζεται ενημέρωση.\n" @@ -4653,10 +4665,6 @@ msgstr "το κλειδί '%s' δε βρέθηκε: %s\n" msgid "key not found on keyserver\n" msgstr "το κλειδί '%s' δε βρέθηκε: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "αίτηση κλειδιού %08lX από το %s\n" @@ -5932,10 +5940,6 @@ msgstr "" "\n" "Υποστηριζόμενοι αλγόριθμοι:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "σφάλμα στη δημιουργία της φράσης κλειδί: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5955,14 +5959,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: σφάλμα στην εγγραφή της εγγραφής dir : %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "σφάλμα στη αποστολή προς το `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "σφάλμα κατά την ανάγνωση του `%s': %s\n" @@ -6115,14 +6111,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "αδυναμία εγγραφής της κλειδοθήκης `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "σφάλμα κατά την ανάγνωση του `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "σφάλμα στη δημιουργία της φράσης κλειδί: %s\n" @@ -6177,24 +6165,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Διαγράφηκαν %d υπογραφές.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" -msgstr[1] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "κρυπτογραφημένο με %lu φράσεις κλειδιά\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" -msgstr[1] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Πολιτική: " @@ -6242,11 +6218,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "αδυναμία εγγραφής δημόσιας κλειδοθήκης `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' δεν είναι έγκυρο μακρύ keyID\n" @@ -8606,6 +8577,10 @@ msgstr "σφάλμα στη αποστολή προς το `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "απέτυχε ο έλεγχος της υπογραφής που δημιουργήθηκε: %s\n" @@ -8614,10 +8589,6 @@ msgstr "απέτυχε ο έλεγχος της υπογραφής που δημ msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "διαγραφή block κλειδιών απέτυχε: %s\n" @@ -8669,10 +8640,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "χρήση του κρυπταλγόριθμου: %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "σφάλμα στη δημιουργία της φράσης κλειδί: %s\n" @@ -8995,6 +8962,15 @@ msgid "Component not suitable for launching" msgstr "δεν βρέθηκε το δημόσιο κλειδί" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Παρακαλώ χρησιμοποιείστε την εντολή \"toggle\" πρώτα.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9231,6 +9207,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "σφάλμα στη δημιουργία της φράσης κλειδί: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "σφάλμα στη αποστολή προς το `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "αδυναμία εγγραφής της κλειδοθήκης `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "σφάλμα κατά την ανάγνωση του `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" +#~ msgstr[1] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" +#~ msgstr[1] "|αλγόρ [αρχεία]| απεικόνιση περιλήψεων των μηνυμάτων" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "αδυναμία εγγραφής δημόσιας κλειδοθήκης `%s': %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "σφάλμα κατά την ανάγνωση του `%s': %s\n" @@ -1669,6 +1669,18 @@ msgstr "" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "ne povas fari tion en neinteraga reĝimo sen \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Ĉu forviŝi ĉi tiun ŝlosilon de la ŝlosilaro? " @@ -1689,6 +1701,10 @@ msgid "subkey" msgstr "al" #, c-format +msgid "update failed: %s\n" +msgstr "aktualigo malsukcesis: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "forviŝo de ŝlosilbloko malsukcesis: %s\n" @@ -3585,10 +3601,6 @@ msgid "Quit without saving? (y/N) " msgstr "Ĉu fini sen skribi ŝanĝojn? " #, c-format -msgid "update failed: %s\n" -msgstr "aktualigo malsukcesis: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Ŝlosilo ne ŝanĝita, do aktualigo ne necesas.\n" @@ -4616,10 +4628,6 @@ msgstr "ŝlosilo '%s' ne trovita: %s\n" msgid "key not found on keyserver\n" msgstr "ŝlosilo '%s' ne trovita: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "neniu ŝlosilservilo konata (uzu la opcion --keyserver)\n" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "petas la ŝlosilon %08lX de HKP-ŝlosilservilo %s ...\n" @@ -5857,10 +5865,6 @@ msgstr "" "\n" "Realigitaj metodoj:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "eraro dum kreado de pasfrazo: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5880,14 +5884,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: eraro dum skribo de dosieruja registro: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "eraro dum sendo al '%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "eraro dum legado de '%s': %s\n" @@ -6039,14 +6035,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "eraro dum skribado de ŝlosilaro '%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "eraro dum legado de '%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "eraro dum kreado de pasfrazo: %s\n" @@ -6101,23 +6089,11 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Forviŝis %d subskribojn.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" -msgstr[1] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" - #, fuzzy msgid "Encrypted 0 messages." msgstr "Ripetu pasfrazon\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" -msgstr[1] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Gvidlinio: " @@ -6165,11 +6141,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "eraro dum skribado de publika ŝlosilaro '%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "'%s' ne estas valida longa ŝlosilidentigilo\n" @@ -8522,6 +8493,10 @@ msgstr "eraro dum sendo al '%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "changing permission of `%s' failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -8531,10 +8506,6 @@ msgstr "ŝanĝo de permesoj de '%s' malsukcesis: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "forviŝo de ŝlosilbloko malsukcesis: %s\n" @@ -8585,10 +8556,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "subskribado malsukcesis: %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "eraro dum kreado de pasfrazo: %s\n" @@ -8911,6 +8878,15 @@ msgid "Component not suitable for launching" msgstr "publika ŝlosilo ne trovita" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Bonvolu uzi la komandon \"toggle\" unue.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9146,6 +9122,42 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "neniu ŝlosilservilo konata (uzu la opcion --keyserver)\n" + +#, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "eraro dum kreado de pasfrazo: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "eraro dum sendo al '%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "eraro dum skribado de ŝlosilaro '%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "eraro dum legado de '%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" +#~ msgstr[1] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" +#~ msgstr[1] "|metodo [dosieroj]|presi mesaĝo-kompendiojn" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "eraro dum skribado de publika ŝlosilaro '%s': %s\n" + #, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "eraro dum legado de '%s': %s\n" @@ -1607,6 +1607,18 @@ msgstr "(excepto si especifica la clave dando su huella digital)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "imposible hacer esto en modo de proceso por lotes sin \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "¿Eliminar esta clave del anillo? (s/N) " @@ -1624,6 +1636,10 @@ msgid "subkey" msgstr "subclave" #, c-format +msgid "update failed: %s\n" +msgstr "actualización fallida: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "borrado de bloque de anillo de claves fallido: %s\n" @@ -3402,10 +3418,6 @@ msgid "Quit without saving? (y/N) " msgstr "¿Salir sin grabar? (s/N) " #, c-format -msgid "update failed: %s\n" -msgstr "actualización fallida: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Clave sin cambios, no se necesita actualización.\n" @@ -4387,10 +4399,6 @@ msgid "key not found on keyserver\n" msgstr "clave no encontrada en el servidor\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "no hay servidores de claves conocidos (use opción --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "solicitando clave %s de %s servidor %s\n" @@ -5636,10 +5644,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "version de base de datos TOFU no soportada: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "error al crear tabla TOFU de 'claves confiadas': %s\n" - -#, c-format msgid "TOFU DB error" msgstr "Error de la base de datos de TOFU" @@ -5656,15 +5660,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "error iniciando base de datos TOFU: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "error al crear la tabla TOFU 'encryptions': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" -"agregando la columna effective_policy a la base de datos bindings: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "error al abrir base de datos TOFU '%s': %s\n" @@ -5824,14 +5819,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Detectada corrupción en la base de datos TOFU.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "reiniciando base de datos de claves: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "error al establecer la política de binding TOFU a %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "error al cambiar la política TOFU: %s\n" @@ -5885,22 +5872,10 @@ msgstr "%s: Verificadas 0~firmas y cifrados 0~mensajes." msgid "%s: Verified 0 signatures." msgstr "%s: Verificadas 0 firmas." -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: Verificada %ld~firma en %s." -msgstr[1] "%s: Verificadas %ld~firmas en %s." - msgid "Encrypted 0 messages." msgstr "Cifrados 0 mensajes." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Cifrado %ld~mensaje en los últimos %s." -msgstr[1] "Cifrados %ld~mensajes en los últimos %s." - -#, c-format msgid "(policy: %s)" msgstr "(política: %s)" @@ -5965,11 +5940,6 @@ msgstr "" "no revocado\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "" -"error al establecer política para la clave %s, id de usuario \"%s\": %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "'%s' no es un identificador largo de clave válido\n" @@ -8290,6 +8260,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "status del OCSP responder en '%s': %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "fallo al establecer un contexto de hashing para OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "ha fallado el hashing de la respuesta OCSP para '%s': %s\n" @@ -8298,10 +8272,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "no firmada por un certificado predeterminado de firma OCSP" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "sólo SHA-1 es compatible para las respuestas OCSP\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "fallo al colocar item en la lista: %s\n" @@ -8352,10 +8322,6 @@ msgid "using OCSP responder '%s'\n" msgstr "usar OCSP responder '%s'\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "fallo al establecer un contexto de hashing para OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "error al obtener status OCSP para certificado de destino: %s\n" @@ -8671,6 +8637,16 @@ msgstr "Frase contraseña" msgid "Component not suitable for launching" msgstr "Componente no adecuando para lanzamiento" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Verificación externa del componente %s fallida" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Atención: Usa el comando \"%s\" para reiniciarlos.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Verificación externa del componente %s fallida" @@ -8908,6 +8884,42 @@ msgstr "" "Compara frase contraseña dada en entrada estándar con un fichero de " "patrones\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "no hay servidores de claves conocidos (use opción --keyserver)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "error al crear tabla TOFU de 'claves confiadas': %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "error al crear la tabla TOFU 'encryptions': %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "" +#~ "agregando la columna effective_policy a la base de datos bindings: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "reiniciando base de datos de claves: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "error al establecer la política de binding TOFU a %s\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: Verificada %ld~firma en %s." +#~ msgstr[1] "%s: Verificadas %ld~firmas en %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Cifrado %ld~mensaje en los últimos %s." +#~ msgstr[1] "Cifrados %ld~mensajes en los últimos %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "" +#~ "error al establecer política para la clave %s, id de usuario \"%s\": %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "sólo SHA-1 es compatible para las respuestas OCSP\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "esperando que el dirmngr arranque... ( %ds)\n" @@ -1665,6 +1665,18 @@ msgstr "(kui te just ei määra võtit sõrmejäljega)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "pakettmoodis ei õnnestu seda teha võtmeta \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Kustutan selle võtme võtmehoidlast? " @@ -1686,6 +1698,10 @@ msgid "subkey" msgstr "Avalik võti: " #, c-format +msgid "update failed: %s\n" +msgstr "uuendamine ebaõnnestus: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "võtmebloki kustutamine ebaõnnestus: %s\n" @@ -3584,10 +3600,6 @@ msgid "Quit without saving? (y/N) " msgstr "Väljun salvestamata? " #, c-format -msgid "update failed: %s\n" -msgstr "uuendamine ebaõnnestus: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Võtit ei muudetud, seega pole uuendamist vaja.\n" @@ -4605,10 +4617,6 @@ msgstr "võtit '%s' ei leitud: %s\n" msgid "key not found on keyserver\n" msgstr "võtit '%s' ei leitud: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "küsin võtit %08lX võtmeserverist %s\n" @@ -5856,10 +5864,6 @@ msgstr "" "\n" "Toetatud algoritmid:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "viga parooli loomisel: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5879,14 +5883,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: viga kataloogikirje kirjutamisel: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "viga teate saatmisel serverile `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "viga `%s' lugemisel: %s\n" @@ -6039,14 +6035,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "viga võtmehoidlasse `%s' kirjutamisel: %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "viga `%s' lugemisel: %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "viga parooli loomisel: %s\n" @@ -6101,24 +6089,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Kustutatud %d allkirja.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [failid]|trüki teatelühendid" -msgstr[1] "|algo [failid]|trüki teatelühendid" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "krüpteeritud kasutades %lu parooli\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [failid]|trüki teatelühendid" -msgstr[1] "|algo [failid]|trüki teatelühendid" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Poliis: " @@ -6166,11 +6142,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "viga avaliku võtme võtmehoidlasse `%s' kirjutamisel: %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' ei ole kehtiv pikk võtmeID\n" @@ -8522,6 +8493,10 @@ msgstr "viga teate saatmisel serverile `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "Loodud allkirja ei õnnestu kontrollida: %s\n" @@ -8530,10 +8505,6 @@ msgstr "Loodud allkirja ei õnnestu kontrollida: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "võtmebloki kustutamine ebaõnnestus: %s\n" @@ -8585,10 +8556,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "kasutan šiffrit %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "viga parooli loomisel: %s\n" @@ -8911,6 +8878,15 @@ msgid "Component not suitable for launching" msgstr "ei leia avalikku võtit" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Palun kasutage kõigepealt käsku \"toggle\".\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9147,6 +9123,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "viga parooli loomisel: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "viga teate saatmisel serverile `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "viga võtmehoidlasse `%s' kirjutamisel: %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "viga `%s' lugemisel: %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [failid]|trüki teatelühendid" +#~ msgstr[1] "|algo [failid]|trüki teatelühendid" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [failid]|trüki teatelühendid" +#~ msgstr[1] "|algo [failid]|trüki teatelühendid" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "viga avaliku võtme võtmehoidlasse `%s' kirjutamisel: %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "viga `%s' lugemisel: %s\n" @@ -1684,6 +1684,18 @@ msgstr "(ellet määritä avainta sormenjäljen perusteella)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "ei onnistu eräajossa ilman \"--yes\"-valitsinta\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Poista tämä avain avainrenkaasta? " @@ -1705,6 +1717,10 @@ msgid "subkey" msgstr "JulkAvain: " #, c-format +msgid "update failed: %s\n" +msgstr "päivitys epäonnistui: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "avainlohkojen poisto epäonnistui: %s\n" @@ -3604,10 +3620,6 @@ msgid "Quit without saving? (y/N) " msgstr "Lopeta tallentamatta muutoksia?" #, c-format -msgid "update failed: %s\n" -msgstr "päivitys epäonnistui: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Päivitystä ei tarvita, koska avain ei ole muuttunut.\n" @@ -4635,10 +4647,6 @@ msgstr "avainta \"%s\" ei löydy: %s\n" msgid "key not found on keyserver\n" msgstr "avainta \"%s\" ei löydy: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "pyydetään avainta %08lX kohteesta %s\n" @@ -5913,10 +5921,6 @@ msgstr "" "\n" "Tuetut algoritmit:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "virhe luotaessa salasanaa: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5936,14 +5940,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: virhe kirjoitettaessa hakemistotietuetta: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "virhe lähettäessä kohteeseen \"%s\": %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "virhe luettaessa tiedostoa \"%s\": %s\n" @@ -6096,14 +6092,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "virhe kirjoitettaessa avainrenkaaseen \"%s\": %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "virhe luettaessa tiedostoa \"%s\": %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "virhe luotaessa salasanaa: %s\n" @@ -6158,24 +6146,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "%d allekirjoitusta poistettu.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [tiedostot]|tulosta viestien tiivisteet" -msgstr[1] "|algo [tiedostot]|tulosta viestien tiivisteet" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "salattu %lu salasanalla\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [tiedostot]|tulosta viestien tiivisteet" -msgstr[1] "|algo [tiedostot]|tulosta viestien tiivisteet" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Käytäntö: " @@ -6223,11 +6199,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "virhe kirjoitettaessa julkiseen avainrenkaaseen \"%s\": %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "\"%s\" ei kelpaa pitkänä avaintunnuksena\n" @@ -8584,6 +8555,10 @@ msgstr "virhe lähettäessä kohteeseen \"%s\": %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "luodun allekirjoituksen tarkistus epäonnistui: %s\n" @@ -8592,10 +8567,6 @@ msgstr "luodun allekirjoituksen tarkistus epäonnistui: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "avainlohkojen poisto epäonnistui: %s\n" @@ -8647,10 +8618,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "käytetään salakirjoitusalgoritmia %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "virhe luotaessa salasanaa: %s\n" @@ -8973,6 +8940,15 @@ msgid "Component not suitable for launching" msgstr "julkista avainta ei löydy" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Käytä ensin komentoa \"toggle\".\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9209,6 +9185,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "virhe luotaessa salasanaa: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "virhe lähettäessä kohteeseen \"%s\": %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "virhe kirjoitettaessa avainrenkaaseen \"%s\": %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "virhe luettaessa tiedostoa \"%s\": %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [tiedostot]|tulosta viestien tiivisteet" +#~ msgstr[1] "|algo [tiedostot]|tulosta viestien tiivisteet" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [tiedostot]|tulosta viestien tiivisteet" +#~ msgstr[1] "|algo [tiedostot]|tulosta viestien tiivisteet" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "virhe kirjoitettaessa julkiseen avainrenkaaseen \"%s\": %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "virhe luettaessa tiedostoa \"%s\": %s\n" @@ -1656,6 +1656,18 @@ msgstr "(à moins d'indiquer la clef par son empreinte)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "impossible de faire cela en mode automatique sans « --yes »\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Faut-il supprimer cette clef du porte-clefs ? (o/N) " @@ -1673,6 +1685,10 @@ msgid "subkey" msgstr "sous-clef" #, c-format +msgid "update failed: %s\n" +msgstr "échec de la mise à jour : %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "échec de suppression du bloc de clef : %s\n" @@ -3536,10 +3552,6 @@ msgid "Quit without saving? (y/N) " msgstr "Faut-il quitter sans enregistrer ? (o/N) " #, c-format -msgid "update failed: %s\n" -msgstr "échec de la mise à jour : %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "La clef n'a pas été modifiée donc la mise à jour est inutile.\n" @@ -4574,10 +4586,6 @@ msgid "key not found on keyserver\n" msgstr "clef introuvable sur le serveur de clefs\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "pas de serveur de clefs connu (utilisez l'option --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "demande de la clef %s sur le serveur %s %s\n" @@ -5899,11 +5907,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "algorithme non pris en charge : %s" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "erreur de création du fichier temporaire : %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5924,15 +5927,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "erreur d'initialisation de l'objet lecteur : %s\n" #, fuzzy, c-format -#| msgid "error sending data: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "erreur d'envoi de données : %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format #| msgid "error opening '%s': %s\n" msgid "error opening TOFU database '%s': %s\n" msgstr "erreur d'ouverture de « %s » : %s\n" @@ -6093,16 +6087,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "erreur d'écriture la clef : %s\n" - -#, fuzzy, c-format -#| msgid "error setting OCSP target: %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "erreur de configuration de la cible OCSP : %s\n" - -#, fuzzy, c-format #| msgid "error creating a pipe: %s\n" msgid "error changing TOFU policy: %s\n" msgstr "erreur de création d'un tube : %s\n" @@ -6158,26 +6142,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "%d signatures supprimées\n" -#, fuzzy, c-format -#| msgid "print message digests" -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "indiquer les fonctions de hachage" -msgstr[1] "indiquer les fonctions de hachage" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "chiffré avec %lu phrases secrètes\n" #, fuzzy, c-format -#| msgid "print message digests" -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "indiquer les fonctions de hachage" -msgstr[1] "indiquer les fonctions de hachage" - -#, fuzzy, c-format #| msgid "validity: %s" msgid "(policy: %s)" msgstr "validité : %s" @@ -6225,11 +6195,6 @@ msgstr "erreur d'envoi de données : %s\n" msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" -#, fuzzy, c-format -#| msgid "error writing public keyring '%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "erreur d'écriture du porte-clefs public « %s » : %s\n" - #, c-format msgid "'%s' is not a valid long keyID\n" msgstr "« %s » n'est pas un identifiant valable de clef longue\n" @@ -8652,6 +8617,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "répondeur OCSP à l'état « %s » : %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "échec d'établissement d'un contexte de hachage pour OCSP : %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "échec de hachage de la réponse OCSP pour « %s » : %s\n" @@ -8660,10 +8629,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "non signée par un certificat de signataire OCSP par défaut" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "seul SHA-1 est pris en charge pour les réponses\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "erreur d'allocation d'élément de liste : %s\n" @@ -8713,10 +8678,6 @@ msgid "using OCSP responder '%s'\n" msgstr "utilisation du répondeur OCSP « %s »\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "échec d'établissement d'un contexte de hachage pour OCSP : %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "erreur de lecture de l'état OCSP pour le certificat cible : %s\n" @@ -9048,6 +9009,16 @@ msgstr "Entrée de code personnel et de phrase secrète" msgid "Component not suitable for launching" msgstr "Composant non convenable pour le lancement" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Échec de vérification externe du composant %s" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Veuillez d'abord utiliser la commande « toggle ».\n" + #, c-format msgid "External verification of component %s failed" msgstr "Échec de vérification externe du composant %s" @@ -9286,6 +9257,51 @@ msgstr "" "Vérifier une phrase secrète donnée sur l'entrée standard par rapport à " "ficmotif\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "pas de serveur de clefs connu (utilisez l'option --keyserver)\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "erreur de création du fichier temporaire : %s\n" + +#, fuzzy +#~| msgid "error sending data: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "erreur d'envoi de données : %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "erreur d'écriture la clef : %s\n" + +#, fuzzy +#~| msgid "error setting OCSP target: %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "erreur de configuration de la cible OCSP : %s\n" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "indiquer les fonctions de hachage" +#~ msgstr[1] "indiquer les fonctions de hachage" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "indiquer les fonctions de hachage" +#~ msgstr[1] "indiquer les fonctions de hachage" + +#, fuzzy +#~| msgid "error writing public keyring '%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "erreur d'écriture du porte-clefs public « %s » : %s\n" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "seul SHA-1 est pris en charge pour les réponses\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "attente pour permettre au dirmngr d'arriver… (%d s)\n" @@ -1675,6 +1675,18 @@ msgid "can't do this in batch mode without \"--yes\"\n" msgstr "" "iso non se pode facer no modo de procesamento por lotes sen \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "¿Borrar esta chave do chaveiro? " @@ -1696,6 +1708,10 @@ msgid "subkey" msgstr "Pública: " #, c-format +msgid "update failed: %s\n" +msgstr "a actualización fallou: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "fallou o borrado do bloque de chaves: %s\n" @@ -3608,10 +3624,6 @@ msgid "Quit without saving? (y/N) " msgstr "¿Saír sin gardar? " #, c-format -msgid "update failed: %s\n" -msgstr "a actualización fallou: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "A chave non cambiou, polo que non fai falla actualizar.\n" @@ -4649,11 +4661,6 @@ msgstr "non se atopou a chave `%s': %s\n" msgid "key not found on keyserver\n" msgstr "non se atopou a chave `%s': %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" -"non hai un servidor de chaves coñecido (empregue a opción --keyserver)\n" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "solicitando a chave %08lX de %s\n" @@ -5918,10 +5925,6 @@ msgstr "" "\n" "Algoritmos soportados:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "erro ao crea-lo contrasinal: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5941,14 +5944,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: erro ao escribi-lo rexistro de directorios: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "erro ao enviar a `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "erro lendo `%s': %s\n" @@ -6101,14 +6096,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "erro escribindo no chaveiro `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "erro lendo `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "erro ao crea-lo contrasinal: %s\n" @@ -6163,24 +6150,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Borradas %d sinaturas.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [ficheiros]|visualizar resumos de mensaxes" -msgstr[1] "|algo [ficheiros]|visualizar resumos de mensaxes" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "cifrado con %lu contrasinais\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [ficheiros]|visualizar resumos de mensaxes" -msgstr[1] "|algo [ficheiros]|visualizar resumos de mensaxes" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Normativa: " @@ -6228,11 +6203,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "erro escribindo no chaveiro público `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' non é un ID longo de chave válido\n" @@ -8601,6 +8571,10 @@ msgstr "erro ao enviar a `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "changing permission of `%s' failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -8610,10 +8584,6 @@ msgstr "o cambio de permisos de `%s' fallou: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "fallou o borrado do bloque de chaves: %s\n" @@ -8664,10 +8634,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "fallou a sinatura: %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "erro ao crea-lo contrasinal: %s\n" @@ -8991,6 +8957,15 @@ msgid "Component not suitable for launching" msgstr "non se atopou a chave pública" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Por favor, empregue o comando \"toggle\" antes.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9228,6 +9203,43 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "" +#~ "non hai un servidor de chaves coñecido (empregue a opción --keyserver)\n" + +#, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "erro ao crea-lo contrasinal: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "erro ao enviar a `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "erro escribindo no chaveiro `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "erro lendo `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [ficheiros]|visualizar resumos de mensaxes" +#~ msgstr[1] "|algo [ficheiros]|visualizar resumos de mensaxes" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [ficheiros]|visualizar resumos de mensaxes" +#~ msgstr[1] "|algo [ficheiros]|visualizar resumos de mensaxes" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "erro escribindo no chaveiro público `%s': %s\n" + #, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "erro lendo `%s': %s\n" @@ -1665,6 +1665,18 @@ msgstr "(Kivéve, ha megad egy kulcsot az ujjlenyomatával.)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "Nem tudom ezt megcsinálni kötegelt módban \"--yes\" nélkül.\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Töröljem ezt a kulcsot a kulcskarikáról? " @@ -1686,6 +1698,10 @@ msgid "subkey" msgstr "Nyilvános kulcsú (pubkey): " #, c-format +msgid "update failed: %s\n" +msgstr "Frissítés sikertelen: %s.\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "A kulcsblokk törlése sikertelen: %s.\n" @@ -3583,10 +3599,6 @@ msgid "Quit without saving? (y/N) " msgstr "Kilépjek mentés nélkül? " #, c-format -msgid "update failed: %s\n" -msgstr "Frissítés sikertelen: %s.\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "A kulcs nem változott, nincs szükség frissítésre.\n" @@ -4616,10 +4628,6 @@ msgstr "\"%s\" kulcs nem található: %s\n" msgid "key not found on keyserver\n" msgstr "\"%s\" kulcs nem található: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "Lekérem a %08lX kulcsot a %s kulcsszerverről.\n" @@ -5884,10 +5892,6 @@ msgstr "" "\n" "Támogatott algoritmusok:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "Hiba a jelszó létrehozásakor: %s.\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5907,14 +5911,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: Hiba könyvtárrekord írásakor: %s.\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "Hiba %s-ra/-re küldéskor: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "Hiba \"%s\" olvasásakor: %s\n" @@ -6067,14 +6063,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "Hiba a \"%s\" kulcskarika írásakor: %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "Hiba \"%s\" olvasásakor: %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "Hiba a jelszó létrehozásakor: %s.\n" @@ -6129,24 +6117,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Töröltem %d aláírást.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [fájlok]|üzenet kivonatának kiírása" -msgstr[1] "|algo [fájlok]|üzenet kivonatának kiírása" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "%lu jelszóval rejtjelezve\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [fájlok]|üzenet kivonatának kiírása" -msgstr[1] "|algo [fájlok]|üzenet kivonatának kiírása" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Eljárásmód: " @@ -6194,11 +6170,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "Hiba a(z) \"%s\" nyilvánoskulcs-karika írásakor: %s.\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "\"%s\" nem egy érvényes hosszú kulcsazonosító.\n" @@ -8552,6 +8523,10 @@ msgstr "Hiba %s-ra/-re küldéskor: %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "A létrehozott aláírás ellenőrzése sikertelen: %s.\n" @@ -8560,10 +8535,6 @@ msgstr "A létrehozott aláírás ellenőrzése sikertelen: %s.\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "A kulcsblokk törlése sikertelen: %s.\n" @@ -8615,10 +8586,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "%s rejtjelezést használok.\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "Hiba a jelszó létrehozásakor: %s.\n" @@ -8941,6 +8908,15 @@ msgid "Component not suitable for launching" msgstr "nyilvános kulcs nem található" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Kérem, használja előbb a \"toggle\" parancsot!\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9177,6 +9153,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "Hiba a jelszó létrehozásakor: %s.\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "Hiba %s-ra/-re küldéskor: %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "Hiba a \"%s\" kulcskarika írásakor: %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "Hiba \"%s\" olvasásakor: %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [fájlok]|üzenet kivonatának kiírása" +#~ msgstr[1] "|algo [fájlok]|üzenet kivonatának kiírása" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [fájlok]|üzenet kivonatának kiírása" +#~ msgstr[1] "|algo [fájlok]|üzenet kivonatának kiírása" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "Hiba a(z) \"%s\" nyilvánoskulcs-karika írásakor: %s.\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "Hiba \"%s\" olvasásakor: %s\n" @@ -1671,6 +1671,18 @@ msgstr "(kecuali anda menspesifikasikan kunci dengan fingerprint)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "tidak dapat dilakukan dalam mode batch tanpa \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Menghapus kunci ini dari keyring? " @@ -1692,6 +1704,10 @@ msgid "subkey" msgstr "Pubkey: " #, c-format +msgid "update failed: %s\n" +msgstr "gagal memperbarui: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "gagal menghapus keyblok: %s\n" @@ -3588,10 +3604,6 @@ msgid "Quit without saving? (y/N) " msgstr "Berhenti tanpa menyimpan? " #, c-format -msgid "update failed: %s\n" -msgstr "gagal memperbarui: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Kunci tidak berubah sehingga tidak perlu pembaharuan.\n" @@ -4619,10 +4631,6 @@ msgstr "kunci '%s' tidak ditemukan: %s\n" msgid "key not found on keyserver\n" msgstr "kunci '%s' tidak ditemukan: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "meminta kunci %08lX dari %s\n" @@ -5878,10 +5886,6 @@ msgstr "" "\n" "Algoritma yang didukung:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "kesalahan penciptaan passphrase: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5901,14 +5905,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: kesalahan menulis dir record: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "kesalahan mengirim ke `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "kesalahan membaca `%s': %s\n" @@ -6061,14 +6057,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "kesalahan menulis keyring `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "kesalahan membaca `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "kesalahan penciptaan passphrase: %s\n" @@ -6123,24 +6111,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Menghapus %d signature.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [file]|cetak digest pesan" -msgstr[1] "|algo [file]|cetak digest pesan" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "dienkripsi dengan passphrase %lu\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [file]|cetak digest pesan" -msgstr[1] "|algo [file]|cetak digest pesan" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Kebijakan: " @@ -6188,11 +6164,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "kesalahan menulis keyring publik `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "'%s' bukanlah keyID panjang yang valid\n" @@ -8545,6 +8516,10 @@ msgstr "kesalahan mengirim ke `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "Gagal memeriksa signature yang dibuat: %s\n" @@ -8553,10 +8528,6 @@ msgstr "Gagal memeriksa signature yang dibuat: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "gagal menghapus keyblok: %s\n" @@ -8608,10 +8579,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "menggunakan cipher %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "kesalahan penciptaan passphrase: %s\n" @@ -8934,6 +8901,15 @@ msgid "Component not suitable for launching" msgstr "kunci publik tidak ditemukan" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Silakan gunakan dulu perintah \"toogle\".\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9170,6 +9146,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "kesalahan penciptaan passphrase: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "kesalahan mengirim ke `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "kesalahan menulis keyring `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "kesalahan membaca `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [file]|cetak digest pesan" +#~ msgstr[1] "|algo [file]|cetak digest pesan" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [file]|cetak digest pesan" +#~ msgstr[1] "|algo [file]|cetak digest pesan" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "kesalahan menulis keyring publik `%s': %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "kesalahan membaca `%s': %s\n" @@ -1669,6 +1669,18 @@ msgstr "(a meno che la chiave sia specificata con il fingerprint)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "impossibile fare questo in modo batch senza \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Vuoi cancellare questa chiave dal portachiavi? " @@ -1690,6 +1702,10 @@ msgid "subkey" msgstr "A chiave pubblica: " #, c-format +msgid "update failed: %s\n" +msgstr "aggiornamento fallito: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "cancellazione del keyblock fallita: %s\n" @@ -3595,10 +3611,6 @@ msgid "Quit without saving? (y/N) " msgstr "Esco senza salvare? " #, c-format -msgid "update failed: %s\n" -msgstr "aggiornamento fallito: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "La chiave non è cambiata quindi non sono necessari aggiornamenti.\n" @@ -4636,10 +4648,6 @@ msgstr "chiave `%s' non trovata: %s\n" msgid "key not found on keyserver\n" msgstr "chiave `%s' non trovata: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "richiedo la chiave %08lX a %s\n" @@ -5916,10 +5924,6 @@ msgstr "" "\n" "Algoritmi gestiti:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "errore nella creazione della passhprase: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5939,14 +5943,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: errore durante la scrittura del dir record: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "errore leggendo `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "errore leggendo `%s': %s\n" @@ -6099,14 +6095,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "errore scrivendo il portachiavi `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "errore leggendo `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "errore nella creazione della passhprase: %s\n" @@ -6161,24 +6149,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Cancellate %d firme.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [files]|stampa tutti i message digests" -msgstr[1] "|algo [files]|stampa tutti i message digests" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "cifratto con %lu passphrase\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [files]|stampa tutti i message digests" -msgstr[1] "|algo [files]|stampa tutti i message digests" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Policy: " @@ -6226,11 +6202,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "errore scrivendo il portachiavi pubblico `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' non è un key ID lungo valido\n" @@ -8586,6 +8557,10 @@ msgstr "errore leggendo `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "controllo della firma creata fallito: %s\n" @@ -8594,10 +8569,6 @@ msgstr "controllo della firma creata fallito: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "cancellazione del keyblock fallita: %s\n" @@ -8649,10 +8620,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "uso il cifrario %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "errore nella creazione della passhprase: %s\n" @@ -8975,6 +8942,15 @@ msgid "Component not suitable for launching" msgstr "chiave pubblica non trovata" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Per favore usa prima il comando \"toggle\".\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9211,6 +9187,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "errore nella creazione della passhprase: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "errore leggendo `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "errore scrivendo il portachiavi `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "errore leggendo `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [files]|stampa tutti i message digests" +#~ msgstr[1] "|algo [files]|stampa tutti i message digests" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [files]|stampa tutti i message digests" +#~ msgstr[1] "|algo [files]|stampa tutti i message digests" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "errore scrivendo il portachiavi pubblico `%s': %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "errore leggendo `%s': %s\n" @@ -8,9 +8,9 @@ # msgid "" msgstr "" -"Project-Id-Version: gnupg 2.2.13\n" +"Project-Id-Version: gnupg 2.2.15\n" "Report-Msgid-Bugs-To: translations@gnupg.org\n" -"PO-Revision-Date: 2019-02-06 17:14+0900\n" +"PO-Revision-Date: 2019-04-23 12:54+0900\n" "Last-Translator: NIIBE Yutaka <gniibe@fsij.org>\n" "Language-Team: none\n" "Language: ja\n" @@ -1567,6 +1567,18 @@ msgstr "(フィンガー・プリントで鍵を指定してない限り)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "\"--yes\"なしでバッチ・モードではできません\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "この鍵を鍵リングから削除しますか? (y/N) " @@ -1584,6 +1596,10 @@ msgid "subkey" msgstr "副鍵: " #, c-format +msgid "update failed: %s\n" +msgstr "更新に失敗しました: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "鍵ブロックの削除に失敗しました: %s\n" @@ -3328,10 +3344,6 @@ msgid "Quit without saving? (y/N) " msgstr "保存せずに終了しますか? (y/N) " #, c-format -msgid "update failed: %s\n" -msgstr "更新に失敗しました: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "鍵は無変更なので更新は不要です。\n" @@ -3371,7 +3383,7 @@ msgstr "'%s'は、有効な有効期限ではありません\n" #, c-format msgid "\"%s\" is not a proper fingerprint\n" -msgstr "\"%s\"はフ正しいィンガープリントではありません\n" +msgstr "\"%s\"は正しいフィンガープリントではありません\n" #, c-format msgid "subkey \"%s\" not found\n" @@ -4289,10 +4301,6 @@ msgid "key not found on keyserver\n" msgstr "鍵が鍵サーバに見つかりません\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "既知の鍵サーバがありません (オプション--keyserverを使いましょう)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "鍵%sを%sからサーバ%sに要求\n" @@ -5493,10 +5501,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "サポートされていないTOFUデータベースバージョン: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "'ultimately_trusted_keys' TOFUテーブル作成エラー: %s\n" - -#, c-format msgid "TOFU DB error" msgstr "TOFU DBエラー" @@ -5513,14 +5517,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "TOFUデータベースの初期化エラー: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "'encryptions' TOFUデータベースの作成エラー: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "バインディングDBにカラムeffective_policyを追加: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "TOFUデータベースのオープンでエラー '%s': %s\n" @@ -5660,14 +5656,6 @@ msgid "TOFU db corruption detected.\n" msgstr "TOFU dbが壊れていることが検出されました。\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "keydbをリセット: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "TOFUバインディングのポリシーを %s に設定エラー\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "TOFUポリシーの作成エラー: %s\n" @@ -5714,20 +5702,10 @@ msgstr "%s: 0個の署名を検証、0個のメッセージを暗号化しまし msgid "%s: Verified 0 signatures." msgstr "%s: 0個の署名を検証しました。" -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: 署名を%ld個検証しました(これまで %s に)。" - msgid "Encrypted 0 messages." msgstr "0 個のメッセージを暗号化しました。" #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "メッセージを%ld個暗号化しました(これまで %s に)。" - -#, c-format msgid "(policy: %s)" msgstr "(ポリシー: %s)" @@ -5779,10 +5757,6 @@ msgstr "" "*警告*: %s に暗号化します。失効していないユーザIDが一つもないものです\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "鍵%s, ユーザID \"%s\"のポリシーの設定エラー: %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "'%s'は、有効な大型鍵IDでありません\n" @@ -8063,6 +8037,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "OSCP応答が '%s' でステイタス: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "OCSPのハッシュ・コンテクストを確立するのに失敗しました: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "'%s'に対するOCSP応答のハッシングに失敗しました: %s\n" @@ -8071,10 +8049,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "デフォルトOCSP署名者の証明で署名されていません" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "SHA-1だけがOCSPレスポンスとしてサポートされています\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "リスト項目の確保に失敗しました: %s\n" @@ -8123,10 +8097,6 @@ msgid "using OCSP responder '%s'\n" msgstr "OCSP応答'%s'を使います\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "OCSPのハッシュ・コンテクストを確立するのに失敗しました: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "対象の証明書のOCSPステイタスの取得エラー: %s\n" @@ -8434,6 +8404,16 @@ msgstr "パスフレーズ入力" msgid "Component not suitable for launching" msgstr "コンポーネントが起動するために適切ではありません" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "コンポーネント%sの外部の検証が失敗しました" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "注意: \"%s\"コマンドを使って再起動してください。\n" + #, c-format msgid "External verification of component %s failed" msgstr "コンポーネント%sの外部の検証が失敗しました" @@ -8665,6 +8645,38 @@ msgstr "" "形式: gpg-check-pattern [オプション] パターンファイル\n" "パターンファイルに対して標準入力のパスフレーズを確認する\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "既知の鍵サーバがありません (オプション--keyserverを使いましょう)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "'ultimately_trusted_keys' TOFUテーブル作成エラー: %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "'encryptions' TOFUデータベースの作成エラー: %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "バインディングDBにカラムeffective_policyを追加: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "keydbをリセット: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "TOFUバインディングのポリシーを %s に設定エラー\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: 署名を%ld個検証しました(これまで %s に)。" + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "メッセージを%ld個暗号化しました(これまで %s に)。" + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "鍵%s, ユーザID \"%s\"のポリシーの設定エラー: %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "SHA-1だけがOCSPレスポンスとしてサポートされています\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "dirmngrの起動のため、%d秒待ちます\n" @@ -1589,6 +1589,18 @@ msgstr "(med mindre du oppgir nøkkel ved hjelp av fingeravtrykk)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "du må bruke «--yes» for å gjøre dette i buntmodus\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Vil du slette denne nøkkelen fra nøkkelknippet? (j/N) " @@ -1607,6 +1619,10 @@ msgid "subkey" msgstr "undernøkkel" #, c-format +msgid "update failed: %s\n" +msgstr "oppdatering mislyktes: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "sletting av nøkkelblokk mislyktes: %s\n" @@ -3377,10 +3393,6 @@ msgid "Quit without saving? (y/N) " msgstr "Vil du avslutte uten å lagre? (j/N) " #, c-format -msgid "update failed: %s\n" -msgstr "oppdatering mislyktes: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Nøkkelen ble ikke endret, så ingen oppdatering er nødvendig.\n" @@ -4368,10 +4380,6 @@ msgid "key not found on keyserver\n" msgstr "fant ikke nøkkelen på nøkkeltjener\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "ingen kjent nøkkeltjener (bruk valget «--keyserver»)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "ber om nøkkelen %s fra %s tjener %s\n" @@ -5598,10 +5606,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "TOFU-databaseversjon støttes ikke: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "feil under oppretting av TOFU-tabell «ultimately_trusted_keys»: %s\n" - -#, c-format msgid "TOFU DB error" msgstr "TOFU DB-feil" @@ -5618,14 +5622,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "feil under oppstart av TOFU-database: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "feil under oppretting av TOFU-tabell «encryptions»: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "legger til kolonne «effective_policy» i tilknytningsdatabase: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "feil under åpning av TOFU-database «%s»: %s\n" @@ -5775,14 +5771,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Oppdaget ødelagt del av TOFU-database.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "tilbakestiller nøkkeldatabase: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "feil under endring av regel for TOFU-tilknytning til %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "feil under endring av TOFU-regler: %s\n" @@ -5836,22 +5824,10 @@ msgstr "%s: Bekreftet 0~signaturer og kryptert 0~meldinger." msgid "%s: Verified 0 signatures." msgstr "%s: Bekreftet 0 signaturer." -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: Bekreftet %ld~signatur i løpet av siste %s." -msgstr[1] "%s: Bekreftet %ld~signatur i løpet av siste %s." - msgid "Encrypted 0 messages." msgstr "Kryptert 0 meldinger." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Kryptert %ld~melding i løpet av siste %s." -msgstr[1] "Kryptert %ld~meldinger i løpet av siste %s." - -#, c-format msgid "(policy: %s)" msgstr "(regelsett: %s)" @@ -5915,10 +5891,6 @@ msgstr "" "opphevet\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "feil under endring av regel for nøkkel %s, bruker-id «%s»: %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "«%s» er en ugyldig lang nøkkel-ID\n" @@ -8206,6 +8178,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "Status for OCSP-svartjeneste ved «%s»: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "klarte ikke å sette opp kontrollsum-kontekst for OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "summering av OCSP-svar for «%s» mislyktes: %s\n" @@ -8214,10 +8190,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "ikke signert av sertifikat som tilhører en forvalgt OCSP-fullmektig" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "OSCP-svar skal bare bruke SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "tildeling av listeelement mislyktes: %s\n" @@ -8266,10 +8238,6 @@ msgid "using OCSP responder '%s'\n" msgstr "bruker OCSP-svartjeneste «%s»\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "klarte ikke å sette opp kontrollsum-kontekst for OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "feil under henting av OCSP-status for målsertifikat: %s\n" @@ -8577,6 +8545,16 @@ msgstr "Skriving av passordfrase" msgid "Component not suitable for launching" msgstr "Komponent egner seg ikke for oppstart" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Ekstern bekreftelse av komponent %s mislyktes" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Merk: Bruk kommandoen «%s» for å starte dem på nytt.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Ekstern bekreftelse av komponent %s mislyktes" @@ -8808,6 +8786,41 @@ msgstr "" "Syntaks: gpg-check-pattern [valg] mønsterfil\n" "Kontroller passordfrase oppgitt på standard innkanal mot valgt mønsterfil\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "ingen kjent nøkkeltjener (bruk valget «--keyserver»)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "" +#~ "feil under oppretting av TOFU-tabell «ultimately_trusted_keys»: %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "feil under oppretting av TOFU-tabell «encryptions»: %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "legger til kolonne «effective_policy» i tilknytningsdatabase: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "tilbakestiller nøkkeldatabase: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "feil under endring av regel for TOFU-tilknytning til %s\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: Bekreftet %ld~signatur i løpet av siste %s." +#~ msgstr[1] "%s: Bekreftet %ld~signatur i løpet av siste %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Kryptert %ld~melding i løpet av siste %s." +#~ msgstr[1] "Kryptert %ld~meldinger i løpet av siste %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "feil under endring av regel for nøkkel %s, bruker-id «%s»: %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "OSCP-svar skal bare bruke SHA-1\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "venter på at dirmngr skal dukke opp … (%ds)\n" @@ -6,9 +6,9 @@ # msgid "" msgstr "" -"Project-Id-Version: gnupg-2.2.12\n" +"Project-Id-Version: gnupg-2.2.14\n" "Report-Msgid-Bugs-To: translations@gnupg.org\n" -"PO-Revision-Date: 2019-01-09 21:45+0100\n" +"PO-Revision-Date: 2019-03-24 10:29+0100\n" "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n" "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n" "Language: pl\n" @@ -201,12 +201,10 @@ msgid "Reset Code" msgstr "Kod resetujący" msgid "Push ACK button on card/token." -msgstr "" +msgstr "Wciśnij przycisk ACK na karcie/tokenie." -#, fuzzy -#| msgid "%s%%0A%%0AUse the reader's pinpad for input." msgid "Use the reader's pinpad for input." -msgstr "%s%%0A%%0ADo wpisywania należy użyć klawiatury czytnika." +msgstr "Do wpisywania należy użyć klawiatury czytnika." msgid "Repeat this Reset Code" msgstr "Powtórz ten kod resetujący" @@ -1568,6 +1566,18 @@ msgstr "(chyba, że klucz zostaje wybrany przez podanie odcisku)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "bez opcji ,,--yes'' nie działa w trybie wsadowym\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Usunąć ten klucz ze zbioru? (t/N) " @@ -1585,6 +1595,10 @@ msgid "subkey" msgstr "podklucza" #, c-format +msgid "update failed: %s\n" +msgstr "zapis zmian nie powiódł się: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "usunięcie bloku klucza nie powiodło się: %s\n" @@ -3395,10 +3409,6 @@ msgid "Quit without saving? (y/N) " msgstr "Wyjść bez zapisania zmian? (t/N) " #, c-format -msgid "update failed: %s\n" -msgstr "zapis zmian nie powiódł się: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Klucz nie został zmieniony więc zapis zmian nie jest konieczny.\n" @@ -4404,10 +4414,6 @@ msgid "key not found on keyserver\n" msgstr "klucz nie został odnaleziony na serwerze kluczy\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "brak znanyk serwerów kluczy (użyj opcji --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "zapytanie o klucz %s z serwera %s %s\n" @@ -5663,10 +5669,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "nieobsługiwana wersja bazy danych TOFU: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "błąd tworzenia tabeli TOFU ,,ultimately_trusted_keys'': %s\n" - -#, c-format msgid "TOFU DB error" msgstr "Błąd bazy danych TOFU" @@ -5683,14 +5685,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "błąd inicjowania bazy danych TOFU: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "błąd tworzenia tabeli TOFU ,,encryptions'': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "dodawanie kolumny effective_policy do bazy danych powiązań: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "błąd otwierania bazy danych TOFU ,,%s'': %s\n" @@ -5858,14 +5852,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Wykryto uszkodzenie bazy danych TOFU.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "resetowanie bazy danych kluczy: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "błąd ustawiania polityki powiądań TOFU na %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "błąd zmiany polityki TOFU: %s\n" @@ -5926,24 +5912,10 @@ msgstr "%s: Sprawdzono 0~podpisów i zaszyfrowano 0~wiadomości." msgid "%s: Verified 0 signatures." msgstr "%s Sprawdzono 0 podpisów." -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: Sprawdzono %ld~podpis przez %s." -msgstr[1] "%s: Sprawdzono %ld~podpisy przez %s." -msgstr[2] "%s: Sprawdzono %ld~podpisów przez %s." - msgid "Encrypted 0 messages." msgstr "Zaszyfrowano 0 wiadomości." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Zaszyfrowano %ld~wiadomość przez %s." -msgstr[1] "Zaszyfrowano %ld~wiadomości przez %s." -msgstr[2] "Zaszyfrowano %ld~wiadomości przez %s." - -#, c-format msgid "(policy: %s)" msgstr "(polityka: %s)" @@ -6015,11 +5987,6 @@ msgstr "" "identyfikatorów użytkownika\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "" -"błąd ustawiania polityki dla klucza %s, identyfikator użytkownika ,,%s'': %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr ",,%s'' nie jest poprawnym długim identyfikatorem klucza\n" @@ -8340,6 +8307,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "status respondera OCSP pod ,,%s'': %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "nie udało się ustanowić kontekstu haszowania dla OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "liczenie skrótu odpowiedzi OCSP dla ,,%s'' nie powiodło się: %s\n" @@ -8348,10 +8319,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "nie podpisane domyślnym certyfikatem podpisującego OCSP" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "dla odpowiedzi OCSP obsługiwane jest tylko SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "przydzielanie elementu listy nie powiodło się: %s\n" @@ -8401,10 +8368,6 @@ msgid "using OCSP responder '%s'\n" msgstr "użycie respondera OCSP ,,%s''\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "nie udało się ustanowić kontekstu haszowania dla OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "błąd pobierania stanu OCSP dla certyfikatu docelowego: %s\n" @@ -8714,6 +8677,16 @@ msgstr "Wpisywanie hasła" msgid "Component not suitable for launching" msgstr "Komponent nie nadaje się do uruchomienia" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Zewnętrzna weryfikacja komponentu %s nie powiodła się" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Uwaga: do restartu ich należy użyć polecenia ,,%s''.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Zewnętrzna weryfikacja komponentu %s nie powiodła się" @@ -8945,3 +8918,41 @@ msgid "" 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 "no keyserver known (use option --keyserver)\n" +#~ msgstr "brak znanyk serwerów kluczy (użyj opcji --keyserver)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "błąd tworzenia tabeli TOFU ,,ultimately_trusted_keys'': %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "błąd tworzenia tabeli TOFU ,,encryptions'': %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "dodawanie kolumny effective_policy do bazy danych powiązań: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "resetowanie bazy danych kluczy: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "błąd ustawiania polityki powiądań TOFU na %s\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: Sprawdzono %ld~podpis przez %s." +#~ msgstr[1] "%s: Sprawdzono %ld~podpisy przez %s." +#~ msgstr[2] "%s: Sprawdzono %ld~podpisów przez %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Zaszyfrowano %ld~wiadomość przez %s." +#~ msgstr[1] "Zaszyfrowano %ld~wiadomości przez %s." +#~ msgstr[2] "Zaszyfrowano %ld~wiadomości przez %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "" +#~ "błąd ustawiania polityki dla klucza %s, identyfikator użytkownika ,,%s'': " +#~ "%s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "dla odpowiedzi OCSP obsługiwane jest tylko SHA-1\n" @@ -1670,6 +1670,18 @@ msgstr "(a não ser que escolha a chave pela sua impressão digital)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "impossível fazer isso em modo não-interactivo sem utilizar \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Remover esta chave do porta-chaves?" @@ -1691,6 +1703,10 @@ msgid "subkey" msgstr "Chave pública: " #, c-format +msgid "update failed: %s\n" +msgstr "actualização falhou: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "remoção do bloco de chave falhou: %s\n" @@ -3592,10 +3608,6 @@ msgid "Quit without saving? (y/N) " msgstr "Sair sem gravar? " #, c-format -msgid "update failed: %s\n" -msgstr "actualização falhou: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Chave não alterada, nenhuma actualização é necessária.\n" @@ -4622,10 +4634,6 @@ msgstr "chave `%s' não encontrada: %s\n" msgid "key not found on keyserver\n" msgstr "chave `%s' não encontrada: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "a pedir a chave %08lX de %s\n" @@ -5876,10 +5884,6 @@ msgstr "" "\n" "Algoritmos suportados:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "erro na criação da frase secreta: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5899,14 +5903,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: erro ao escrever registo de diretório: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "erro ao enviar para `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "erro na leitura de `%s': %s\n" @@ -6058,14 +6054,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "erro na escrita do porta-chaves `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "erro na leitura de `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "erro na criação da frase secreta: %s\n" @@ -6120,23 +6108,11 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "%d assinaturas removidas.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [ficheiros]|imprimir \"digests\" de mensagens" -msgstr[1] "|algo [ficheiros]|imprimir \"digests\" de mensagens" - #, fuzzy msgid "Encrypted 0 messages." msgstr "Repita a frase secreta\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [ficheiros]|imprimir \"digests\" de mensagens" -msgstr[1] "|algo [ficheiros]|imprimir \"digests\" de mensagens" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Política: " @@ -6184,11 +6160,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "erro ao escrever no porta-chaves público `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' não é um identificador longo de chave válido\n" @@ -8546,6 +8517,10 @@ msgstr "erro ao enviar para `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "verificação da assinatura criada falhou: %s\n" @@ -8554,10 +8529,6 @@ msgstr "verificação da assinatura criada falhou: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "remoção do bloco de chave falhou: %s\n" @@ -8608,10 +8579,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "assinatura falhou: %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "erro na criação da frase secreta: %s\n" @@ -8936,6 +8903,15 @@ msgid "Component not suitable for launching" msgstr "chave pública não encontrada" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Por favor utilize o comando \"toggle\" primeiro.\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9172,6 +9148,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "erro na criação da frase secreta: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "erro ao enviar para `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "erro na escrita do porta-chaves `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "erro na leitura de `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [ficheiros]|imprimir \"digests\" de mensagens" +#~ msgstr[1] "|algo [ficheiros]|imprimir \"digests\" de mensagens" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [ficheiros]|imprimir \"digests\" de mensagens" +#~ msgstr[1] "|algo [ficheiros]|imprimir \"digests\" de mensagens" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "erro ao escrever no porta-chaves público `%s': %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "erro na leitura de `%s': %s\n" @@ -1681,6 +1681,18 @@ msgstr "(dacă nu specificaţi cheia prin amprentă)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "nu pot face acest lucru în mod batch fără \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Şterge această cheie din inelul de chei? (d/N) " @@ -1700,6 +1712,10 @@ msgid "subkey" msgstr "Pubkey: " #, c-format +msgid "update failed: %s\n" +msgstr "actualizarea a eşuat: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "stergere keyblock a eşuat: %s\n" @@ -3621,10 +3637,6 @@ msgid "Quit without saving? (y/N) " msgstr "Terminaţi fără a salva? (d/N) " #, c-format -msgid "update failed: %s\n" -msgstr "actualizarea a eşuat: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Cheia nu a fost schimbată aşa că nici o actualizare a fost necesară.\n" @@ -4661,10 +4673,6 @@ msgid "key not found on keyserver\n" msgstr "cheia nu a fost găsită pe serverul de chei\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "nici un server de chei cunoscut (folosiţi opţiunea --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "cer cheia %s de la serverul %s %s\n" @@ -5950,10 +5958,6 @@ msgstr "" "\n" "Algoritmuri suportate:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "eroare la crearea frazei-parolă: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5973,14 +5977,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: eroare scriere înregistrare dir: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "eroare trimitere la `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "eroare în `%s': %s\n" @@ -6134,14 +6130,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "eroare la scrierea inelului de chei `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "eroare la citire `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "eroare la crearea frazei-parolă: %s\n" @@ -6196,24 +6184,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Am şters %d semnături.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [fişiere]|afişează rezumate mesaje" -msgstr[1] "|algo [fişiere]|afişează rezumate mesaje" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "cifrată cu %lu fraze-parolă\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [fişiere]|afişează rezumate mesaje" -msgstr[1] "|algo [fişiere]|afişează rezumate mesaje" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Politica: " @@ -6261,11 +6237,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "eroare la scrierea inelului de chei public `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' nu este un ID-cheie de lungime validă\n" @@ -8659,6 +8630,10 @@ msgstr "eroare trimitere la `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "verificarea semnăturii create a eşuat: %s\n" @@ -8667,10 +8642,6 @@ msgstr "verificarea semnăturii create a eşuat: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "citirea cheii publice a eşuat: %s\n" @@ -8723,10 +8694,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "folosesc cifrul %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "eroare la obţinerea numărului serial: %s\n" @@ -9051,6 +9018,15 @@ msgid "Component not suitable for launching" msgstr "cheia publică nu a fost găsită" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Vă rugăm folosiţi mai întâi comanda \"toggle\".\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9287,6 +9263,42 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "nici un server de chei cunoscut (folosiţi opţiunea --keyserver)\n" + +#, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "eroare la crearea frazei-parolă: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "eroare trimitere la `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "eroare la scrierea inelului de chei `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "eroare la citire `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [fişiere]|afişează rezumate mesaje" +#~ msgstr[1] "|algo [fişiere]|afişează rezumate mesaje" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [fişiere]|afişează rezumate mesaje" +#~ msgstr[1] "|algo [fişiere]|afişează rezumate mesaje" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "eroare la scrierea inelului de chei public `%s': %s\n" + #, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "eroare în `%s': %s\n" @@ -1576,6 +1576,18 @@ msgstr "(если только ключ не задан отпечатком)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "не могу выполнить в пакетном режиме без \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Удалить данный ключ из таблицы? (y/N) " @@ -1593,6 +1605,10 @@ msgid "subkey" msgstr "подключа" #, c-format +msgid "update failed: %s\n" +msgstr "сбой при обновлении: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "сбой при удалении блока ключа: %s\n" @@ -3387,10 +3403,6 @@ msgid "Quit without saving? (y/N) " msgstr "Выйти без сохранения? (y/N) " #, c-format -msgid "update failed: %s\n" -msgstr "сбой при обновлении: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Ключ не изменялся - обновление не нужно.\n" @@ -4388,10 +4400,6 @@ msgid "key not found on keyserver\n" msgstr "ключ не найден на сервере ключей\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "не заданы серверы ключей (используйте --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "запрашиваю ключ %s с сервера %s %s\n" @@ -5625,10 +5633,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "версия базы данных TOFU (не поддерживается): %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "ошибка создания таблицы TOFU 'ultimately_trusted_keys': %s\n" - -#, c-format msgid "TOFU DB error" msgstr "ошибка базы данных TOFU" @@ -5645,14 +5649,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "ошибка инициализации базы данных TOFU: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "ошибка создания таблицы TOFU 'encryptions': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "добавление столбца effective_policy в базу данных привязок: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "ошибка открытия базы данных TOFU '%s': %s\n" @@ -5821,14 +5817,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Обнаружено повреждение базы данных TOFU.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "сброс базы данных ключей: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "ошибка установки правил привязки TOFU в %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "ошибка при смене правила TOFU: %s\n" @@ -5889,24 +5877,10 @@ msgstr "%s: Проверено 0~подписей, зашифровано 0~со msgid "%s: Verified 0 signatures." msgstr "%s: Проверено 0 подписей." -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: Проверена %ld~подпись за %s." -msgstr[1] "%s: Проверены %ld~прописи за %s." -msgstr[2] "%s: Проверено %ld~подписей за %s." - msgid "Encrypted 0 messages." msgstr "Зашифровано 0 сообщений." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Зашифровано %ld~сообщение за %s." -msgstr[1] "Зашифрованы %ld~сообщения за %s." -msgstr[2] "Зашифровано %ld~сообщений за %s." - -#, c-format msgid "(policy: %s)" msgstr "правило: %s" @@ -5977,12 +5951,6 @@ msgstr "" "идентификаторов пользователя\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "" -"ошибка установки правил для ключа %s с идентификатором пользователя \"%s\": " -"%s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "'%s' не является допустимым длинным идентификатором ключа\n" @@ -8317,6 +8285,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "статус ответчика OCSP на '%s': %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "сбой при установлении контекста хеша для OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "сбой получения хеша ответа OCSP для '%s': %s\n" @@ -8325,10 +8297,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "не подписано основным сертификатом подписывающего OCSP" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "для ответов OCSP поддерживается только SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "сбой размещения элемента списка: %s\n" @@ -8377,10 +8345,6 @@ msgid "using OCSP responder '%s'\n" msgstr "используется ответчик OCSP '%s'\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "сбой при установлении контекста хеша для OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "ошибка получения статуса OCSP для целевого сертификата: %s\n" @@ -8692,6 +8656,16 @@ msgstr "Ввод фраз-паролей" msgid "Component not suitable for launching" msgstr "Компонент не подходит для запуска" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Внешняя проверка компонента %s не прошла" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Замечание: Для их перезагрузки воспользуйтесь командой \"%s\".\n" + #, c-format msgid "External verification of component %s failed" msgstr "Внешняя проверка компонента %s не прошла" @@ -8923,6 +8897,44 @@ msgstr "" "Синтаксис: gpg-check-pattern [параметры] файл_образцов\n" "Проверить фразу-пароль, поступающую из stdin, по файлу образцов\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "не заданы серверы ключей (используйте --keyserver)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "ошибка создания таблицы TOFU 'ultimately_trusted_keys': %s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "ошибка создания таблицы TOFU 'encryptions': %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "добавление столбца effective_policy в базу данных привязок: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "сброс базы данных ключей: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "ошибка установки правил привязки TOFU в %s\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: Проверена %ld~подпись за %s." +#~ msgstr[1] "%s: Проверены %ld~прописи за %s." +#~ msgstr[2] "%s: Проверено %ld~подписей за %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Зашифровано %ld~сообщение за %s." +#~ msgstr[1] "Зашифрованы %ld~сообщения за %s." +#~ msgstr[2] "Зашифровано %ld~сообщений за %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "" +#~ "ошибка установки правил для ключа %s с идентификатором пользователя \"%s" +#~ "\": %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "для ответов OCSP поддерживается только SHA-1\n" + #~ msgid "using \"http\" instead of \"https\"\n" #~ msgstr "используется \"http\" вместо \"https\"\n" @@ -1671,6 +1671,18 @@ msgstr "(pokiaľ neurčíte kľúč jeho fingerprintom)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "bez parametra \"--yes\" to nemožno v dávkovom móde previesť\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + #, fuzzy msgid "Delete this key from the keyring? (y/N) " msgstr "Zmazať tento kľúč zo súboru kľúčov? " @@ -1692,6 +1704,10 @@ msgid "subkey" msgstr "Verejné kľúče: " #, c-format +msgid "update failed: %s\n" +msgstr "aktualizácia zlyhala: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "zmazanie bloku kľúča sa nepodarilo: %s\n" @@ -3607,10 +3623,6 @@ msgid "Quit without saving? (y/N) " msgstr "Ukončiť bez uloženia? " #, c-format -msgid "update failed: %s\n" -msgstr "aktualizácia zlyhala: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "kľúč nebol zmenený, takže nie je potrebné ho aktualizovať.\n" @@ -4631,10 +4643,6 @@ msgstr "kľúč `%s' nebol nájdený: %s\n" msgid "key not found on keyserver\n" msgstr "kľúč `%s' nebol nájdený: %s\n" -#, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" - #, fuzzy, c-format msgid "requesting key %s from %s server %s\n" msgstr "požadujem kľúč %08lX z %s\n" @@ -5904,10 +5912,6 @@ msgstr "" "\n" "Podporované algoritmy:\n" -#, fuzzy, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "chyba pri vytváraní hesla: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5927,14 +5931,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: chyba pri zápise adresárového záznamu: %s\n" #, fuzzy, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "chyba pri posielaní na `%s': %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "chyba pri čítaní `%s': %s\n" @@ -6087,14 +6083,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -msgid "resetting keydb: %s\n" -msgstr "chyba pri zápise súboru kľúčov (keyring) `%s': %s\n" - -#, fuzzy, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "chyba pri čítaní `%s': %s\n" - -#, fuzzy, c-format msgid "error changing TOFU policy: %s\n" msgstr "chyba pri vytváraní hesla: %s\n" @@ -6149,24 +6137,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Zmazaných %d podpisov.\n" -#, fuzzy, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "|algo [súbory]|vypíš hash" -msgstr[1] "|algo [súbory]|vypíš hash" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "zašifrované s %lu heslami\n" #, fuzzy, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "|algo [súbory]|vypíš hash" -msgstr[1] "|algo [súbory]|vypíš hash" - -#, fuzzy, c-format #| msgid "Policy: " msgid "(policy: %s)" msgstr "Politika: " @@ -6214,11 +6190,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "chyba pri zápise do súboru verejných kľúčov `%s': %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' nie je platné dlhé keyID\n" @@ -8576,6 +8547,10 @@ msgstr "chyba pri posielaní na `%s': %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "kontrola vytvoreného podpisu sa nepodarila: %s\n" @@ -8584,10 +8559,6 @@ msgstr "kontrola vytvoreného podpisu sa nepodarila: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format msgid "allocating list item failed: %s\n" msgstr "zmazanie bloku kľúča sa nepodarilo: %s\n" @@ -8639,10 +8610,6 @@ msgstr "" msgid "using OCSP responder '%s'\n" msgstr "použitá šifra %s\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "chyba pri vytváraní hesla: %s\n" @@ -8965,6 +8932,15 @@ msgid "Component not suitable for launching" msgstr "verejný kľúč nenájdený" #, c-format +msgid "Configuration file of component %s is broken\n" +msgstr "" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Prosím, najskôr použite príkaz \"toggle\" (prepnúť).\n" + +#, c-format msgid "External verification of component %s failed" msgstr "" @@ -9201,6 +9177,39 @@ msgid "" msgstr "" #, fuzzy +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "chyba pri vytváraní hesla: %s\n" + +#, fuzzy +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "chyba pri posielaní na `%s': %s\n" + +#, fuzzy +#~ msgid "resetting keydb: %s\n" +#~ msgstr "chyba pri zápise súboru kľúčov (keyring) `%s': %s\n" + +#, fuzzy +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "chyba pri čítaní `%s': %s\n" + +#, fuzzy +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "|algo [súbory]|vypíš hash" +#~ msgstr[1] "|algo [súbory]|vypíš hash" + +#, fuzzy +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "|algo [súbory]|vypíš hash" +#~ msgstr[1] "|algo [súbory]|vypíš hash" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "chyba pri zápise do súboru verejných kľúčov `%s': %s\n" + +#, fuzzy #~ msgid "error looking up: %s\n" #~ msgstr "chyba pri čítaní `%s': %s\n" @@ -1759,6 +1759,18 @@ msgstr "(om du inte anger nyckeln med hjälp av fingeravtrycket)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "kan inte göra så i satsläge utan \"--yes\"\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Ta bort denna nyckel från nyckelringen? (j/N) " @@ -1779,6 +1791,10 @@ msgid "subkey" msgstr "Publik nyckel: " #, c-format +msgid "update failed: %s\n" +msgstr "uppdateringen misslyckades: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "misslyckades med att radera nyckelblock: %s\n" @@ -3714,10 +3730,6 @@ msgid "Quit without saving? (y/N) " msgstr "Avsluta utan att spara? (j/N) " #, c-format -msgid "update failed: %s\n" -msgstr "uppdateringen misslyckades: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Nyckeln är oförändrad så det behövs ingen uppdatering.\n" @@ -4772,10 +4784,6 @@ msgid "key not found on keyserver\n" msgstr "nyckeln hittades inte på nyckelservern\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "ingen nyckelserver är känd (använd flaggan --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "begär nyckeln %s från %s-servern %s\n" @@ -6093,11 +6101,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "algoritmen stöds inte: %s" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "fel när temporärfil skapades: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -6118,15 +6121,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: fel vid läsning av katalogpost: %s\n" #, fuzzy, c-format -#| msgid "error sending %s command: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "fel vid sändning av %s-kommando: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format #| msgid "error opening `%s': %s\n" msgid "error opening TOFU database '%s': %s\n" msgstr "fel vid öppnandet av \"%s\": %s\n" @@ -6287,16 +6281,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "fel vid skrivning av nyckel: %s\n" - -#, fuzzy, c-format -#| msgid "error storing flags: %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "fel vid lagring av flaggor: %s\n" - -#, fuzzy, c-format #| msgid "error creating a pipe: %s\n" msgid "error changing TOFU policy: %s\n" msgstr "fel när ett rör skapades: %s\n" @@ -6352,26 +6336,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "Raderade %d signaturer.\n" -#, fuzzy, c-format -#| msgid "print message digests" -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "skriv ut kontrollsummor" -msgstr[1] "skriv ut kontrollsummor" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "krypterad med %lu lösenfraser\n" #, fuzzy, c-format -#| msgid "print message digests" -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "skriv ut kontrollsummor" -msgstr[1] "skriv ut kontrollsummor" - -#, fuzzy, c-format #| msgid "validity: %s" msgid "(policy: %s)" msgstr "giltighet: %s" @@ -6420,11 +6390,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "fel vid skrivning av publika nyckelringen \"%s\": %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "\"%s\" är inget giltigt långt nyckel-id\n" @@ -8991,6 +8956,10 @@ msgstr "fel när \"%s\" bands till uttag: %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "checking the trust list failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -9000,10 +8969,6 @@ msgstr "kontroll mot tillitslistan misslyckades: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format #| msgid "receiving line failed: %s\n" msgid "allocating list item failed: %s\n" @@ -9063,10 +9028,6 @@ msgstr "använder standard-PIN som %s\n" msgid "using OCSP responder '%s'\n" msgstr "använder %s-chiffer\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format #| msgid "error storing certificate: %s\n" msgid "error getting OCSP status for target certificate: %s\n" @@ -9415,6 +9376,16 @@ msgstr "Felaktig lösenfras" msgid "Component not suitable for launching" msgstr "Komponenten hittades inte" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Extern validering av komponenten %s misslyckades" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Använd kommandot \"toggle\" först.\n" + #, c-format msgid "External verification of component %s failed" msgstr "Extern validering av komponenten %s misslyckades" @@ -9669,6 +9640,48 @@ msgstr "" "Syntax: gpg-check-pattern [flaggor] mönsterfil\n" "Kontrollera en lösenfras angiven på standard in mot mönsterfilen\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "ingen nyckelserver är känd (använd flaggan --keyserver)\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "fel när temporärfil skapades: %s\n" + +#, fuzzy +#~| msgid "error sending %s command: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "fel vid sändning av %s-kommando: %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "fel vid skrivning av nyckel: %s\n" + +#, fuzzy +#~| msgid "error storing flags: %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "fel vid lagring av flaggor: %s\n" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "skriv ut kontrollsummor" +#~ msgstr[1] "skriv ut kontrollsummor" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "skriv ut kontrollsummor" +#~ msgstr[1] "skriv ut kontrollsummor" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "fel vid skrivning av publika nyckelringen \"%s\": %s\n" + #, fuzzy #~| msgid "waiting %d seconds for the agent to come up\n" #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" @@ -1706,6 +1706,18 @@ msgstr "(anahtarı parmak izi ile belirtmedikçe)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "betik kipinde \"--yes\" olmaksızın bu yapılamaz\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Bu anahtar, anahtar zincirinden silinsin mi? (e/H ya da y/N) " @@ -1726,6 +1738,10 @@ msgid "subkey" msgstr "GenAnah: " #, c-format +msgid "update failed: %s\n" +msgstr "güncelleme başarısız: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "anahtar bloğu silinemedi: %s\n" @@ -3657,10 +3673,6 @@ msgid "Quit without saving? (y/N) " msgstr "Kaydetmeden çıkılsın mı? (e/H ya da y/N) " #, c-format -msgid "update failed: %s\n" -msgstr "güncelleme başarısız: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Güncelleme gereği olmadığından anahtar değişmedi.\n" @@ -4720,10 +4732,6 @@ msgid "key not found on keyserver\n" msgstr "anahtar, anahtar sunucusunda yok\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "bilinen bir anahtar sunucusu yok (--keyserver seçeneğini kullanın)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "%1$s anahtarı %3$s sunucusunun %2$s adresinden isteniyor\n" @@ -6018,11 +6026,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "desteklenmeyen algoritma: %s" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "geçici dosya oluşturulurken hata: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -6043,15 +6046,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "%s: dizin kaydını yazma hatası: %s\n" #, fuzzy, c-format -#| msgid "error sending %s command: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "%s komutu gönderilirken hata: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format #| msgid "error opening `%s': %s\n" msgid "error opening TOFU database '%s': %s\n" msgstr "'%s' açılırken hata: %s\n" @@ -6212,16 +6206,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "anahtarı yazarken hata: %s\n" - -#, fuzzy, c-format -#| msgid "error storing flags: %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "bayraklar saklanırken hata: %s\n" - -#, fuzzy, c-format #| msgid "error creating a pipe: %s\n" msgid "error changing TOFU policy: %s\n" msgstr "boru oluşturulurken hata: %s\n" @@ -6277,26 +6261,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "%d imza silindi.\n" -#, fuzzy, c-format -#| msgid "print message digests" -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "ileti özetlerini gösterir" -msgstr[1] "ileti özetlerini gösterir" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "%lu anahtar parolası ile şifrelenmiş\n" #, fuzzy, c-format -#| msgid "print message digests" -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "ileti özetlerini gösterir" -msgstr[1] "ileti özetlerini gösterir" - -#, fuzzy, c-format #| msgid "validity: %s" msgid "(policy: %s)" msgstr "geçerliliği: %s" @@ -6345,11 +6315,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing public keyring `%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "`%s' genel anahtarlığa yazılırken hata oluştu: %s\n" - -#, fuzzy, c-format #| msgid "`%s' is not a valid long keyID\n" msgid "'%s' is not a valid long keyID\n" msgstr "`%s' geçerli bir anahtar kimliği değil\n" @@ -8891,6 +8856,10 @@ msgstr "soket `%s'e bağlanırken hata: %s\n" msgid "OCSP responder at '%s' status: %s\n" msgstr "" +#, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "" + #, fuzzy, c-format #| msgid "checking the trust list failed: %s\n" msgid "hashing the OCSP response for '%s' failed: %s\n" @@ -8900,10 +8869,6 @@ msgstr "güvence listesinin sınanması başarısız: %s\n" msgid "not signed by a default OCSP signer's certificate" msgstr "" -#, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "" - #, fuzzy, c-format #| msgid "receiving line failed: %s\n" msgid "allocating list item failed: %s\n" @@ -8963,10 +8928,6 @@ msgstr "%s olarak öntanımlı PIN kullanılıyor\n" msgid "using OCSP responder '%s'\n" msgstr "%s şifrelemesi kullanılıyor\n" -#, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "" - #, fuzzy, c-format #| msgid "error storing certificate: %s\n" msgid "error getting OCSP status for target certificate: %s\n" @@ -9317,6 +9278,16 @@ msgstr "Anahtar Parolası hatalı" msgid "Component not suitable for launching" msgstr "Bileşen yok" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "%s bileşeninin harici doğrulaması başarısız oldu" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "lütfen önce \"seçmece\" komutunu kullanın.\n" + #, c-format msgid "External verification of component %s failed" msgstr "%s bileşeninin harici doğrulaması başarısız oldu" @@ -9571,6 +9542,49 @@ msgstr "" "Standart girdiden verilen anahtar parolasını örüntü dosyasıyla " "karşılaştırır\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "" +#~ "bilinen bir anahtar sunucusu yok (--keyserver seçeneğini kullanın)\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "geçici dosya oluşturulurken hata: %s\n" + +#, fuzzy +#~| msgid "error sending %s command: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "%s komutu gönderilirken hata: %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "anahtarı yazarken hata: %s\n" + +#, fuzzy +#~| msgid "error storing flags: %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "bayraklar saklanırken hata: %s\n" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "ileti özetlerini gösterir" +#~ msgstr[1] "ileti özetlerini gösterir" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "ileti özetlerini gösterir" +#~ msgstr[1] "ileti özetlerini gösterir" + +#, fuzzy +#~| msgid "error writing public keyring `%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "`%s' genel anahtarlığa yazılırken hata oluştu: %s\n" + #, fuzzy #~| msgid "error closing %s: %s\n" #~ msgid "error looking up: %s\n" @@ -1606,6 +1606,18 @@ msgstr "(якщо ключ не задано відбитком)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "цього не можна робити у пакетному режимі без «--yes»\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "Вилучити цей ключ зі сховища? (y/N або т/Н) " @@ -1623,6 +1635,10 @@ msgid "subkey" msgstr "підключ" #, c-format +msgid "update failed: %s\n" +msgstr "помилка оновлення: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "не вдалося вилучити блокування ключа: %s\n" @@ -3453,10 +3469,6 @@ msgid "Quit without saving? (y/N) " msgstr "Вийти без збереження? (y/N або т/Н) " #, c-format -msgid "update failed: %s\n" -msgstr "помилка оновлення: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "Ключ не змінено, отже оновлення непотрібне.\n" @@ -4474,11 +4486,6 @@ msgid "key not found on keyserver\n" msgstr "ключ не знайдено на сервері ключів\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "" -"не вказано жодного сервера ключів (скористайтеся параметром --keyserver)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "надсилаємо запит щодо ключа %s до %s сервера %s\n" @@ -5741,11 +5748,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "непідтримувана версія бази даних TOFU: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "" -"помилка під час спроби створити таблицю TOFU «ultimately_trusted_keys»: %s\n" - -#, c-format msgid "TOFU DB error" msgstr "помилка бази даних TOFU" @@ -5762,14 +5764,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "помилка під час спроби ініціалізації бази даних TOFU: %s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "помилка під час спроби створити таблицю TOFU «encryptions»: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "додаємо стовпчик effective_policy до бази даних прив’язок: %s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "помилка під час спроби відкрити бази даних TOFU «%s»: %s\n" @@ -5943,14 +5937,6 @@ msgid "TOFU db corruption detected.\n" msgstr "Виявлено пошкодження бази даних TOFU.\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "скидаємо базу даних ключів: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "помилка під час спроби встановлення правил прив’язки TOFU до %s\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "помилка під час спроби змінити правила TOFU: %s\n" @@ -6011,24 +5997,10 @@ msgstr "%s: перевірено 0~підписів і зашифровано 0~ msgid "%s: Verified 0 signatures." msgstr "%s: перевірено 0 підписів." -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s: перевірено %ld~підпис протягом останнього %s." -msgstr[1] "%s: перевірено %ld~підписи протягом останнього %s." -msgstr[2] "%s: перевірено %ld~підписів протягом останнього %s." - msgid "Encrypted 0 messages." msgstr "Зашифровано 0 повідомлень." #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "Зашифровано %ld~повідомлення протягом останнього %s." -msgstr[1] "Зашифровано %ld~повідомлення протягом останнього %s." -msgstr[2] "Зашифровано %ld~повідомлень протягом останнього %s." - -#, c-format msgid "(policy: %s)" msgstr "(правило: %s)" @@ -6101,12 +6073,6 @@ msgstr "" "ідентифікаторів користувача.\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "" -"помилка під час спроби встановити правила для ключа %s, ідентифікатор " -"користувача «%s»: %s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "«%s» не є коректним довгим ідентифікатором ключа\n" @@ -8449,6 +8415,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "Відповідач OCSP перебуває у стані «%s»: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "не вдалося встановити контекст хешування для OCSP: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "спроба хешування відповіді OCSP для «%s» зазнала невдачі: %s\n" @@ -8457,10 +8427,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "не підписано типовим сертифікатом підписувальника OCSP" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "для відповідей за OCSP передбачено підтримку лише SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "спроба розміщення пункту списку у пам’яті зазнала невдачі: %s\n" @@ -8509,10 +8475,6 @@ msgid "using OCSP responder '%s'\n" msgstr "використовуємо відповідач за OCSP «%s»\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "не вдалося встановити контекст хешування для OCSP: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "помилка під час отримання стану OCSP для сертифіката призначення: %s\n" @@ -8823,6 +8785,16 @@ msgstr "Введення пароля" msgid "Component not suitable for launching" msgstr "Компонент не є придатним до запуску" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "Помилка зовнішньої перевірки компонента %s" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "Скористайтеся спочатку командою «toggle».\n" + #, c-format msgid "External verification of component %s failed" msgstr "Помилка зовнішньої перевірки компонента %s" @@ -9055,6 +9027,47 @@ msgstr "" "Синтаксис: gpg-check-pattern [параметри] файл_шаблонів\n" "Перевірити пароль, вказаний у stdin, за допомогою файла_шаблонів\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "" +#~ "не вказано жодного сервера ключів (скористайтеся параметром --keyserver)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "" +#~ "помилка під час спроби створити таблицю TOFU «ultimately_trusted_keys»: " +#~ "%s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "помилка під час спроби створити таблицю TOFU «encryptions»: %s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "додаємо стовпчик effective_policy до бази даних прив’язок: %s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "скидаємо базу даних ключів: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "помилка під час спроби встановлення правил прив’язки TOFU до %s\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s: перевірено %ld~підпис протягом останнього %s." +#~ msgstr[1] "%s: перевірено %ld~підписи протягом останнього %s." +#~ msgstr[2] "%s: перевірено %ld~підписів протягом останнього %s." + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "Зашифровано %ld~повідомлення протягом останнього %s." +#~ msgstr[1] "Зашифровано %ld~повідомлення протягом останнього %s." +#~ msgstr[2] "Зашифровано %ld~повідомлень протягом останнього %s." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "" +#~ "помилка під час спроби встановити правила для ключа %s, ідентифікатор " +#~ "користувача «%s»: %s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "для відповідей за OCSP передбачено підтримку лише SHA-1\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "очікування на працездатність dirmngr… (%d с)\n" diff --git a/po/zh_CN.po b/po/zh_CN.po index 2ab2739..4f766ba 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -1565,6 +1565,18 @@ msgstr "(除非您用指纹指定密钥)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "无法于批处理模式中在没有“--yes”的情况下完成此操作\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "要从钥匙环里删除这个密钥吗?(y/N) " @@ -1582,6 +1594,10 @@ msgid "subkey" msgstr "子密钥" #, c-format +msgid "update failed: %s\n" +msgstr "更新失败:%s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "删除密钥块时失败:%s\n" @@ -3313,10 +3329,6 @@ msgid "Quit without saving? (y/N) " msgstr "要不保存而退出吗?(y/N) " #, c-format -msgid "update failed: %s\n" -msgstr "更新失败:%s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "密钥没有变更所以不需要更新。\n" @@ -4267,10 +4279,6 @@ msgid "key not found on keyserver\n" msgstr "在公钥服务器上找不到密钥\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "无已知的公钥服务器(使用 --keyserver 选项)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "正在请求密钥 %s 从 %s 服务器 %s\n" @@ -5458,10 +5466,6 @@ msgid "unsupported TOFU database version: %s\n" msgstr "不支持的 TOFU 数据库版本: %s\n" #, c-format -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "创建名为‘ultimately_trusted_keys’的TOFU 表时出现错误:%s\n" - -#, c-format msgid "TOFU DB error" msgstr "TOFU DB 错误" @@ -5478,14 +5482,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "初始化 TOFU 数据库时出现错误:%s\n" #, c-format -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "创建名为‘encryptions’的TOFU 表时出现错误:%s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "添加列 effective_policy 到绑定的 DB:%s\n" - -#, c-format msgid "error opening TOFU database '%s': %s\n" msgstr "打开 TOFU 数据库’%s’时出现错误:%s\n" @@ -5621,14 +5617,6 @@ msgid "TOFU db corruption detected.\n" msgstr "检测到 TOFU 数据库出错。\n" #, c-format -msgid "resetting keydb: %s\n" -msgstr "正在重置 keydb: %s\n" - -#, c-format -msgid "error setting TOFU binding's policy to %s\n" -msgstr "设置 TOFU 绑定的策略至 %s 时出现错误\n" - -#, c-format msgid "error changing TOFU policy: %s\n" msgstr "变更 TOFU 策略时出现错误:%s\n" @@ -5675,20 +5663,10 @@ msgstr "%s: 已验证 0~签名并加密 0~消息。" msgid "%s: Verified 0 signatures." msgstr "%s:已验证 0 签名。" -#, c-format -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "%s:已验证 %ld~在过去的 %s 的签名。" - msgid "Encrypted 0 messages." msgstr "已加密 0 信息。" #, c-format -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "已加密 %ld~个过去 %s 的信息." - -#, c-format msgid "(policy: %s)" msgstr "(策略: %s)" @@ -5738,10 +5716,6 @@ msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "警告:正在加密给 %s,其不具有不可吊销的用户标识。\n" #, c-format -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "设置密钥 %s 的策略时出现错误, 用户标识 “%s”:%s" - -#, c-format msgid "'%s' is not a valid long keyID\n" msgstr "‘%s’不是一个有效的长格式 keyID\n" @@ -8008,6 +7982,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "‘%s’处的 OCSP 响应者状态:%s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "为 OCSP 创建散列上下文失败:%s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "计算‘%s’的 OCSP 请求的散列时失败:%s\n" @@ -8016,10 +7994,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "并非由一个默认的 OCSP 签名者的证书签名" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "对于 OCSP 响应只有 SHA-1 被支持\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "分配列表项时失败:%s\n" @@ -8068,10 +8042,6 @@ msgid "using OCSP responder '%s'\n" msgstr "正在使用 OCSP 响应者‘%s’\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "为 OCSP 创建散列上下文失败:%s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "获取目标证书的 OCSP 状态时出现错误:%s\n" @@ -8378,6 +8348,16 @@ msgstr "密码条目" msgid "Component not suitable for launching" msgstr "组件不适合启动" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "组件 %s 的外部验证失败" + +#, fuzzy, c-format +#| msgid "Note: Use the command \"%s\" to restart them.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "注意: 使用 “%s” 来重启他们。\n" + #, c-format msgid "External verification of component %s failed" msgstr "组件 %s 的外部验证失败" @@ -8610,6 +8590,38 @@ msgstr "" "语法:gpg-check-pattern [选项] patternfile\n" "按照 patternfile 检查一个由标准输入(stdin)给定的密码\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "无已知的公钥服务器(使用 --keyserver 选项)\n" + +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "创建名为‘ultimately_trusted_keys’的TOFU 表时出现错误:%s\n" + +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "创建名为‘encryptions’的TOFU 表时出现错误:%s\n" + +#~ msgid "adding column effective_policy to bindings DB: %s\n" +#~ msgstr "添加列 effective_policy 到绑定的 DB:%s\n" + +#~ msgid "resetting keydb: %s\n" +#~ msgstr "正在重置 keydb: %s\n" + +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "设置 TOFU 绑定的策略至 %s 时出现错误\n" + +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "%s:已验证 %ld~在过去的 %s 的签名。" + +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "已加密 %ld~个过去 %s 的信息." + +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "设置密钥 %s 的策略时出现错误, 用户标识 “%s”:%s" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "对于 OCSP 响应只有 SHA-1 被支持\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "等待 dirmngr 启动 ... (%ds)\n" diff --git a/po/zh_TW.po b/po/zh_TW.po index cff51b8..de7b52b 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -1603,6 +1603,18 @@ msgstr "(除非你用指紋指定了金鑰)\n" msgid "can't do this in batch mode without \"--yes\"\n" msgstr "沒有 \"--yes\" 就沒辦法在批次模式中這麼做\n" +msgid "Note: The public primary key and all its subkeys will be deleted.\n" +msgstr "" + +msgid "Note: Only the shown public subkey will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown primary key will be deleted.\n" +msgstr "" + +msgid "Note: Only the secret part of the shown subkey will be deleted.\n" +msgstr "" + msgid "Delete this key from the keyring? (y/N) " msgstr "要從鑰匙圈裡刪除這把金鑰嗎? (y/N) " @@ -1620,6 +1632,10 @@ msgid "subkey" msgstr "子鑰" #, c-format +msgid "update failed: %s\n" +msgstr "更新失敗: %s\n" + +#, c-format msgid "deleting keyblock failed: %s\n" msgstr "刪除金鑰區塊時失敗: %s\n" @@ -3403,10 +3419,6 @@ msgid "Quit without saving? (y/N) " msgstr "要不儲存就離開嗎? (y/N) " #, c-format -msgid "update failed: %s\n" -msgstr "更新失敗: %s\n" - -#, c-format msgid "Key not changed so no update needed.\n" msgstr "金鑰沒有變更所以不需要更新.\n" @@ -4393,10 +4405,6 @@ msgid "key not found on keyserver\n" msgstr "在金鑰伺服器上找不到金鑰\n" #, c-format -msgid "no keyserver known (use option --keyserver)\n" -msgstr "沒有已知的金鑰伺服器 (使用 --keyserver 選項)\n" - -#, c-format msgid "requesting key %s from %s server %s\n" msgstr "正在請求金鑰 %s 自 %s 伺服器 %s\n" @@ -5624,11 +5632,6 @@ msgstr "" msgid "unsupported TOFU database version: %s\n" msgstr "未支援的演算法: %s" -#, fuzzy, c-format -#| msgid "error creating temporary file: %s\n" -msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" -msgstr "建立暫存檔時出錯: %s\n" - #, c-format msgid "TOFU DB error" msgstr "" @@ -5649,15 +5652,6 @@ msgid "error initializing TOFU database: %s\n" msgstr "啟始讀取程式物件時出錯: %s\n" #, fuzzy, c-format -#| msgid "error sending data: %s\n" -msgid "error creating 'encryptions' TOFU table: %s\n" -msgstr "送出資料時出錯: %s\n" - -#, c-format -msgid "adding column effective_policy to bindings DB: %s\n" -msgstr "" - -#, fuzzy, c-format #| msgid "error opening '%s': %s\n" msgid "error opening TOFU database '%s': %s\n" msgstr "開啟 '%s' 時出錯: %s\n" @@ -5806,16 +5800,6 @@ msgid "TOFU db corruption detected.\n" msgstr "" #, fuzzy, c-format -#| msgid "error writing key: %s\n" -msgid "resetting keydb: %s\n" -msgstr "寫入金鑰時出錯: %s\n" - -#, fuzzy, c-format -#| msgid "error setting OCSP target: %s\n" -msgid "error setting TOFU binding's policy to %s\n" -msgstr "設定 OCSP 目標時出錯: %s\n" - -#, fuzzy, c-format #| msgid "error creating a pipe: %s\n" msgid "error changing TOFU policy: %s\n" msgstr "建立管道時出錯: %s\n" @@ -5864,24 +5848,12 @@ msgstr "" msgid "%s: Verified 0 signatures." msgstr "已經刪除了 %d 份簽章.\n" -#, fuzzy, c-format -#| msgid "print message digests" -msgid "%s: Verified %ld~signature in the past %s." -msgid_plural "%s: Verified %ld~signatures in the past %s." -msgstr[0] "印出訊息摘要" - #, fuzzy #| msgid "encrypted with %lu passphrases\n" msgid "Encrypted 0 messages." msgstr "已用 %lu 個密語加密了\n" #, fuzzy, c-format -#| msgid "print message digests" -msgid "Encrypted %ld~message in the past %s." -msgid_plural "Encrypted %ld~messages in the past %s." -msgstr[0] "印出訊息摘要" - -#, fuzzy, c-format #| msgid "validity: %s" msgid "(policy: %s)" msgstr "有效性: %s" @@ -5928,11 +5900,6 @@ msgstr "送出資料時出錯: %s\n" msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" -#, fuzzy, c-format -#| msgid "error writing public keyring '%s': %s\n" -msgid "error setting policy for key %s, user id \"%s\": %s" -msgstr "寫入公鑰鑰匙圈 '%s' 時出錯: %s\n" - #, c-format msgid "'%s' is not a valid long keyID\n" msgstr "'%s' 不是有效的長式金鑰 ID\n" @@ -8209,6 +8176,10 @@ msgid "OCSP responder at '%s' status: %s\n" msgstr "位於 '%s' 的 OSCP 回應程式狀態: %s\n" #, c-format +msgid "failed to establish a hashing context for OCSP: %s\n" +msgstr "對 OCSP 建立雜湊脈絡失敗: %s\n" + +#, c-format msgid "hashing the OCSP response for '%s' failed: %s\n" msgstr "計算 '%s' OSCP 回應雜湊時失敗: %s\n" @@ -8217,10 +8188,6 @@ msgid "not signed by a default OCSP signer's certificate" msgstr "並未由預設 OCSP 簽署者的憑證所簽署" #, c-format -msgid "only SHA-1 is supported for OCSP responses\n" -msgstr "OCSP 回應僅支援 SHA-1\n" - -#, c-format msgid "allocating list item failed: %s\n" msgstr "配置清單項目時失敗: %s\n" @@ -8269,10 +8236,6 @@ msgid "using OCSP responder '%s'\n" msgstr "正在使用 %s OCSP 回應程式\n" #, c-format -msgid "failed to establish a hashing context for OCSP: %s\n" -msgstr "對 OCSP 建立雜湊脈絡失敗: %s\n" - -#, c-format msgid "error getting OCSP status for target certificate: %s\n" msgstr "取得目標憑證 OCSP 狀態時出錯: %s\n" @@ -8591,6 +8554,16 @@ msgstr "個人識別碼及密語項目" msgid "Component not suitable for launching" msgstr "元件不適合啟動" +#, fuzzy, c-format +#| msgid "External verification of component %s failed" +msgid "Configuration file of component %s is broken\n" +msgstr "元件 %s 的外部驗證失敗" + +#, fuzzy, c-format +#| msgid "Please use the command \"toggle\" first.\n" +msgid "Note: Use the command \"%s%s\" to get details.\n" +msgstr "請先使用 \"toggle\" 指令.\n" + #, c-format msgid "External verification of component %s failed" msgstr "元件 %s 的外部驗證失敗" @@ -8828,6 +8801,49 @@ msgstr "" "語法: gpg-check-pattern [選項] 樣式檔案\n" "用樣式檔案來檢查由標準輸入給定的密語\n" +#~ msgid "no keyserver known (use option --keyserver)\n" +#~ msgstr "沒有已知的金鑰伺服器 (使用 --keyserver 選項)\n" + +#, fuzzy +#~| msgid "error creating temporary file: %s\n" +#~ msgid "error creating 'ultimately_trusted_keys' TOFU table: %s\n" +#~ msgstr "建立暫存檔時出錯: %s\n" + +#, fuzzy +#~| msgid "error sending data: %s\n" +#~ msgid "error creating 'encryptions' TOFU table: %s\n" +#~ msgstr "送出資料時出錯: %s\n" + +#, fuzzy +#~| msgid "error writing key: %s\n" +#~ msgid "resetting keydb: %s\n" +#~ msgstr "寫入金鑰時出錯: %s\n" + +#, fuzzy +#~| msgid "error setting OCSP target: %s\n" +#~ msgid "error setting TOFU binding's policy to %s\n" +#~ msgstr "設定 OCSP 目標時出錯: %s\n" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "%s: Verified %ld~signature in the past %s." +#~ msgid_plural "%s: Verified %ld~signatures in the past %s." +#~ msgstr[0] "印出訊息摘要" + +#, fuzzy +#~| msgid "print message digests" +#~ msgid "Encrypted %ld~message in the past %s." +#~ msgid_plural "Encrypted %ld~messages in the past %s." +#~ msgstr[0] "印出訊息摘要" + +#, fuzzy +#~| msgid "error writing public keyring '%s': %s\n" +#~ msgid "error setting policy for key %s, user id \"%s\": %s" +#~ msgstr "寫入公鑰鑰匙圈 '%s' 時出錯: %s\n" + +#~ msgid "only SHA-1 is supported for OCSP responses\n" +#~ msgstr "OCSP 回應僅支援 SHA-1\n" + #~ msgid "waiting for the dirmngr to come up ... (%ds)\n" #~ msgstr "正在等候 dirmngr 出現 ... (%d 秒)\n" diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index 4d00705..6c01f3a 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -1442,8 +1442,8 @@ ecdh_params (const char *curve) /* See RFC-6637 for those constants. 0x03: Number of bytes 0x01: Version for this parameter format - KDF algo - KEK algo + KDF hash algo + KEK symmetric cipher algo */ if (nbits <= 256) return (const unsigned char*)"\x03\x01\x08\x07"; diff --git a/scd/scdaemon.c b/scd/scdaemon.c index 8f8a026..8cbd0ee 100644 --- a/scd/scdaemon.c +++ b/scd/scdaemon.c @@ -99,7 +99,9 @@ enum cmd_and_opt_values oDenyAdmin, oDisableApplication, oEnablePinpadVarlen, - oListenBacklog + oListenBacklog, + + oNoop }; @@ -159,6 +161,9 @@ static ARGPARSE_OPTS opts[] = { ARGPARSE_s_s (oHomedir, "homedir", "@"), ARGPARSE_s_i (oListenBacklog, "listen-backlog", "@"), + /* Stubs for options which are implemented by 2.3 or later. */ + ARGPARSE_s_s (oNoop, "application-priority", "@"), + ARGPARSE_end () }; @@ -622,6 +627,8 @@ main (int argc, char **argv ) listen_backlog = pargs.r.ret_int; break; + case oNoop: break; + default: pargs.err = configfp? ARGPARSE_PRINT_WARNING:ARGPARSE_PRINT_ERROR; break; diff --git a/sm/certdump.c b/sm/certdump.c index edee76f..ede1210 100644 --- a/sm/certdump.c +++ b/sm/certdump.c @@ -658,6 +658,9 @@ format_name_writer (void *cookie, const void *buffer, size_t size) struct format_name_cookie *c = cookie; char *p; + if (!buffer) /* Flush. */ + return 0; /* (Actually we could use SIZE because that should be 0 too.) */ + if (!c->buffer) { p = xtrymalloc (size + 1 + 1); diff --git a/sm/certlist.c b/sm/certlist.c index c9e275e..c3e4e82 100644 --- a/sm/certlist.c +++ b/sm/certlist.c @@ -48,7 +48,7 @@ static const char oid_kp_ocspSigning[] = "1.3.6.1.5.5.7.3.9"; debugging). MODE 4 is for certificate signing, MODE for COSP response signing. */ static int -cert_usage_p (ksba_cert_t cert, int mode) +cert_usage_p (ksba_cert_t cert, int mode, int silent) { gpg_error_t err; unsigned int use; @@ -118,7 +118,7 @@ cert_usage_p (ksba_cert_t cert, int mode) if (gpg_err_code (err) == GPG_ERR_NO_DATA) { err = 0; - if (opt.verbose && mode < 2) + if (opt.verbose && mode < 2 && !silent) log_info (_("no key usage specified - assuming all usages\n")); use = ~0; } @@ -139,8 +139,9 @@ cert_usage_p (ksba_cert_t cert, int mode) { if ((use & (KSBA_KEYUSAGE_KEY_CERT_SIGN))) return 0; - log_info (_("certificate should not have " - "been used for certification\n")); + if (!silent) + log_info (_("certificate should not have " + "been used for certification\n")); return gpg_error (GPG_ERR_WRONG_KEY_USAGE); } @@ -151,8 +152,9 @@ cert_usage_p (ksba_cert_t cert, int mode) || (use & (KSBA_KEYUSAGE_KEY_CERT_SIGN |KSBA_KEYUSAGE_CRL_SIGN)))) return 0; - log_info (_("certificate should not have " - "been used for OCSP response signing\n")); + if (!silent) + log_info (_("certificate should not have " + "been used for OCSP response signing\n")); return gpg_error (GPG_ERR_WRONG_KEY_USAGE); } @@ -162,19 +164,22 @@ cert_usage_p (ksba_cert_t cert, int mode) ) return 0; - log_info (mode==3? _("certificate should not have been used for encryption\n"): - mode==2? _("certificate should not have been used for signing\n"): - mode==1? _("certificate is not usable for encryption\n"): - _("certificate is not usable for signing\n")); + if (!silent) + log_info + (mode==3? _("certificate should not have been used for encryption\n"): + mode==2? _("certificate should not have been used for signing\n"): + mode==1? _("certificate is not usable for encryption\n"): + /**/ _("certificate is not usable for signing\n")); + return gpg_error (GPG_ERR_WRONG_KEY_USAGE); } /* Return 0 if the cert is usable for signing */ int -gpgsm_cert_use_sign_p (ksba_cert_t cert) +gpgsm_cert_use_sign_p (ksba_cert_t cert, int silent) { - return cert_usage_p (cert, 0); + return cert_usage_p (cert, 0, silent); } @@ -182,31 +187,31 @@ gpgsm_cert_use_sign_p (ksba_cert_t cert) int gpgsm_cert_use_encrypt_p (ksba_cert_t cert) { - return cert_usage_p (cert, 1); + return cert_usage_p (cert, 1, 0); } int gpgsm_cert_use_verify_p (ksba_cert_t cert) { - return cert_usage_p (cert, 2); + return cert_usage_p (cert, 2, 0); } int gpgsm_cert_use_decrypt_p (ksba_cert_t cert) { - return cert_usage_p (cert, 3); + return cert_usage_p (cert, 3, 0); } int gpgsm_cert_use_cert_p (ksba_cert_t cert) { - return cert_usage_p (cert, 4); + return cert_usage_p (cert, 4, 0); } int gpgsm_cert_use_ocsp_p (ksba_cert_t cert) { - return cert_usage_p (cert, 5); + return cert_usage_p (cert, 5, 0); } @@ -341,7 +346,7 @@ gpgsm_add_to_certlist (ctrl_t ctrl, const char *name, int secret, first_subject = ksba_cert_get_subject (cert, 0); first_issuer = ksba_cert_get_issuer (cert, 0); } - rc = secret? gpgsm_cert_use_sign_p (cert) + rc = secret? gpgsm_cert_use_sign_p (cert, 0) : gpgsm_cert_use_encrypt_p (cert); if (gpg_err_code (rc) == GPG_ERR_WRONG_KEY_USAGE) { @@ -403,8 +408,8 @@ gpgsm_add_to_certlist (ctrl_t ctrl, const char *name, int secret, first_issuer, cert2) && ((gpg_err_code ( - secret? gpgsm_cert_use_sign_p (cert2) - : gpgsm_cert_use_encrypt_p (cert2) + secret? gpgsm_cert_use_sign_p (cert2,0) + : gpgsm_cert_use_encrypt_p (cert2) ) ) == GPG_ERR_WRONG_KEY_USAGE)); if (tmp) @@ -315,7 +315,7 @@ int gpgsm_validate_chain (ctrl_t ctrl, ksba_cert_t cert, int gpgsm_basic_cert_check (ctrl_t ctrl, ksba_cert_t cert); /*-- certlist.c --*/ -int gpgsm_cert_use_sign_p (ksba_cert_t cert); +int gpgsm_cert_use_sign_p (ksba_cert_t cert, int silent); int gpgsm_cert_use_encrypt_p (ksba_cert_t cert); int gpgsm_cert_use_verify_p (ksba_cert_t cert); int gpgsm_cert_use_decrypt_p (ksba_cert_t cert); @@ -161,7 +161,7 @@ gpgsm_get_default_cert (ctrl_t ctrl, ksba_cert_t *r_cert) return rc; } - if (!gpgsm_cert_use_sign_p (cert)) + if (!gpgsm_cert_use_sign_p (cert, 1)) { p = gpgsm_get_keygrip_hexstring (cert); if (p) @@ -404,7 +404,7 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist, /* Although we don't check for ambiguous specification we will check that the signer's certificate is usable and valid. */ - rc = gpgsm_cert_use_sign_p (cert); + rc = gpgsm_cert_use_sign_p (cert, 0); if (!rc) rc = gpgsm_validate_chain (ctrl, cert, "", NULL, 0, NULL, 0, NULL); if (rc) @@ -513,7 +513,7 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist, /* Gather certificates of signers and store them in the CMS object. */ for (cl=signerlist; cl; cl = cl->next) { - rc = gpgsm_cert_use_sign_p (cl->cert); + rc = gpgsm_cert_use_sign_p (cl->cert, 0); if (rc) goto leave; diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c index 79a7489..d4b3ebd 100644 --- a/tools/gpgconf-comp.c +++ b/tools/gpgconf-comp.c @@ -1152,12 +1152,8 @@ gpg_agent_runtime_change (int killflag) pgmname = gnupg_module_name (GNUPG_MODULE_NAME_CONNECT_AGENT); if (!gnupg_default_homedir_p ()) { - abs_homedir = make_absfilename_try (gnupg_homedir (), NULL); - if (!abs_homedir) - err = gpg_error_from_syserror (); - argv[i++] = "--homedir"; - argv[i++] = abs_homedir; + argv[i++] = gnupg_homedir (); } argv[i++] = "--no-autostart"; argv[i++] = killflag? "KILLAGENT" : "RELOADAGENT"; @@ -1195,12 +1191,8 @@ scdaemon_runtime_change (int killflag) pgmname = gnupg_module_name (GNUPG_MODULE_NAME_CONNECT_AGENT); if (!gnupg_default_homedir_p ()) { - abs_homedir = make_absfilename_try (gnupg_homedir (), NULL); - if (!abs_homedir) - err = gpg_error_from_syserror (); - argv[i++] = "--homedir"; - argv[i++] = abs_homedir; + argv[i++] = gnupg_homedir (); } argv[i++] = "-s"; argv[i++] = "--no-autostart"; @@ -1239,12 +1231,8 @@ dirmngr_runtime_change (int killflag) argv[3] = NULL; else { - abs_homedir = make_absfilename_try (gnupg_homedir (), NULL); - if (!abs_homedir) - err = gpg_error_from_syserror (); - argv[3] = "--homedir"; - argv[4] = abs_homedir; + argv[4] = gnupg_homedir (); argv[5] = NULL; } @@ -1266,7 +1254,7 @@ gc_component_launch (int component) { gpg_error_t err; const char *pgmname; - const char *argv[3]; + const char *argv[5]; int i; pid_t pid; @@ -1281,13 +1269,27 @@ gc_component_launch (int component) if (!(component == GC_COMPONENT_GPG_AGENT || component == GC_COMPONENT_DIRMNGR)) { - es_fputs (_("Component not suitable for launching"), es_stderr); - es_putc ('\n', es_stderr); + log_error ("%s\n", _("Component not suitable for launching")); + gpgconf_failure (0); + } + + if (gc_component_check_options (component, NULL, NULL)) + { + log_error (_("Configuration file of component %s is broken\n"), + gc_component[component].name); + if (!opt.quiet) + log_info (_("Note: Use the command \"%s%s\" to get details.\n"), + "gpgconf --check-options ", gc_component[component].name); gpgconf_failure (0); } pgmname = gnupg_module_name (GNUPG_MODULE_NAME_CONNECT_AGENT); i = 0; + if (!gnupg_default_homedir_p ()) + { + argv[i++] = "--homedir"; + argv[i++] = gnupg_homedir (); + } if (component == GC_COMPONENT_DIRMNGR) argv[i++] = "--dirmngr"; argv[i++] = "NOP"; @@ -1688,8 +1690,9 @@ collect_error_output (estream_t fp, const char *tag) } -/* Check the options of a single component. Returns 0 if everything - is OK. */ +/* Check the options of a single component. If CONF_FILE is NULL the + * standard config file is used. If OUT is not NULL the output is + * written to that stream. Returns 0 if everything is OK. */ int gc_component_check_options (int component, estream_t out, const char *conf_file) { diff --git a/tools/gpgconf.c b/tools/gpgconf.c index 4cd0505..d9ee4a9 100644 --- a/tools/gpgconf.c +++ b/tools/gpgconf.c @@ -900,6 +900,7 @@ main (int argc, char **argv) void gpgconf_failure (gpg_error_t err) { + log_flush (); if (!err) err = gpg_error (GPG_ERR_GENERAL); gpgconf_write_status |