See ChangeLog: Mon Mar 8 20:47:17 CET 1999 Werner Koch
authorWerner Koch <wk@gnupg.org>
Mon, 8 Mar 1999 19:50:18 +0000 (19:50 +0000)
committerWerner Koch <wk@gnupg.org>
Mon, 8 Mar 1999 19:50:18 +0000 (19:50 +0000)
39 files changed:
BUGS
ChangeLog
NEWS
OBUGS
README
TODO
VERSION
acconfig.h
acinclude.m4
checks/ChangeLog
checks/Makefile.am
checks/defs.inc
checks/secdemo.asc
cipher/ChangeLog
cipher/dynload.c
configure.in
debian/changelog
debian/control
debian/rules
doc/DETAILS
g10/ChangeLog
g10/getkey.c
g10/keyedit.c
g10/keylist.c
g10/mainproc.c
g10/pkclist.c
g10/seckey-cert.c
g10/sig-check.c
g10/trustdb.c
g10/trustdb.h
mpi/ChangeLog
mpi/config.links
po/de.po
po/es_ES.po
po/fr.po
po/it.po
po/pl.po
po/pt_BR.po
po/ru.po

diff --git a/BUGS b/BUGS
index 8565169..6e87568 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -18,12 +18,6 @@ and after about half a day in the rsync snapshots.
     and pgp263in has problems if the clearsign has been created by
     pgp263ia.
 
-[***] #2  1999-02-21
-    Problem while importing or deleting public keys in 0.9.3 - 0.9.2
-    worked fine.  Error message:
-    gpg:[stdin]: key A6A59DB9: secret key not found: public key not found
-    FIX: 1999-02-22 wk
-
 [  *] #3
     --list-packets should continue even w/o a passphrase (or in batch
     mode).  Maybe we have to move it to a separate program??
@@ -50,35 +44,6 @@ and after about half a day in the rsync snapshots.
     Buserror on IRIX 6.4: Crash while doing a keygen. I think while creating
     the prime. Other buserrors are reported when doing a "gpg README"
     on sparc-solaris2.6.
-    --> I hope I've fixed this: Please, can check someone it.
+    --> I hope I've fixed this: Please, can someone check this.
        I can't reproduce it on the alpha I have access to.
 
-[  *] #7 1999-02-22 <dwpalmer@dwpalm.jf.intel.com> 0.9.3
-    Conventional encrytion incompatibilty:
-     $ gpg -c --cipher-algo cast5 --compress-algo 1 --no-comment secrets.txt
-    Creates a file that gpg can decrypt, but PGP 5.5 has problems with it.
-    PGP decrypts 6416k out of 6424k, then complains with "PGP Warning",
-    "The keyring contains a bad (corrupted) PGP packet".  The resulting
-    file is missing information from the front.
-    [26.02.99: temporary fix in encrypt_simple()]
-
-[  *] #8 1999-02-25 <kazu@iijlab.net> 0.9.3
-    %gpg --encrypt -r kazu@iijlab.net --batch foo
-    gpg: Warning: using insecure memory!
-    gpg: 11C23F61: no info to calculate a trust probability
-    This creates a symmetrically encrypted message WITHOUT a session key
-    encrypted with public cryptographic(i.e. foo.gpg). This is probably
-    FIX: 199-02-26 wk
-
-[ **] #9 1999-02-25
-    Misalignment in md5.c#md5_write.
-    FIX: 1999-02-26 wk
-
-[ **] #10 1999-03-01
-    Armor detection code is broken.  Direct import of keyrings is not possible.
-    FIX: 1999-03-02 wk
-
-[***] #11 1999-02-25
-    "cipher algo 10 not found".
-    FIX: 1999-02-25 wk
-
index 5b58729..c71ee2a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * configure.in (DLSYM_NEEDS_UNDERSCORE): Replaced.
+       * acinclude.in (AM_SYS_SYMBOL_UNDERSCORE): New.
+
+       * VERSION: Now 0.9.4
+
 Sun Feb 28 19:11:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * configure.in (dld): Test disabled.
diff --git a/NEWS b/NEWS
index b3c2f54..07f84df 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,9 +1,13 @@
+Noteworthy changes in version 0.9.4
+-----------------------------------
 
     * New configure option --enable-static-rnd=[egd|linux|unix|none]
       to select a random gathering module for static linking.
 
     * The original text is now verbatim copied to a cleartext signed message.
 
+    * Bugfixes but there are still a couple of bugs.
+
 
 Noteworthy changes in version 0.9.3
 -----------------------------------
diff --git a/OBUGS b/OBUGS
index 109b1b7..95c892a 100644 (file)
--- a/OBUGS
+++ b/OBUGS
@@ -4,4 +4,40 @@
 (format: severity: [  *] to [***], no, first reported, by, version)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
+[***] #2  1999-02-21
+    Problem while importing or deleting public keys in 0.9.3 - 0.9.2
+    worked fine.  Error message:
+    gpg:[stdin]: key A6A59DB9: secret key not found: public key not found
+    FIX: 1999-02-22 wk
+
+[  *] #7 1999-02-22 <dwpalmer@dwpalm.jf.intel.com> 0.9.3
+    Conventional encrytion incompatibilty:
+     $ gpg -c --cipher-algo cast5 --compress-algo 1 --no-comment secrets.txt
+    Creates a file that gpg can decrypt, but PGP 5.5 has problems with it.
+    PGP decrypts 6416k out of 6424k, then complains with "PGP Warning",
+    "The keyring contains a bad (corrupted) PGP packet".  The resulting
+    file is missing information from the front.
+    FIX: 1999-02-26 temporary fix in encrypt_simple()
+
+
+[  *] #8 1999-02-25 <kazu@iijlab.net> 0.9.3
+    %gpg --encrypt -r kazu@iijlab.net --batch foo
+    gpg: Warning: using insecure memory!
+    gpg: 11C23F61: no info to calculate a trust probability
+    This creates a symmetrically encrypted message WITHOUT a session key
+    encrypted with public cryptographic(i.e. foo.gpg). This is probably
+    FIX: 199-02-26 wk
+
+[ **] #9 1999-02-25
+    Misalignment in md5.c#md5_write.
+    FIX: 1999-02-26 wk
+
+[ **] #10 1999-03-01
+    Armor detection code is broken.  Direct import of keyrings is not possible.
+    FIX: 1999-03-02 wk
+
+[***] #11 1999-02-25
+    "cipher algo 10 not found".
+    FIX: 1999-02-25 wk
+
 
diff --git a/README b/README
index 845c15b..04d4782 100644 (file)
--- a/README
+++ b/README
@@ -1,3 +1,6 @@
+Please note that this is only a bug fix release and some things
+do not yet work - see TODO for parts which are problematic
+
 -----BEGIN PGP SIGNED MESSAGE-----
 
                     GnuPG - The GNU Privacy Guard
diff --git a/TODO b/TODO
index c57d79c..af8e8ce 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,4 +1,6 @@
 
+  * Finish the EGD module.
+
   * Implement 256 bit key Twofish.
 
   * Check revocation and expire stuff. [I'm currently working on this.]
@@ -20,6 +22,7 @@
 
 Nice to have
 ------------
+  * Do a real fix for bug #7 or document that it is a PGP 5 error.
   * clearsig: Keep lineendings while writing the output of a clearsig
   * preferences of hash algorithms are not yet used.
   * new menu to delete signatures and list signature in menu
diff --git a/VERSION b/VERSION
index d28202e..a602fc9 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.9.3a
+0.9.4
index fe2ac2f..e3b4f29 100644 (file)
@@ -74,7 +74,6 @@
 #undef USE_DYNAMIC_LINKING
 #undef HAVE_DL_DLOPEN
 #undef HAVE_DLD_DLD_LINK
-#undef DLSYM_NEEDS_UNDERSCORE
 
 #undef USE_SHM_COPROCESSING
 
index 2349da6..2d0b69b 100644 (file)
@@ -342,5 +342,222 @@ define(GNUPG_CHECK_MLOCK,
     fi
   ])
 
+#####################################################################
+# AM_SYS_SYMBOL_UNDERSCORE, AM_SYS_NM_PARSE:
+# This has been taken from glib 1.2.0 acinclude.m4 which states that
+# it is copyrighted by the FSF
+################################################################### ##
+dnl AM_SYS_SYMBOL_UNDERSCORE - does the compiler prefix global symbols
+dnl                            with an underscore?
+AC_DEFUN(AM_SYS_SYMBOL_UNDERSCORE,
+[AC_REQUIRE([AM_PROG_NM])dnl
+AC_REQUIRE([AM_SYS_NM_PARSE])dnl
+AC_MSG_CHECKING([for _ prefix in compiled symbols])
+AC_CACHE_VAL(ac_cv_sys_symbol_underscore,
+[ac_cv_sys_symbol_underscore=no
+cat > conftest.$ac_ext <<EOF
+void nm_test_func(){}
+int main(){nm_test_func;return 0;}
+EOF
+if AC_TRY_EVAL(ac_compile); then
+  # Now try to grab the symbols.
+  ac_nlist=conftest.nm
+  if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
+    # See whether the symbols have a leading underscore.
+    if egrep '^_nm_test_func' "$ac_nlist" >/dev/null; then
+      ac_cv_sys_symbol_underscore=yes
+    else
+      if egrep '^nm_test_func ' "$ac_nlist" >/dev/null; then
+        :
+      else
+        echo "configure: cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
+      fi
+    fi
+  else
+    echo "configure: cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
+  fi
+else
+  echo "configure: failed program was:" >&AC_FD_CC
+  cat conftest.c >&AC_FD_CC
+fi
+rm -rf conftest*
+])
+AC_MSG_RESULT($ac_cv_sys_symbol_underscore)
+if test x$ac_cv_sys_symbol_underscore = xyes; then
+  AC_DEFINE(WITH_SYMBOL_UNDERSCORE,1,
+  [define if compiled symbols have a leading underscore])
+fi
+])
+
+
+dnl AM_SYS_NM_PARSE - Check for command to grab the raw symbol name followed
+dnl                   by C symbol name from nm.
+AC_DEFUN(AM_SYS_NM_PARSE,
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AM_PROG_NM])dnl
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output])
+AC_CACHE_VAL(ac_cv_sys_global_symbol_pipe,
+[# These are sane defaults that work on at least a few old systems.
+# {They come from Ultrix.  What could be older than Ultrix?!! ;)}
+
+changequote(,)dnl
+# Character class describing NM global symbol codes.
+ac_symcode='[BCDEGRSTU]'
+
+# Regexp to match symbols that can be accessed directly from C.
+ac_sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
+
+# Transform the above into a raw symbol and a C symbol.
+ac_symxfrm='\1 \1'
+
+# Define system-specific variables.
+case "$host_os" in
+aix*)
+  ac_symcode='[BCDTU]'
+  ;;
+sunos* | cygwin32* | mingw32*)
+  ac_sympat='_\([_A-Za-z][_A-Za-z0-9]*\)'
+  ac_symxfrm='_\1 \1'
+  ;;
+irix*)
+  # Cannot use undefined symbols on IRIX because inlined functions mess us up.
+  ac_symcode='[BCDEGRST]'
+  ;;
+solaris*)
+  ac_symcode='[BDTU]'
+  ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
+  ac_symcode='[ABCDGISTUW]'
+fi
+
+case "$host_os" in
+cygwin32* | mingw32*)
+  # We do not want undefined symbols on cygwin32.  The user must
+  # arrange to define them via -l arguments.
+  ac_symcode='[ABCDGISTW]'
+  ;;
+esac
+changequote([,])dnl
+
+# Write the raw and C identifiers.
+ac_cv_sys_global_symbol_pipe="sed -n -e 's/^.* $ac_symcode $ac_sympat$/$ac_symxfrm/p'"
+
+# Check to see that the pipe works correctly.
+ac_pipe_works=no
+cat > conftest.$ac_ext <<EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func;return 0;}
+EOF
+if AC_TRY_EVAL(ac_compile); then
+  # Now try to grab the symbols.
+  ac_nlist=conftest.nm
+  if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
+
+    # Try sorting and uniquifying the output.
+    if sort "$ac_nlist" | uniq > "$ac_nlist"T; then
+      mv -f "$ac_nlist"T "$ac_nlist"
+      ac_wcout=`wc "$ac_nlist" 2>/dev/null`
+changequote(,)dnl
+      ac_count=`echo "X$ac_wcout" | sed -e 's,^X,,' -e 's/^[    ]*\([0-9][0-9]*\).*$/\1/'`
+changequote([,])dnl
+      (test "$ac_count" -ge 0) 2>/dev/null || ac_count=-1
+    else
+      rm -f "$ac_nlist"T
+      ac_count=-1
+    fi
+
+    # Make sure that we snagged all the symbols we need.
+    if egrep ' nm_test_var$' "$ac_nlist" >/dev/null; then
+      if egrep ' nm_test_func$' "$ac_nlist" >/dev/null; then
+        cat <<EOF > conftest.c
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EOF
+        # Now generate the symbol file.
+        sed 's/^.* \(.*\)$/extern char \1;/' < "$ac_nlist" >> conftest.c
+
+        cat <<EOF >> conftest.c
+#if defined (__STDC__) && __STDC__
+# define __ptr_t void *
+#else
+# define __ptr_t char *
+#endif
+
+/* The number of symbols in dld_preloaded_symbols, -1 if unsorted. */
+int dld_preloaded_symbol_count = $ac_count;
+
+/* The mapping between symbol names and symbols. */
+struct {
+  char *name;
+  __ptr_t address;
+}
+changequote(,)dnl
+dld_preloaded_symbols[] =
+changequote([,])dnl
+{
+EOF
+        sed 's/^\(.*\) \(.*\)$/  {"\1", (__ptr_t) \&\2},/' < "$ac_nlist" >> conftest.c
+        cat <<\EOF >> conftest.c
+  {0, (__ptr_t) 0}
+};
+
+#ifdef __cplusplus
+}
+#endif
+EOF
+        # Now try linking the two files.
+        mv conftest.$ac_objext conftestm.$ac_objext
+        ac_save_LIBS="$LIBS"
+        ac_save_CFLAGS="$CFLAGS"
+        LIBS="conftestm.$ac_objext"
+        CFLAGS="$CFLAGS$no_builtin_flag"
+        if AC_TRY_EVAL(ac_link) && test -s conftest; then
+          ac_pipe_works=yes
+        else
+          echo "configure: failed program was:" >&AC_FD_CC
+          cat conftest.c >&AC_FD_CC
+        fi
+        LIBS="$ac_save_LIBS"
+        CFLAGS="$ac_save_CFLAGS"
+      else
+        echo "cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
+      fi
+    else
+      echo "cannot find nm_test_var in $ac_nlist" >&AC_FD_CC
+    fi
+  else
+    echo "cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
+  fi
+else
+  echo "$progname: failed program was:" >&AC_FD_CC
+  cat conftest.c >&AC_FD_CC
+fi
+rm -rf conftest*
+
+# Do not use the global_symbol_pipe unless it works.
+test "$ac_pipe_works" = yes || ac_cv_sys_global_symbol_pipe=
+])
+
+ac_result=yes
+if test -z "$ac_cv_sys_global_symbol_pipe"; then
+   ac_result=no
+fi
+AC_MSG_RESULT($ac_result)
+])
+dnl end of AM_SYS_NM_PARSE
+
 
 dnl *-*wedit:notab*-*  Please keep this as the last line.
index b286973..27397c0 100644 (file)
@@ -1,3 +1,7 @@
+Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * pubdemo.asc, secdemo.asc: New.
+
 Fri Feb 19 15:49:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * genkey1024.test: Be really quiet.
index 38b163f..ab0e2ec 100644 (file)
@@ -14,7 +14,7 @@ TESTS = version.test mds.test \
 
 TEST_FILES = pubring.asc secring.asc plain-1o.asc plain-2o.asc plain-3o.asc \
             plain-1.asc plain-2.asc plain-3.asc plain-1-pgp.asc \
-            pubring.pkr.asc secring.skr.asc
+            pubring.pkr.asc secring.skr.asc secdemo.asc pubdemo.asc
 
 DATA_FILES = data-500 data-9000 data-32000 data-80000 plain-large
 
index 840fc69..7255fba 100755 (executable)
@@ -78,7 +78,6 @@ cat <<EOF  >./options
 no-greeting
 no-secmem-warning
 load-extension ../cipher/tiger
-load-extension ../cipher/rndlinux
 batch
 EOF
 
index 08fb949..343453c 100644 (file)
@@ -1,4 +1,4 @@
-26 demo keys:
+26 demo keys (passphrase is "abc"):
 
 sec  1024D/68697734 1999-03-08 Alpha Test (demo key) <alpha@example.net>
 uid                            Alice (demo key)
index bc9aa54..a9a720f 100644 (file)
@@ -1,3 +1,7 @@
+Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed.
+
 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * md.c: Nearly a total rewrote.
index 75dcb39..b4ed771 100644 (file)
@@ -32,7 +32,7 @@
 #include "cipher.h"
 #include "dynload.h"
 
-#ifdef DLSYM_NEEDS_UNDERSCORE
+#ifdef WITH_SYMBOL_UNDERSCORE
   #define SYMBOL_VERSION "_gnupgext_version"
   #define SYMBOL_ENUM   "_gnupgext_enum_func"
 #else
index 84fcbdb..dbc1c59 100644 (file)
@@ -171,7 +171,7 @@ case "${target}" in
 esac
 
 AC_SUBST(MPI_OPT_FLAGS)
-
+AM_SYS_SYMBOL_UNDERSCORE
 GNUPG_CHECK_PIC
 GNUPG_CHECK_RDYNAMIC
 if test "$NO_PIC" = yes; then
@@ -241,9 +241,6 @@ if test "$try_dynload" = yes ; then
       AC_DEFINE(USE_DYNAMIC_LINKING)
       AC_DEFINE(HAVE_DL_DLOPEN)
       DYNLINK_LDFLAGS="$CFLAGS_RDYNAMIC"
-      dnl fixme: this is probably false but it should
-      dnl work for freebsd
-      AC_DEFINE(DLSYM_NEEDS_UNDERSCORE)
       use_gnupg_extensions=yes
 dnl else
 dnl
@@ -429,12 +426,10 @@ echo '}' >>cipher/construct.c
 dnl
 dnl Figure how to link the cipher modules
 dnl
-dnl (form now these are only dynamic)
 AC_SUBST(STATIC_CIPHER_OBJS)
 AC_SUBST(DYNAMIC_CIPHER_MODS)
 
 
-
 dnl setup assembler stuff
 AC_MSG_CHECKING(for mpi assembler functions)
 if test -f $srcdir/mpi/config.links ; then
index dd58db6..6d71f15 100644 (file)
@@ -1,3 +1,10 @@
+gnupg (0.9.4) unstable; urgency=low
+
+  * New version.
+  * debian/control: s/GNUPG/GnuPG/
+
+ -- Werner Koch <wk@isil.d.suttle.de>  Mon, 8 Mar 1999 19:58:28 +0100
+
 gnupg (0.9.2-1) unstable; urgency=low
 
   * New version.
index 1c5f906..dfb4546 100644 (file)
@@ -8,16 +8,16 @@ Package: gnupg
 Architecture: any
 Depends: ${shlibs:Depends}
 Description: GNU privacy guard - a free PGP replacement.
- GNUPG is the GNU encryption and signing tool.  As you can see from the 
- version number, the program may have some bugs and some features may not 
+ GnuPG is the GNU encryption and signing tool. As you can see from the
+ version number, the program may have some bugs and some features may not
  work at all.
  .
- Due to the fact that GNUPG does not use use any patented algorithm,
+ Due to the fact that GnuPG does not use use any patented algorithm,
  it cannot be compatible to old PGP versions, because those use
  IDEA (which is worldwide patented) and RSA (which is patented in
- the United States until Sep 20, 2000).  
+ the United States until Sep 20, 2000).
  .
- GNUPG is in almost all aspects compatible with other OpenPGP
- implementations. The default algorithms are DSA and ELGamal.  
+ GnuPG is in almost all aspects compatible with other OpenPGP
+ implementations. The default algorithms are DSA and ELGamal.
  Symmetric algorithms are: Blowfish and CAST5, Digest algorithms are
  MD5, RIPEMD160, SHA1 and TIGER/192.
index f0d81e1..96b9660 100644 (file)
@@ -1,5 +1,5 @@
 #!/usr/bin/make -f
-# debian/rules file - for GNUPG (0.9.2)
+# debian/rules file - for GNUPG (0.9.4)
 # Based on sample debian/rules file - for GNU Hello (1.3).
 # Copyright 1994,1995 by Ian Jackson.
 # Copyright 1998 James Troup
index 9c45b58..e204b44 100644 (file)
@@ -64,12 +64,12 @@ more arguments in future versions.
        as GOODSIG but has the fingerprint as the argument. Both
        status lines ere emitted for a good signature.
 
-    SIG_ID  <radix64_string>
+    SIG_ID  <radix64_string>  <sig_creation_date>
        This is emitted only for signatures which
        have been verified okay.  The string is a signature id
        and may be used in applications to detect replay attacks
        of signed messages.  Note that only DLP algorithms give
-       unique ids - others may yoild duplicated ones when they
+       unique ids - others may yield duplicated ones when they
        have been created in the same second.
 
     TRUST_UNDEFINED
index 0340418..9e3e460 100644 (file)
@@ -1,3 +1,17 @@
+Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * getkey.c (classify_user_id): Add new mode 12 (#<lid>).
+
+       * seckey-cert.c (check_secret_key): replaced error by info.
+
+       * trustdb.c (query_trust_info): Add another arg, changed all callers.
+       (check_trust): Ditto.
+       (do_check): Ditto.
+       (verify_key): Handle namehash.
+       * keylist.c (list_keyblock): print trust info for user ids.
+
+       * sig-check.c (signature_check): Add sig-created to status output.
+
 Tue Mar  2 16:44:57 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * textfilter.c (copy_clearsig_text): New.
index 01ffe01..424590e 100644 (file)
@@ -506,6 +506,7 @@ hextobyte( const byte *s )
  *  6 = word match mode
  * 10 = it is a short KEYID (don't care about keyid[0])
  * 11 = it is a long  KEYID
+ * 12 = it is a trustdb index (keyid is looked up)
  * 16 = it is a 16 byte fingerprint
  * 20 = it is a 20 byte fingerprint
  *
@@ -624,7 +625,12 @@ classify_user_id( const char *name, u32 *keyid, byte *fprint,
        s++;
     }
     else if( *s == '#' ) { /* use local id */
-       return 0;
+       mode = 12;
+       s++;
+       if( keyid ) {
+           if( keyid_from_lid( strtoul( s, NULL, 10), keyid ) )
+               keyid[0] = keyid[1] = 0;
+       }
     }
     else if( !*s )  /* empty string */
        return 0;
@@ -1561,54 +1567,6 @@ finish_lookup_sk( KBNODE keyblock, PKT_secret_key *sk, KBNODE k, int primary )
 }
 
 
-/****** old code from lookup_read ******/
-#if 0 /* can't use it anymore - invent a more general approach */
-    /* try the quick functions */
-    if( !ctx->count ) {
-       k = NULL;
-       switch( ctx->mode ) {
-         case 10:
-         case 11:
-           rc = locate_keyblock_by_keyid( &ctx->kbpos, ctx->keyid,
-                                                       ctx->mode==10, 0 );
-           if( !rc )
-               rc = read_keyblock( &ctx->kbpos, &ctx->keyblock );
-           if( !rc )
-               k = find_by_keyid( ctx->keyblock, pk, ctx->keyid, ctx->mode );
-           break;
-
-         case 16:
-         case 20:
-           rc = locate_keyblock_by_fpr( &ctx->kbpos, ctx->name, ctx->mode, 0 );
-           if( !rc )
-               rc = read_keyblock( &ctx->kbpos, &ctx->keyblock );
-           if( !rc )
-               k = find_by_fpr( ctx->keyblock, pk, ctx->name, ctx->mode );
-           break;
-
-         default: rc = G10ERR_UNSUPPORTED;
-       }
-       if( !rc ) {
-           if( !k ) {
-               log_error("lookup: key has been located but was not found\n");
-               rc = G10ERR_INV_KEYRING;
-           }
-           else
-               finish_lookup( ctx->keyblock, pk, k, namehash, 0, ctx->primary );
-       }
-    }
-    else
-       rc = G10ERR_UNSUPPORTED;
-
-    /* if this was not possible, loop over all keyblocks
-     * fixme: If one of the resources in the quick functions above
-     *       works, but the key was not found, we will not find it
-     *       in the other resources */
-    if( rc == G10ERR_UNSUPPORTED ) {
-    }
-#endif
-
-
 static int
 lookup_pk( GETKEY_CTX ctx, PKT_public_key *pk, KBNODE *ret_keyblock )
 {
@@ -1636,7 +1594,7 @@ lookup_pk( GETKEY_CTX ctx, PKT_public_key *pk, KBNODE *ret_keyblock )
                    k = find_by_name( ctx->keyblock, pk,
                                      item->name, item->mode,
                                      namehash, &use_namehash );
-               else if( item->mode == 10 || item->mode == 11 )
+               else if( item->mode >= 10 && item->mode <= 12 )
                    k = find_by_keyid( ctx->keyblock, pk,
                                       item->keyid, item->mode );
                else if( item->mode == 15 )
@@ -1723,7 +1681,7 @@ lookup_sk( GETKEY_CTX ctx, PKT_secret_key *sk, KBNODE *ret_keyblock )
                if( item->mode < 10 )
                    k = find_by_name_sk( ctx->keyblock, sk,
                                         item->name, item->mode );
-               else if( item->mode == 10 || item->mode == 11 )
+               else if( item->mode >= 10 && item->mode <= 12 )
                    k = find_by_keyid_sk( ctx->keyblock, sk,
                                          item->keyid, item->mode );
                else if( item->mode == 15 )
@@ -1765,143 +1723,6 @@ lookup_sk( GETKEY_CTX ctx, PKT_secret_key *sk, KBNODE *ret_keyblock )
 }
 
 
-#if 0
-OLD/************
-OLD * Ditto for secret keys WORK!!!!!!
-OLD */
-OLDstatic int
-OLDlookup_sk( PKT_secret_key *sk, int mode,  u32 *keyid, const char *name,
-OLD          int primary )
-OLD{
-OLD    int rc;
-OLD    KBNODE keyblock = NULL;
-OLD    KBPOS kbpos;
-OLD    int oldmode = set_packet_list_mode(0);
-OLD
-OLD    rc = enum_keyblocks( 5 /* open secret */, &kbpos, &keyblock );
-OLD    if( rc ) {
-OLD       if( rc == -1 )
-OLD           rc = G10ERR_NO_SECKEY;
-OLD       else if( rc )
-OLD           log_error("enum_keyblocks(open secret) failed: %s\n", g10_errstr(rc) );
-OLD       goto leave;
-OLD    }
-OLD
-OLD    while( !(rc = enum_keyblocks( 1, &kbpos, &keyblock )) ) {
-OLD       KBNODE k, kk;
-OLD       if( mode < 10 ) { /* name lookup */
-OLD           for(k=keyblock; k; k = k->next ) {
-OLD               if( k->pkt->pkttype == PKT_USER_ID
-OLD                   && !compare_name( k->pkt->pkt.user_id->name,
-OLD                                     k->pkt->pkt.user_id->len, name, mode)) {
-OLD                   /* we found a matching name, look for the key */
-OLD                   for(kk=keyblock; kk; kk = kk->next ) {
-OLD                       if( (    kk->pkt->pkttype == PKT_SECRET_KEY
-OLD                             || kk->pkt->pkttype == PKT_SECRET_SUBKEY )
-OLD                           && ( !sk->pubkey_algo
-OLD                                || sk->pubkey_algo
-OLD                                   == kk->pkt->pkt.secret_key->pubkey_algo)
-OLD                           && ( !sk->pubkey_usage
-OLD                                || !check_pubkey_algo2(
-OLD                                      kk->pkt->pkt.secret_key->pubkey_algo,
-OLD                                                          sk->pubkey_usage ))
-OLD                         )
-OLD                           break;
-OLD                   }
-OLD                   if( kk ) {
-OLD                       u32 aki[2];
-OLD                       keyid_from_sk( kk->pkt->pkt.secret_key, aki );
-OLD                       cache_user_id( k->pkt->pkt.user_id, aki );
-OLD                       k = kk;
-OLD                       break;
-OLD                   }
-OLD                   else
-OLD                       log_error("No key for userid (in sk)\n");
-OLD               }
-OLD           }
-OLD       }
-OLD       else { /* keyid or fingerprint lookup */
-OLD           if( DBG_CACHE && (mode== 10 || mode==11) ) {
-OLD               log_debug("lookup_sk keyid=%08lx%08lx req_algo=%d mode=%d\n",
-OLD                               (ulong)keyid[0], (ulong)keyid[1],
-OLD                                sk->pubkey_algo, mode );
-OLD           }
-OLD           for(k=keyblock; k; k = k->next ) {
-OLD               if(    k->pkt->pkttype == PKT_SECRET_KEY
-OLD                   || k->pkt->pkttype == PKT_SECRET_SUBKEY ) {
-OLD                   if( mode == 10 || mode == 11 ) {
-OLD                       u32 aki[2];
-OLD                       keyid_from_sk( k->pkt->pkt.secret_key, aki );
-OLD                       if( DBG_CACHE ) {
-OLD                           log_debug("             aki=%08lx%08lx algo=%d\n",
-OLD                                           (ulong)aki[0], (ulong)aki[1],
-OLD                                   k->pkt->pkt.secret_key->pubkey_algo    );
-OLD                       }
-OLD                       if( aki[1] == keyid[1]
-OLD                           && ( mode == 10 || aki[0] == keyid[0] )
-OLD                           && ( !sk->pubkey_algo
-OLD                                || sk->pubkey_algo
-OLD                                   == k->pkt->pkt.secret_key->pubkey_algo) ){
-OLD                           /* cache the userid */
-OLD                           for(kk=keyblock; kk; kk = kk->next )
-OLD                               if( kk->pkt->pkttype == PKT_USER_ID )
-OLD                                   break;
-OLD                           if( kk )
-OLD                               cache_user_id( kk->pkt->pkt.user_id, aki );
-OLD                           else
-OLD                               log_error("No userid for key\n");
-OLD                           break; /* found */
-OLD                       }
-OLD                   }
-OLD                   else if( mode == 15 ) { /* get the first key */
-OLD                       if( !sk->pubkey_algo
-OLD                           || sk->pubkey_algo
-OLD                                 == k->pkt->pkt.secret_key->pubkey_algo )
-OLD                           break;
-OLD                   }
-OLD                   else if( mode == 16 || mode == 20 ) {
-OLD                       size_t an;
-OLD                       byte afp[MAX_FINGERPRINT_LEN];
-OLD
-OLD                       fingerprint_from_sk(k->pkt->pkt.secret_key, afp, &an );
-OLD                       if( an == mode && !memcmp( afp, name, an)
-OLD                           && ( !sk->pubkey_algo
-OLD                                || sk->pubkey_algo
-OLD                                   == k->pkt->pkt.secret_key->pubkey_algo) ) {
-OLD                           break;
-OLD                       }
-OLD                   }
-OLD                   else
-OLD                       BUG();
-OLD               } /* end compare secret keys */
-OLD           }
-OLD       }
-OLD       if( k ) { /* found */
-OLD           assert(    k->pkt->pkttype == PKT_SECRET_KEY
-OLD                   || k->pkt->pkttype == PKT_SECRET_SUBKEY );
-OLD           assert( keyblock->pkt->pkttype == PKT_SECRET_KEY );
-OLD           if( primary && !sk->pubkey_usage )
-OLD               copy_secret_key( sk, keyblock->pkt->pkt.secret_key );
-OLD           else
-OLD               copy_secret_key( sk, k->pkt->pkt.secret_key );
-OLD           break; /* enumeration */
-OLD       }
-OLD       release_kbnode( keyblock );
-OLD       keyblock = NULL;
-OLD    }
-OLD    if( rc == -1 )
-OLD       rc = G10ERR_NO_SECKEY;
-OLD    else if( rc )
-OLD       log_error("enum_keyblocks(read) failed: %s\n", g10_errstr(rc));
-OLD
-OLD  leave:
-OLD    enum_keyblocks( 2, &kbpos, &keyblock ); /* close */
-OLD    release_kbnode( keyblock );
-OLD    set_packet_list_mode(oldmode);
-OLD    return rc;
-OLD}
-#endif
-
 
 /****************
  * fixme: replace by the generic function
index f16a19c..f818b35 100644 (file)
@@ -889,7 +889,7 @@ show_key_with_all_names( KBNODE keyblock, int only_marked,
            if( node->pkt->pkttype == PKT_PUBLIC_KEY ) {
                /* do it here, so that debug messages don't clutter the
                 * output */
-               trust = query_trust_info(pk);
+               trust = query_trust_info(pk, NULL);
                otrust = get_ownertrust_info( pk->local_id );
            }
 
index 1861cd8..1462dbb 100644 (file)
@@ -196,7 +196,7 @@ list_keyblock( KBNODE keyblock, int secret )
        sk = NULL;
        keyid_from_pk( pk, keyid );
        if( opt.with_colons ) {
-           trustletter = query_trust_info( pk );
+           trustletter = query_trust_info( pk, NULL );
            printf("pub:%c:%u:%d:%08lX%08lX:%s:%s:",
                    trustletter,
                    nbits_from_pk( pk ),
@@ -222,8 +222,15 @@ list_keyblock( KBNODE keyblock, int secret )
     for( kbctx=NULL; (node=walk_kbnode( keyblock, &kbctx, 0)) ; ) {
        if( node->pkt->pkttype == PKT_USER_ID ) {
            if( any ) {
-               if( opt.with_colons )
-                   printf("uid:::::::::");
+               if( opt.with_colons ) {
+                   byte namehash[20];
+
+                   rmd160_hash_buffer( namehash,
+                                       node->pkt->pkt.user_id->name,
+                                       node->pkt->pkt.user_id->len  );
+                   trustletter = query_trust_info( pk, namehash );
+                   printf("uid:%c::::::::", trustletter);
+               }
                else
                    printf("uid%*s", 28, "");
            }
index fcb9f5d..8ef802b 100644 (file)
@@ -481,7 +481,7 @@ list_node( CTX c, KBNODE node )
            keyid_from_pk( pk, keyid );
            if( mainkey ) {
                c->local_id = pk->local_id;
-               c->trustletter = query_trust_info( pk );
+               c->trustletter = query_trust_info( pk, NULL );
            }
            printf("%s:%c:%u:%d:%08lX%08lX:%s:%s:",
                    mainkey? "pub":"sub",
index ca22736..fffaef8 100644 (file)
@@ -50,7 +50,7 @@ show_paths( ulong lid, int only_first )
     last_level = 0;
     while( (level=enum_cert_paths( &context, &lid, &otrust, &validity)) != -1){
        char *p;
-       int rc;
+       int c, rc;
        size_t n;
        u32 keyid[2];
        PKT_public_key *pk ;
@@ -77,7 +77,7 @@ show_paths( ulong lid, int only_first )
                  level*2, "",
                  nbits_from_pk( pk ), pubkey_letter( pk->pubkey_algo ),
                  (ulong)keyid[1], lid, datestr_from_pk( pk ) );
-     #if 0
+
        c = trust_letter(otrust);
        if( c )
            putchar( c );
@@ -90,8 +90,6 @@ show_paths( ulong lid, int only_first )
        else
            printf( "%02x", validity );
        putchar(' ');
-      #endif
-
 
        p = get_user_id( keyid, &n );
        tty_print_string( p, n ),
@@ -230,7 +228,6 @@ _("Could not find a valid trust path to the key.  Let's see whether we\n"
     }
 
     lid = pk->local_id;
-  #if 0  /* FIXME: enable this when trustdb stuff works again */
     while( enum_cert_paths( &context, &lid, &otrust, &validity ) != -1 ) {
        if( lid == pk->local_id )
            continue;
@@ -242,6 +239,7 @@ _("Could not find a valid trust path to the key.  Let's see whether we\n"
             * those values from then on
             */
            otrust = get_ownertrust( lid );
+           /* fixme: and the validity? */
        }
        if( otrust == TRUST_UNDEFINED ) {
            any_undefined=1;
@@ -257,7 +255,6 @@ _("Could not find a valid trust path to the key.  Let's see whether we\n"
        }
     }
     enum_cert_paths( &context, NULL, NULL, NULL ); /* release context */
-  #endif
 
     if( !any )
        tty_printf(_("No path leading to one of our keys found.\n\n") );
@@ -298,12 +295,14 @@ do_we_trust( PKT_public_key *pk, int trustlevel )
                                                      g10_errstr(rc) );
            return 0; /* no */
        }
-       rc = check_trust( pk, &trustlevel );
+       rc = check_trust( pk, &trustlevel, NULL );
        if( rc )
            log_fatal("trust check after insert failed: %s\n",
                                                      g10_errstr(rc) );
-       if( trustlevel == TRUST_UNKNOWN || trustlevel == TRUST_EXPIRED )
-           BUG();
+       if( trustlevel == TRUST_UNKNOWN || trustlevel == TRUST_EXPIRED ) {
+           log_debug("do_we_trust: oops at %d\n", __LINE__ );
+           return 0;
+       }
        return do_we_trust( pk, trustlevel );
 
       case TRUST_EXPIRED:
@@ -320,7 +319,7 @@ do_we_trust( PKT_public_key *pk, int trustlevel )
 
            rc = add_ownertrust( pk, &quit );
            if( !rc && !quit ) {
-               rc = check_trust( pk, &trustlevel );
+               rc = check_trust( pk, &trustlevel, NULL );
                if( rc )
                    log_fatal("trust check after add_ownertrust failed: %s\n",
                                                              g10_errstr(rc) );
@@ -431,7 +430,7 @@ check_signatures_trust( PKT_signature *sig )
     }
 
   retry:
-    rc = check_trust( pk, &trustlevel );
+    rc = check_trust( pk, &trustlevel, NULL );
     if( rc ) {
        log_error("check trust failed: %s\n", g10_errstr(rc));
        goto leave;
@@ -452,7 +451,7 @@ check_signatures_trust( PKT_signature *sig )
                                                      g10_errstr(rc) );
            goto leave;
        }
-       rc = check_trust( pk, &trustlevel );
+       rc = check_trust( pk, &trustlevel, NULL );
        if( rc )
            log_fatal("trust check after insert failed: %s\n",
                                                      g10_errstr(rc) );
@@ -592,7 +591,7 @@ build_pk_list( STRLIST remusr, PK_LIST *ret_pk_list, unsigned use )
            else if( !(rc=check_pubkey_algo2(pk->pubkey_algo, use)) ) {
                int trustlevel;
 
-               rc = check_trust( pk, &trustlevel );
+               rc = check_trust( pk, &trustlevel, NULL );
                if( rc ) {
                    log_error("error checking pk of `%s': %s\n",
                                                      answer, g10_errstr(rc) );
@@ -631,7 +630,7 @@ build_pk_list( STRLIST remusr, PK_LIST *ret_pk_list, unsigned use )
            else if( !(rc=check_pubkey_algo2(pk->pubkey_algo, use )) ) {
                int trustlevel;
 
-               rc = check_trust( pk, &trustlevel );
+               rc = check_trust( pk, &trustlevel, NULL );
                if( rc ) {
                    free_public_key( pk ); pk = NULL;
                    log_error(_("%s: error checking key: %s\n"),
@@ -712,7 +711,7 @@ select_algo_from_prefs( PK_LIST pk_list, int preftype )
 
        memset( mask, 0, 8 * sizeof *mask );
        if( !pkr->pk->local_id ) { /* try to set the local id */
-           query_trust_info( pkr->pk );
+           query_trust_info( pkr->pk, NULL );
            if( !pkr->pk->local_id ) {
                log_debug("select_algo_from_prefs: can't get LID\n");
                continue;
index cab99b6..661f1da 100644 (file)
@@ -173,7 +173,7 @@ check_secret_key( PKT_secret_key *sk, int n )
 
     for(i=0; i < n && rc == G10ERR_BAD_PASS; i++ ) {
        if( i )
-           log_error(_("Invalid passphrase; please try again ...\n"));
+           log_info(_("Invalid passphrase; please try again ...\n"));
        rc = do_check( sk );
        if( have_static_passphrase() )
            break;
index 2de2f78..885a5b5 100644 (file)
@@ -76,7 +76,7 @@ signature_check( PKT_signature *sig, MD_HANDLE digest )
        MD_HANDLE md;
        u32 a = sig->timestamp;
        int i, nsig = pubkey_get_nsig( sig->pubkey_algo );
-       byte *p;
+       byte *p, *buffer;
 
        md = md_open( DIGEST_ALGO_RMD160, 0);
        md_putc( digest, sig->pubkey_algo );
@@ -96,7 +96,10 @@ signature_check( PKT_signature *sig, MD_HANDLE digest )
        }
        md_final( md );
        p = make_radix64_string( md_read( md, 0 ), 20 );
-       write_status_text( STATUS_SIG_ID, p );
+       buffer = m_alloc( strlen(p) + 40 );
+       sprintf( buffer, "%s %s", p, strtimestamp( sig->timestamp ) );
+       write_status_text( STATUS_SIG_ID, buffer );
+       m_free(buffer);
        m_free(p);
        md_close(md);
     }
index c409765..2a37641 100644 (file)
@@ -1,5 +1,5 @@
 /* trustdb.c
- *     Copyright (C) 1998 Free Software Foundation, Inc.
+ *     Copyright (C) 1998, 1999 Free Software Foundation, Inc.
  *
  * This file is part of GnuPG.
  *
@@ -66,25 +66,8 @@ struct local_id_table {
 typedef struct local_id_table *LOCAL_ID_TABLE;
 
 
-typedef struct trust_info TRUST_INFO;
-struct trust_info {
-    ulong    lid;
-    byte     otrust; /* ownertrust (assigned trust) */
-    byte     trust;  /* calculated trust (validity) */
-};
-
-typedef struct trust_seg_list *TRUST_SEG_LIST;
-struct trust_seg_list {
-    TRUST_SEG_LIST next;
-    int  pathlen;
-    TRUST_INFO path[1];
-};
-
-
 struct enum_cert_paths_ctx {
    int init;
-   TRUST_SEG_LIST tsl_head;
-   TRUST_SEG_LIST tsl;
    int idx;
 };
 
@@ -97,6 +80,35 @@ struct recno_list_struct {
 typedef struct recno_list_struct *RECNO_LIST;
 
 
+
+typedef struct trust_node *TN;
+struct trust_node {
+    TN   back;  /* parent */
+    TN   list;  /* list of other node (should all be of the same type)*/
+    TN   next;  /* used to build the list */
+    int   is_uid; /* set if this is an uid node */
+    ulong lid;  /* key or uid recordnumber */
+    union {
+       struct {
+           int ownertrust;
+           int validity;
+           /* helper */
+           int buckstop;
+       } k;
+       struct {
+           int marginal_count;
+           int fully_count;
+           int validity;
+       } u;
+    } n;
+};
+
+
+static TN used_tns;
+static int alloced_tns;
+static int max_alloced_tns;
+
+
 static int walk_sigrecs( SIGREC_CONTEXT *c );
 
 static LOCAL_ID_TABLE new_lid_table(void);
@@ -105,11 +117,11 @@ static int ins_lid_table_item( LOCAL_ID_TABLE tbl, ulong lid, unsigned flag );
 static int qry_lid_table_flag( LOCAL_ID_TABLE tbl, ulong lid, unsigned *flag );
 
 
+static int propagate_validity( TN node );
 
 static void print_user_id( const char *text, u32 *keyid );
-static void sort_tsl_list( TRUST_SEG_LIST *trust_seg_list );
 static int list_sigs( ulong pubkey_id );
-static int do_check( TRUSTREC *drec, unsigned *trustlevel );
+static int do_check( TRUSTREC *drec, unsigned *trustlevel, const char *nhash);
 static int get_dir_record( PKT_public_key *pk, TRUSTREC *rec );
 
 static void upd_pref_record( TRUSTREC *urec, u32 *keyid, PKT_signature *sig );
@@ -450,7 +462,7 @@ walk_sigrecs( SIGREC_CONTEXT *c )
  ************* Trust  stuff  ******************
  ***********************************************/
 
-static int
+int
 trust_letter( unsigned value )
 {
     switch( value ) {
@@ -639,35 +651,6 @@ print_user_id( const char *text, u32 *keyid )
     m_free(p);
 }
 
-#if 0
-static int
-print_keyid( FILE *fp, ulong lid )
-{
-    u32 ki[2];
-    if( keyid_from_lid( lid, ki ) )
-       return fprintf(fp, "????????.%lu", lid );
-    else
-       return fprintf(fp, "%08lX.%lu", (ulong)ki[1], lid );
-}
-
-static int
-print_trust( FILE *fp, unsigned trust )
-{
-    int c;
-    switch( trust ) {
-      case TRUST_UNKNOWN:   c = 'o'; break;
-      case TRUST_EXPIRED:   c = 'e'; break;
-      case TRUST_UNDEFINED: c = 'q'; break;
-      case TRUST_NEVER:     c = 'n'; break;
-      case TRUST_MARGINAL:  c = 'm'; break;
-      case TRUST_FULLY:     c = 'f'; break;
-      case TRUST_ULTIMATE:  c = 'u'; break;
-      default: fprintf(fp, "%02x", trust ); return 2;
-    }
-    putc(c, fp);
-    return 1;
-}
-#endif
 
 static int
 print_sigflags( FILE *fp, unsigned flags )
@@ -698,7 +681,7 @@ do_list_sigs( ulong root, ulong pk_lid, int depth,
     sx.lid = pk_lid;
     for(;;) {
        rc = walk_sigrecs( &sx ); /* should we replace it and use */
-       if( rc )                  /* use a loop like in collect_paths ??*/
+       if( rc )
            break;
        rc = keyid_from_lid( sx.sig_lid, keyid );
        if( rc ) {
@@ -839,199 +822,45 @@ list_records( ulong lid )
 
 
 
-
-/****************
- * stack is an array of (max_path+1) elements. If trust_seg_head is not
- * NULL it is a pointer to a variable which will receive a linked list
- * of trust paths - The caller has to free the memory.
- */
-static int
-collect_paths( int depth, int max_depth, int all, TRUSTREC *drec,
-              TRUST_INFO *stack, TRUST_SEG_LIST *trust_seg_head )
+static TN
+new_tn(void)
 {
-    ulong rn, uidrn;
-    int marginal=0;
-    int fully=0;
-    /*LOCAL_ID_TABLE sigs_seen = NULL;*/
-
-    if( depth >= max_depth )  /* max cert_depth reached */
-       return TRUST_UNDEFINED;
-
-    /* loop over all user-ids */
-    /*if( !all ) sigs_seen = new_lid_table();*/
-    for( rn = drec->r.dir.uidlist; rn; rn = uidrn ) {
-       TRUSTREC rec;  /* used for uids and sigs */
-       ulong sigrn;
-
-       read_record( rn, &rec, RECTYPE_UID );
-       uidrn = rec.r.uid.next;
-       if( !(rec.r.uid.uidflags & UIDF_CHECKED) )
-           continue; /* user id has not been checked */
-       if( !(rec.r.uid.uidflags & UIDF_VALID) )
-           continue; /* user id is not valid */
-       if( (rec.r.uid.uidflags & UIDF_REVOKED) )
-           continue; /* user id has been revoked */
-
-       stack[depth].lid = drec->r.dir.lid;
-       stack[depth].otrust = drec->r.dir.ownertrust;
-       stack[depth].trust = 0;
-       {   int i;
-
-           for(i=0; i < depth; i++ )
-               if( stack[i].lid == drec->r.dir.lid )
-                   return TRUST_UNDEFINED; /* closed (we already visited this lid) */
-       }
-       if( !qry_lid_table_flag( ultikey_table, drec->r.dir.lid, NULL ) ) {
-           /* we are at the end of a path */
-           TRUST_SEG_LIST tsl;
-           int i;
+    TN t;
 
-           stack[depth].trust = TRUST_ULTIMATE;
-           stack[depth].otrust = TRUST_ULTIMATE;
-           if( trust_seg_head ) {
-               /* we can now put copy our current stack to the trust_seg_list */
-               tsl = m_alloc( sizeof *tsl + (depth+1)*sizeof( TRUST_INFO ) );
-               for(i=0; i <= depth; i++ )
-                   tsl->path[i] = stack[i];
-               tsl->pathlen = i;
-               tsl->next = *trust_seg_head;
-               *trust_seg_head = tsl;
-           }
-           return TRUST_ULTIMATE;
-       }
-
-
-       /* loop over all signature records of this user id */
-       for( rn = rec.r.uid.siglist; rn; rn = sigrn ) {
-           int i;
-
-           read_record( rn, &rec, RECTYPE_SIG );
-           sigrn = rec.r.sig.next;
-
-           for(i=0; i < SIGS_PER_RECORD; i++ ) {
-               TRUSTREC tmp;
-               int ot, nt;
-               int unchecked = 0;
-
-               if( !rec.r.sig.sig[i].lid )
-                   continue; /* skip deleted sigs */
-               if( !(rec.r.sig.sig[i].flag & SIGF_CHECKED) ) {
-                   if( !all )
-                       continue; /* skip unchecked signatures */
-                   unchecked = 1;
-               }
-               else {
-                   if( !(rec.r.sig.sig[i].flag & SIGF_VALID) )
-                       continue; /* skip invalid signatures */
-                   if( (rec.r.sig.sig[i].flag & SIGF_EXPIRED) )
-                       continue; /* skip expired signatures */
-                   if( (rec.r.sig.sig[i].flag & SIGF_REVOKED) )
-                       continue; /* skip revoked signatures */
-               }
-
-               /* visit every signer only once (a signer may have
-                * signed more than one user ID)
-                * if( sigs_seen && ins_lid_table_item( sigs_seen,
-                *                                 rec.r.sig.sig[i].lid, 0) )
-                *   continue;  we already have this one
-                */
-               read_record( rec.r.sig.sig[i].lid, &tmp, 0 );
-               if( tmp.rectype != RECTYPE_DIR ) {
-                   if( tmp.rectype != RECTYPE_SDIR )
-                       log_info("oops: lid %lu: sig %lu has rectype %d"
-                            " - skipped\n",
-                           drec->r.dir.lid, tmp.recnum, tmp.rectype );
-                   continue;
-               }
-               ot = tmp.r.dir.ownertrust & TRUST_MASK;
-               if( ot >= TRUST_FULLY )
-                   ot = TRUST_FULLY;  /* just in case */
-               nt = collect_paths( depth+1, max_depth, all, &tmp, stack,
-                                                       trust_seg_head );
-               nt &= TRUST_MASK;
-
-               if( nt < TRUST_MARGINAL || unchecked ) {
-                   continue;
-               }
-
-               if( nt == TRUST_ULTIMATE ) {
-                   /* we have signed this key and only in this special case
-                    * we assume that this one is fully trusted */
-                   if( !all ) {
-                       /*if( sigs_seen ) release_lid_table( sigs_seen );*/
-                       return (stack[depth].trust = TRUST_FULLY);
-                   }
-               }
-
-               if( nt > ot )
-                   nt = ot;
-
-               if( nt >= TRUST_FULLY )
-                   fully++;
-               if( nt >= TRUST_MARGINAL )
-                   marginal++;
-
-               if( fully >= opt.completes_needed
-                   || marginal >= opt.marginals_needed ) {
-                   if( !all ) {
-                       /*if( sigs_seen ) release_lid_table( sigs_seen );*/
-                       return (stack[depth].trust = TRUST_FULLY);
-                   }
-               }
-           }
-       }
-    }
-    /*if( sigs_seen ) release_lid_table( sigs_seen ); */
-    if( all && ( fully >= opt.completes_needed
-                || marginal >= opt.marginals_needed ) ) {
-       return (stack[depth].trust = TRUST_FULLY );
+    if( used_tns ) {
+       t = used_tns;
+       used_tns = t->next;
+       memset( t, 0, sizeof *t );
     }
-    if( marginal ) {
-       return (stack[depth].trust = TRUST_MARGINAL);
-    }
-    return (stack[depth].trust=TRUST_UNDEFINED);
+    else
+       t = m_alloc_clear( sizeof *t );
+    if( ++alloced_tns > max_alloced_tns )
+       max_alloced_tns = alloced_tns;
+    return t;
 }
 
 
-typedef struct {
-    ulong lid;
-    ulong uid;
-    byte uid_flags;
-    byte uid_validity;
-    byte dir_flags;
-    byte ownertrust;
-} CERT_ITEM;
-
-/* structure to hold certification chains. Item[nitems-1] is the
- * ultimateley trusted key, item[0] is the key which
- * is introduced, indices [1,(nitems-2)] are all introducers.
- */
-typedef struct cert_chain *CERT_CHAIN;
-struct cert_chain {
-    CERT_CHAIN next;
-    int dups;
-    int nitems;
-    CERT_ITEM items[1];
-};
-
+static void
+release_tn( TN t )
+{
+    if( t ) {
+       t->next = used_tns;
+       used_tns = t;
+       alloced_tns--;
+    }
+}
 
 
-/****************
- * Copy all items to the set SET_HEAD in a way that the requirements
- * of a CERT_CHAIN are met.
- */
 static void
-add_cert_items_to_set( CERT_CHAIN *set_head, CERT_ITEM *items, int nitems )
+release_tn_tree( TN kr )
 {
-    CERT_CHAIN ac;
-    int i;
+    TN kr2;
 
-    ac = m_alloc_clear( sizeof *ac + (nitems-1)*sizeof(CERT_ITEM) );
-    ac->nitems = nitems;
-    for(i=0; i < nitems; i++ )
-       ac->items[i] = items[i];
-    ac->next = *set_head;
-    *set_head = ac;
+    for( ; kr; kr = kr2 ) {
+       release_tn_tree( kr->list );
+       kr2 = kr->next;
+       release_tn( kr );
+    }
 }
 
 
@@ -1041,57 +870,51 @@ add_cert_items_to_set( CERT_CHAIN *set_head, CERT_ITEM *items, int nitems )
  * should have been allocated with size max_depth, stack[0] should
  * be setup to the key we are investigating, so the minimal depth
  * we should ever see in this function is 1.
- * Returns: -1 max_depth reached
- *         0  no paths found
- *         1  ultimately trusted key found
+ * Returns: a new tree
  * certchain_set must be a valid set or point to NULL; this function
  * may modifiy it.
  */
-static int
-find_cert_chain( ulong lid, int depth, int max_depth,
-                CERT_ITEM *stack, CERT_CHAIN *cert_chain_set )
+static TN
+build_cert_tree( ulong lid, int depth, int max_depth, TN helproot )
 {
     TRUSTREC dirrec;
     TRUSTREC uidrec;
     ulong uidrno;
+    TN keynode;
 
     if( depth >= max_depth )
-       return -1;
-
-    stack[depth].lid = lid;
-    stack[depth].uid = 0;
+       return NULL;
 
+    keynode = new_tn();
+    if( !helproot )
+       helproot = keynode;
+    keynode->lid = lid;
     if( !qry_lid_table_flag( ultikey_table, lid, NULL ) ) {
        /* this is an ultimately trusted key;
         * which means that we have found the end of the chain:
-        * copy the chain to the set */
-       add_cert_items_to_set( cert_chain_set, stack, depth+1 );
-       return 1;
+        * We do this here prior to reading the dir record
+        * because we don't really need the info from that record */
+       keynode->n.k.ownertrust = TRUST_ULTIMATE;
+       keynode->n.k.buckstop   = 1;
+       return keynode;
     }
-
-
     read_record( lid, &dirrec, 0 );
     if( dirrec.rectype != RECTYPE_DIR ) {
        if( dirrec.rectype != RECTYPE_SDIR )
            log_debug("lid %lu, has rectype %d"
                      " - skipped\n", lid, dirrec.rectype );
-       return 0;
+       m_free(keynode);
+       return NULL;
     }
-    /* Performance hint: add stuff to ignore this one when the
-     *                  assigned validity of the key is bad   */
-
-    stack[depth].dir_flags = dirrec.r.dir.dirflags;
-    stack[depth].ownertrust = dirrec.r.dir.ownertrust;
+    keynode->n.k.ownertrust = dirrec.r.dir.ownertrust;
 
     /* loop over all user ids */
     for( uidrno = dirrec.r.dir.uidlist; uidrno; uidrno = uidrec.r.uid.next ) {
        TRUSTREC sigrec;
        ulong sigrno;
+       TN uidnode = NULL;
 
-       stack[depth].uid = uidrno;
        read_record( uidrno, &uidrec, RECTYPE_UID );
-       stack[depth].uid_flags = uidrec.r.uid.uidflags;
-       stack[depth].uid_validity = uidrec.r.uid.validity;
 
        if( !(uidrec.r.uid.uidflags & UIDF_CHECKED) )
            continue; /* user id has not been checked */
@@ -1102,7 +925,8 @@ find_cert_chain( ulong lid, int depth, int max_depth,
 
        /* loop over all signature records */
        for(sigrno=uidrec.r.uid.siglist; sigrno; sigrno = sigrec.r.sig.next ) {
-           int i, j;
+           int i;
+           TN tn;
 
            read_record( sigrno, &sigrec, RECTYPE_SIG );
 
@@ -1117,25 +941,48 @@ find_cert_chain( ulong lid, int depth, int max_depth,
                    continue; /* skip expired signatures */
                if( (sigrec.r.sig.sig[i].flag & SIGF_REVOKED) )
                    continue; /* skip revoked signatures */
-               for(j=0; j < depth; j++ ) {
-                   if( stack[j].lid == sigrec.r.sig.sig[i].lid )
-                       break;
+               /* check for cycles */
+               for( tn=keynode; tn && tn->lid != sigrec.r.sig.sig[i].lid;
+                                                         tn = tn->back )
+                   ;
+               if( tn )
+                   continue; /* cycle found */
+
+               tn = build_cert_tree( sigrec.r.sig.sig[i].lid,
+                                     depth+1, max_depth, helproot );
+               if( !tn )
+                   continue; /* cert chain too deep or error */
+
+               if( !uidnode ) {
+                   uidnode = new_tn();
+                   uidnode->back = keynode;
+                   uidnode->lid = uidrno;
+                   uidnode->is_uid = 1;
+                   uidnode->next = keynode->list;
+                   keynode->list = uidnode;
                }
-               if( j < depth )
-                   continue; /* avoid cycles as soon as possible */
 
-               if( find_cert_chain( sigrec.r.sig.sig[i].lid,
-                                    depth+1, max_depth,
-                                    stack, cert_chain_set ) > 0 ) {
+               tn->back = uidnode;
+               tn->next = uidnode->list;
+               uidnode->list = tn;
+             #if 0 /* optimazation - fixme: reenable this later */
+               if( tn->n.k.buckstop ) {
                    /* ultimately trusted key found:
                     * no need to check more signatures of this uid */
                    sigrec.r.sig.next = 0;
                    break;
                }
+             #endif
            }
        } /* end loop over sig recs */
     } /* end loop over user ids */
-    return 0;
+
+    if( !keynode->list ) {
+       release_tn_tree( keynode );
+       keynode = NULL;
+    }
+
+    return keynode;
 }
 
 
@@ -1147,14 +994,33 @@ find_cert_chain( ulong lid, int depth, int max_depth,
  * checking all key signatures up to a some depth.
  */
 static int
-verify_key( int max_depth, TRUSTREC *drec )
+verify_key( int max_depth, TRUSTREC *drec, const char *namehash )
 {
-    TRUST_INFO *tmppath = m_alloc_clear( (max_depth+1)* sizeof *tmppath );
-    int tr;
+    TN tree;
+    int trust;
+
+    tree = build_cert_tree( drec->r.dir.lid, 0, opt.max_cert_depth, NULL );
+    if( !tree )
+       return TRUST_UNDEFINED;
+    trust = propagate_validity( tree );
+    if( namehash ) {
+       /* find the matching user id.
+        * FIXME: the way we handle this is too inefficient */
+       TN ur;
+       TRUSTREC rec;
 
-    tr = collect_paths( 0, max_depth, 0, drec, tmppath, NULL );
-    m_free( tmppath );
-    return tr;
+       trust = 0;
+       for( ur=tree->list; ur; ur = ur->next ) {
+           read_record( ur->lid, &rec, RECTYPE_UID );
+           if( !memcmp( namehash, rec.r.uid.namehash, 20 ) ) {
+               trust = ur->n.u.validity;
+               break;
+           }
+       }
+    }
+
+    release_tn_tree( tree );
+    return trust;
 }
 
 
@@ -1165,7 +1031,7 @@ verify_key( int max_depth, TRUSTREC *drec )
  * but nothing more is known.
  */
 static int
-do_check( TRUSTREC *dr, unsigned *validity )
+do_check( TRUSTREC *dr, unsigned *validity, const char *namehash )
 {
     if( !dr->r.dir.keylist ) {
        log_error(_("Ooops, no keys\n"));
@@ -1176,15 +1042,21 @@ do_check( TRUSTREC *dr, unsigned *validity )
        return G10ERR_TRUSTDB;
     }
 
-    if( tdbio_db_matches_options()
+    if( namehash ) {
+       /* Fixme: use the cache */
+       *validity = verify_key( opt.max_cert_depth, dr, namehash );
+    }
+    else if( tdbio_db_matches_options()
        && (dr->r.dir.dirflags & DIRF_VALVALID)
        && dr->r.dir.validity )
        *validity = dr->r.dir.validity;
     else {
-       *validity = verify_key( opt.max_cert_depth, dr );
+       *validity = verify_key( opt.max_cert_depth, dr, NULL );
        if( (*validity & TRUST_MASK) >= TRUST_UNDEFINED
            && tdbio_db_matches_options() ) {
            /* update the cached validity value */
+           /* FIXME: Move this to another place so that we can
+            * update the validity of the uids too */
            dr->r.dir.validity = (*validity & TRUST_MASK);
            dr->r.dir.dirflags |= DIRF_VALVALID;
            write_record( dr );
@@ -1437,9 +1309,9 @@ import_ownertrust( const char *fname )
 
 
 
-
+#if 0
 static void
-print_path( int pathlen, TRUST_INFO *path, FILE *fp, ulong highlight )
+print_path( int pathlen, TN ME .........., FILE *fp, ulong highlight )
 {
     int rc, c, i;
     u32 keyid[2];
@@ -1475,37 +1347,89 @@ print_path( int pathlen, TRUST_INFO *path, FILE *fp, ulong highlight )
        putc('\n', fp );
     }
 }
+#endif
+
 
 
 static int
-cmp_tsl_array( const void *xa, const void *xb )
+propagate_validity( TN node )
 {
-    TRUST_SEG_LIST a = *(TRUST_SEG_LIST*)xa;
-    TRUST_SEG_LIST b = *(TRUST_SEG_LIST*)xb;
-    return a->pathlen - b->pathlen;
+    TN kr, ur;
+    int max_validity = 0;
+
+    assert( !node->is_uid );
+    if( node->n.k.ownertrust == TRUST_ULTIMATE ) {
+       /* this is one of our keys */
+       assert( !node->list ); /* This should be a leaf */
+       return TRUST_ULTIMATE;
+    }
+
+    /* loop over all user ids */
+    for( ur=node->list; ur; ur = ur->next ) {
+       assert( ur->is_uid );
+       /* loop over all signators */
+       for(kr=ur->list; kr; kr = kr->next ) {
+           int val = propagate_validity( kr );
+
+           if( val == TRUST_ULTIMATE ) {
+               ur->n.u.fully_count = opt.completes_needed;
+           }
+           else if( val == TRUST_FULLY ) {
+               if( kr->n.k.ownertrust == TRUST_FULLY )
+                   ur->n.u.fully_count++;
+               else if( kr->n.k.ownertrust == TRUST_MARGINAL )
+                   ur->n.u.marginal_count++;
+           }
+       }
+       /* fixme: We can move this test into the loop to stop as soon as
+        * we have a level of FULLY and return from this function
+        * We dont do this now to get better debug output */
+       if( ur->n.u.fully_count >= opt.completes_needed
+           || ur->n.u.marginal_count >= opt.marginals_needed )
+           ur->n.u.validity = TRUST_FULLY;
+       else if( ur->n.u.fully_count || ur->n.u.marginal_count )
+           ur->n.u.validity = TRUST_MARGINAL;
+
+       if( ur->n.u.validity >= max_validity )
+           max_validity = ur->n.u.validity;
+    }
+
+    node->n.k.validity = max_validity;
+    return max_validity;
 }
 
 
 static void
-sort_tsl_list( TRUST_SEG_LIST *trust_seg_list )
+print_default_uid( ulong lid )
 {
-    TRUST_SEG_LIST *array, *tail, tsl;
-    size_t n;
+    u32 keyid[2];
+
+    if( !keyid_from_lid( lid, keyid ) )
+       print_user_id( "", keyid );
+}
+
 
-    for(n=0, tsl = *trust_seg_list; tsl; tsl = tsl->next )
-       n++;
-    array = m_alloc( (n+1) * sizeof *array );
-    for(n=0, tsl = *trust_seg_list; tsl; tsl = tsl->next )
-       array[n++] = tsl;
-    array[n] = NULL;
-    qsort( array, n, sizeof *array, cmp_tsl_array );
-    *trust_seg_list = NULL;
-    tail = trust_seg_list;
-    for(n=0; (tsl=array[n]); n++ ) {
-       *tail = tsl;
-       tail = &tsl->next;
-    }
-    m_free( array );
+static void
+dump_tn_tree( int indent, TN tree )
+{
+    TN kr, ur;
+
+    for( kr=tree; kr; kr = kr->next ) {
+       printf("%*s", indent*4, "" );
+       printf("K%lu(ot=%d,val=%d)  ", kr->lid,
+                                        kr->n.k.ownertrust,
+                                        kr->n.k.validity  );
+       print_default_uid( kr->lid );
+       for( ur=kr->list; ur; ur = ur->next ) {
+           printf("%*s  ", indent*4, "" );
+           printf("U%lu(mc=%d,fc=%d,val=%d)\n", ur->lid,
+                                                ur->n.u.marginal_count,
+                                                ur->n.u.fully_count,
+                                                ur->n.u.validity
+                                           );
+           dump_tn_tree( indent+1, ur->list );
+       }
+    }
 }
 
 
@@ -1515,10 +1439,7 @@ list_trust_path( const char *username )
     int rc;
     ulong lid;
     TRUSTREC rec;
-  #if 0
-    TRUST_INFO *tmppath;
-    TRUST_SEG_LIST trust_seg_list, tsl, tsl2;
-  #endif
+    TN tree;
     PKT_public_key *pk = m_alloc_clear( sizeof *pk );
 
     INIT_TRUSTDB();
@@ -1540,49 +1461,12 @@ list_trust_path( const char *username )
     lid = pk->local_id;
     free_public_key( pk );
 
-  #if 0
-    /* collect the paths */
-    tmppath = m_alloc_clear( (opt.max_cert_depth+1)* sizeof *tmppath );
-    trust_seg_list = NULL;
-    collect_paths( 0, opt.max_cert_depth, 1, &rec, tmppath, &trust_seg_list );
-    m_free( tmppath );
-    sort_tsl_list( &trust_seg_list );
-    /* and now print them */
-    for(tsl = trust_seg_list; tsl; tsl = tsl->next ) {
-       print_path( tsl->pathlen, tsl->path, stdout, 0 );
-       if( tsl->next )
-           putchar('\n');
-    }
-
-    /* release the list */
-    for(tsl = trust_seg_list; tsl; tsl = tsl2 ) {
-       tsl2 = tsl->next;
-       m_free( tsl );
-    }
-    trust_seg_list = NULL;
-  #else /* test code */
-    {
-       CERT_ITEM *stack;
-       CERT_CHAIN chains, r;
-       int i;
-
-       chains = NULL;
-       stack = m_alloc_clear( (opt.max_cert_depth+1)* sizeof *stack );
-       find_cert_chain( lid, 0, opt.max_cert_depth, stack, &chains);
-       m_free( stack );
-       /* dump chains */
-       printf("lid/uid(ownertrust,validity):\n");
-       for(r=chains; r ; r = r->next ) {
-           printf("chain:" );
-           for(i=0; i < r->nitems; i++ )
-               printf("  %lu/%lu(%d,%d)", r->items[i].lid, r->items[i].uid,
-                       r->items[i].ownertrust,
-                       (r->items[i].uid_flags & UIDF_VALVALID )?
-                                              r->items[i].uid_validity : 0 );
-           putchar('\n');
-       }
-    }
-  #endif
+    tree = build_cert_tree( lid, 0, opt.max_cert_depth, NULL );
+    if( tree )
+       propagate_validity( tree );
+    dump_tn_tree( 0, tree );
+    printf("(alloced tns=%d  max=%d)\n", alloced_tns, max_alloced_tns );
+    release_tn_tree( tree );
 }
 
 
@@ -1789,7 +1673,7 @@ update_trustdb( )
  *          is not necessary to check this if we use a local pubring. Hmmmm.
  */
 int
-check_trust( PKT_public_key *pk, unsigned *r_trustlevel )
+check_trust( PKT_public_key *pk, unsigned *r_trustlevel, const byte *namehash )
 {
     TRUSTREC rec;
     unsigned trustlevel = TRUST_UNKNOWN;
@@ -1839,7 +1723,7 @@ check_trust( PKT_public_key *pk, unsigned *r_trustlevel )
         trustlevel = TRUST_EXPIRED;
     }
     else {
-       rc = do_check( &rec, &trustlevel );
+       rc = do_check( &rec, &trustlevel, namehash );
        if( rc ) {
            log_error(_("key %08lX.%lu: trust check failed: %s\n"),
                            (ulong)keyid[1], pk->local_id, g10_errstr(rc));
@@ -1859,13 +1743,13 @@ check_trust( PKT_public_key *pk, unsigned *r_trustlevel )
 
 
 int
-query_trust_info( PKT_public_key *pk )
+query_trust_info( PKT_public_key *pk, const byte *namehash )
 {
     unsigned trustlevel;
     int c;
 
     INIT_TRUSTDB();
-    if( check_trust( pk, &trustlevel ) )
+    if( check_trust( pk, &trustlevel, namehash ) )
        return '?';
     if( trustlevel & TRUST_FLAG_REVOKED )
        return 'r';
@@ -1899,13 +1783,15 @@ int
 enum_cert_paths( void **context, ulong *lid,
                 unsigned *ownertrust, unsigned *validity )
 {
+    return -1;
+  #if 0
     struct enum_cert_paths_ctx *ctx;
-    TRUST_SEG_LIST tsl;
+    fixme: .....   tsl;
 
     INIT_TRUSTDB();
     if( !lid ) {  /* release the context */
        if( *context ) {
-           TRUST_SEG_LIST tsl2;
+           FIXME: ........tsl2;
 
            ctx = *context;
            for(tsl = ctx->tsl_head; tsl; tsl = tsl2 ) {
@@ -1918,7 +1804,7 @@ enum_cert_paths( void **context, ulong *lid,
     }
 
     if( !*context ) {
-       TRUST_INFO *tmppath;
+       FIXME .... *tmppath;
        TRUSTREC rec;
 
        if( !*lid )
@@ -1927,12 +1813,14 @@ enum_cert_paths( void **context, ulong *lid,
        ctx = m_alloc_clear( sizeof *ctx );
        *context = ctx;
        /* collect the paths */
+      #if 0
        read_record( *lid, &rec, RECTYPE_DIR );
        tmppath = m_alloc_clear( (opt.max_cert_depth+1)* sizeof *tmppath );
        tsl = NULL;
        collect_paths( 0, opt.max_cert_depth, 1, &rec, tmppath, &tsl );
        m_free( tmppath );
        sort_tsl_list( &tsl );
+      #endif
        /* setup the context */
        ctx->tsl_head = tsl;
        ctx->tsl = ctx->tsl_head;
@@ -1956,6 +1844,7 @@ enum_cert_paths( void **context, ulong *lid,
     *lid = tsl->path[ctx->idx].lid;
     ctx->idx++;
     return ctx->idx-1;
+  #endif
 }
 
 
@@ -1966,8 +1855,10 @@ void
 enum_cert_paths_print( void **context, FILE *fp,
                                       int refresh, ulong selected_lid )
 {
+    return;
+  #if 0
     struct enum_cert_paths_ctx *ctx;
-    TRUST_SEG_LIST tsl;
+    FIXME......... tsl;
 
     if( !*context )
        return;
@@ -2001,6 +1892,7 @@ enum_cert_paths_print( void **context, FILE *fp,
     }
 
     print_path( tsl->pathlen, tsl->path, fp, selected_lid );
+  #endif
 }
 
 
@@ -2035,7 +1927,7 @@ get_ownertrust_info( ulong lid )
  * Return an allocated buffer with the preference values for
  * the key with LID and the userid which is identified by the
  * HAMEHASH or the firstone if namehash is NULL.  ret_n receives
- * the length of the allcoated buffer. Structure of the buffer is
+ * the length of the allocated buffer. Structure of the buffer is
  * a repeated sequences of 2 bytes; where the first byte describes the
  * type of the preference and the second one the value.  The constants
  * PREFTYPE_xxxx should be used to reference a type.
@@ -2616,6 +2508,10 @@ upd_uid_record( KBNODE keyblock, KBNODE uidnode, u32 *keyid,
     ulong recno, newrecno;
     int rc;
 
+    if( DBG_TRUST )
+       log_debug("upd_uid_record for %08lX/%02X%02X\n",
+                              (ulong)keyid[1], uidhash[18], uidhash[19]);
+
     /* see whether we already have an uid record */
     rmd160_hash_buffer( uidhash, uid->name, uid->len );
     for( recno=drec->r.dir.uidlist; recno; recno = urec.r.uid.next ) {
@@ -2785,6 +2681,11 @@ upd_pref_record( TRUSTREC *urec, u32 *keyid, PKT_signature *sig )
     byte prefs_rec[200];
     int n_prefs_rec = 0;
 
+    if( DBG_TRUST )
+       log_debug("upd_pref_record for %08lX.%lu/%02X%02X\n",
+                         (ulong)keyid[1], lid, uidhash[18], uidhash[19] );
+
+
     /* check for changed preferences */
     for(k=0; ptable[k].subpkttype; k++ ) {
        s = parse_sig_subpkt2( sig, ptable[k].subpkttype, &n );
@@ -2884,8 +2785,8 @@ upd_cert_record( KBNODE keyblock, KBNODE signode, u32 *keyid,
      * later.  The problem with this is that we must somewhere store
      * the information about this signature (we need a record id).
      * We do this by using the record type shadow dir, which will
-     * be converted to a dir record as soon as a new public key is
-     * inserted into the trustdb.
+     * be converted to a dir record as soon as the missing public key
+     * gets inserted into the trustdb.
      */
     ulong lid = drec->recnum;
     PKT_signature *sig = signode->pkt->pkt.signature;
@@ -2901,6 +2802,12 @@ upd_cert_record( KBNODE keyblock, KBNODE signode, u32 *keyid,
     int found_delrec = 0;
     int rc;
 
+
+    if( DBG_TRUST )
+       log_debug("upd_cert_record for %08lX.?/%02X%02X/%08lX\n",
+                             (ulong)keyid[1], uidhash[18],
+                              uidhash[19], (ulong)sig->keyid[1] );
+
     delrec.recnum = 0;
 
     /* get the LID of the pubkey of the signature under verification */
@@ -2976,13 +2883,12 @@ upd_cert_record( KBNODE keyblock, KBNODE signode, u32 *keyid,
                        rec.r.sig.sig[i].flag |= SIGF_REVOKED;
                }
                else if( rc == G10ERR_NO_PUBKEY ) {
-                 #if 0 /* fixme: For some reason this really happens? */
+                   /* fixme: For some reason this really happens? */
                    if( (rec.r.sig.sig[i].flag & SIGF_CHECKED) )
                        log_info("sig %08lX.%lu/%02X%02X/%08lX: %s\n",
                                  (ulong)keyid[1], lid, uidhash[18],
                                 uidhash[19], (ulong)sig->keyid[1],
                                 _("Hmmm, public key lost?") );
-                 #endif
                    rec.r.sig.sig[i].flag = SIGF_NOPUBKEY;
                    if( revoked )
                        rec.r.sig.sig[i].flag |= SIGF_REVOKED;
@@ -3061,7 +2967,7 @@ upd_cert_record( KBNODE keyblock, KBNODE signode, u32 *keyid,
            newflag |= SIGF_REVOKED;
     }
     else if( rc == G10ERR_NO_PUBKEY ) {
-       if( opt.verbose > 1 )
+       if( opt.verbose > 1 || DBG_TRUST )
            log_info("sig %08lX.%lu/%02X%02X/%08lX: %s\n",
                     (ulong)keyid[1], lid, uidhash[18],
                      uidhash[19], (ulong)sig->keyid[1], g10_errstr(rc) );
@@ -3266,9 +3172,6 @@ insert_trust_record( PKT_public_key *pk )
 
     INIT_TRUSTDB();
 
-    if( pk->local_id )
-       log_bug("pk->local_id=%lu\n", pk->local_id );
-
     fingerprint_from_pk( pk, fingerprint, &fingerlen );
 
     /* fixme: assert that we do not have this record.
@@ -3289,6 +3192,13 @@ insert_trust_record( PKT_public_key *pk )
        goto leave;
     }
 
+    if( pk->local_id ) {
+       log_debug("insert_trust_reord with pk->local_id=%lu\n", pk->local_id );
+       rc = update_trust_record( keyblock, 1, NULL );
+       release_kbnode( keyblock );
+       return rc;
+    }
+
     /* check that we used the primary key (we are little bit paranoid) */
     {  PKT_public_key *a_pk;
        u32 akid[2], bkid[2];
index 3dd6b62..303ffc7 100644 (file)
@@ -49,8 +49,8 @@ void register_trusted_key( const char *string );
 void check_trustdb( const char *username );
 void update_trustdb( void );
 int init_trustdb( int level, const char *dbname );
-int check_trust( PKT_public_key *pk, unsigned *r_trustlevel );
-int query_trust_info( PKT_public_key *pk );
+int check_trust( PKT_public_key *pk, unsigned *r_trustlevel, const byte* nh );
+int query_trust_info( PKT_public_key *pk, const byte *nh );
 int enum_cert_paths( void **context, ulong *lid,
                     unsigned *ownertrust, unsigned *validity );
 void enum_cert_paths_print( void **context, FILE *fp,
index 78bc0dd..71fedb1 100644 (file)
@@ -1,3 +1,8 @@
+Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * config.links: Take advantage of the with_symbol_underscore macro.
+       Add support for freebsd 4.
+
 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * mips3/mpih-sub1.S: Removed left over junk in last line. (Should I
index 63255a1..4caf2b8 100644 (file)
@@ -12,12 +12,12 @@ echo '/* created by config.links - do not edit */' >./mpi/asm-syntax.h
 
 if test "$try_asm_modules" = "yes" ; then
 case "${target}" in
-    i[34]86*-*-freebsd*-elf | i[34]86*-*-freebsd3*)
+    i[34]86*-*-freebsd*-elf | i[34]86*-*-freebsd[34]*)
        echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
        cat  $srcdir/mpi/i386/syntax.h     >>./mpi/asm-syntax.h
        path="i386"
        ;;
-    i[56]86*-*-freebsd*-elf | i[56]86*-*-freebsd3*)
+    i[56]86*-*-freebsd*-elf | i[56]86*-*-freebsd[34]*)
        echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
        cat  $srcdir/mpi/i386/syntax.h     >>./mpi/asm-syntax.h
        path="i586 i386"
@@ -168,22 +168,9 @@ else
 fi
 
 
-case "${target}" in
-    *-*-linuxaout* | *-*-linuxoldld* | *-*-linux-gnuoldld*)
-       needs_underscore="y"
-       ;;
-    *-*-linux* | *-sysv* | *-solaris* | *-gnu* | *-freebsd*-elf)
-       needs_underscore="n"
-       ;;
-    *)
-       needs_underscore="y"
-       ;;
-esac
-
-
 # Make sysdep.h
 echo '/* created by config.links - do not edit */' >./mpi/sysdep.h
-if test "$needs_underscore" = "y" ; then
+if test x$ac_cv_sys_symbol_underscore = xyes; then
     cat <<EOF >>./mpi/sysdep.h
 #if __STDC__
 #define C_SYMBOL_NAME(name) _##name
index ab0d7ad..a916035 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -4,7 +4,7 @@
 #
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1999-02-19 15:31+0100\n"
+"POT-Creation-Date: 1999-03-08 19:50+0100\n"
 "PO-Revision-Date: 1999-02-21 13:34+0100\n"
 "Last-Translator: Walter Koch <walterk@mail.dip.de>\n"
 "Language-Team: German <de@li.org>\n"
@@ -21,20 +21,21 @@ msgstr ""
 "g10/mainproc.c g10/passphrase.c g10/plaintext.c g10/pref.c g10/seckey-cert.c "
 "g10/sig-check.c g10/sign.c g10/trustdb.c g10/verify.c\n"
 
-#: util/secmem.c:77
+#: util/secmem.c:76
 msgid "Warning: using insecure memory!\n"
 msgstr ""
 "Warnung: Sensible Daten könnten auf Platte ausgelagert werden.\n"
 "  Um dies zu vermeiden, kann das Programm suid(root) installiert werden.\n"
 "  Bitte wenden Sie sich hierzu an den Systemadministrator.\n"
 
-#: util/secmem.c:250
+#: util/secmem.c:249
 msgid "operation is not possible without initialized secure memory\n"
 msgstr "Vorgang ist ohne sicheren Hauptspeichern nicht möglich\n"
 
-#: util/secmem.c:251
+#: util/secmem.c:250
 msgid "(you may have used the wrong program for this task)\n"
-msgstr "(möglicherweise haben Sie das falsche Programm für diese Aufgabe benutzt)\n"
+msgstr ""
+"(möglicherweise haben Sie das falsche Programm für diese Aufgabe benutzt)\n"
 
 #: util/miscutil.c:143
 msgid "yes"
@@ -261,7 +262,7 @@ msgstr ""
 "BENUTZEN SIE DIE DURCH DIESES PROGRAMM ERZEUGTEN DATEN NICHT!\n"
 "\n"
 
-#: cipher/rndlinux.c:118
+#: cipher/rndlinux.c:114
 #, c-format
 msgid ""
 "\n"
@@ -447,7 +448,10 @@ msgstr "Etwas weniger Infos"
 msgid "force v3 signatures"
 msgstr "v3 Signaturen erzwingen"
 
-#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:235
+msgid "do not make any changes"
+msgstr "Keine wirklichen Änderungen durchführen"
+
 #: g10/g10.c:236
 msgid "batch mode: never ask"
 msgstr "Stapelmodus: Keine Abfragen"
@@ -633,122 +637,122 @@ msgstr "Optionendatei '%s': %s\n"
 msgid "reading options from `%s'\n"
 msgstr "Optionen werden aus '%s' gelesen\n"
 
-#: g10/g10.c:796
+#: g10/g10.c:797
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s ist kein gültiger Zeichensatz.\n"
 
-#: g10/g10.c:836 g10/g10.c:848
+#: g10/g10.c:837 g10/g10.c:849
 msgid "selected cipher algorithm is invalid\n"
 msgstr "Das ausgewählte Verschlüsslungsverfahren ist ungültig\n"
 
-#: g10/g10.c:842 g10/g10.c:854
+#: g10/g10.c:843 g10/g10.c:855
 msgid "selected digest algorithm is invalid\n"
 msgstr "Das ausgewählte Hashverfahren ist ungültig\n"
 
-#: g10/g10.c:857
+#: g10/g10.c:858
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "Das Komprimierverfahren muß im Bereich %d bis %d liegen\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:860
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed müssen größer als 0 sein\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:862
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed müssen größer als 1 sein\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:864
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "max-cert-depth muß im Bereich 1 bis 255 liegen\n"
 
-#: g10/g10.c:866
+#: g10/g10.c:867
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "Hinweis: Vom \"simple S2K\"-Modus (0) ist strikt abzuraten\n"
 
-#: g10/g10.c:870
+#: g10/g10.c:871
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "ungültiger \"simple S2K\"-Modus; Wert muß 0, 1 oder 3 sein\n"
 
-#: g10/g10.c:947
+#: g10/g10.c:948
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "Die Trust-DB kann nicht initialisiert werden: %s\n"
 
-#: g10/g10.c:953
+#: g10/g10.c:954
 msgid "--store [filename]"
 msgstr "--store [Dateiname]"
 
-#: g10/g10.c:961
+#: g10/g10.c:962
 msgid "--symmetric [filename]"
 msgstr "--symmetric [Dateiname]"
 
-#: g10/g10.c:969
+#: g10/g10.c:970
 msgid "--encrypt [filename]"
 msgstr "--encrypt [Dateiname]"
 
-#: g10/g10.c:982
+#: g10/g10.c:983
 msgid "--sign [filename]"
 msgstr "--sign [Dateiname]"
 
-#: g10/g10.c:995
+#: g10/g10.c:996
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [Dateiname]"
 
-#: g10/g10.c:1009
+#: g10/g10.c:1010
 msgid "--clearsign [filename]"
 msgstr "--clearsign [Dateiname]"
 
-#: g10/g10.c:1021
+#: g10/g10.c:1022
 msgid "--decrypt [filename]"
 msgstr "--decrypt [Dateiname]"
 
-#: g10/g10.c:1030
+#: g10/g10.c:1031
 msgid "--edit-key username [commands]"
 msgstr "--edit-key Username [Befehle]"
 
-#: g10/g10.c:1046
+#: g10/g10.c:1047
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key Username"
 
-#: g10/g10.c:1049
+#: g10/g10.c:1050
 msgid "--delete-key username"
 msgstr "--delete-key Benutzername"
 
-#: g10/encode.c:216 g10/g10.c:1072 g10/sign.c:311
+#: g10/encode.c:222 g10/g10.c:1073 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "'%s' kann nicht geöffnet werden: %s\n"
 
-#: g10/g10.c:1083
+#: g10/g10.c:1084
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [Benutzername] [Keyring]"
 
-#: g10/g10.c:1144
+#: g10/g10.c:1145
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "Entfernen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1152
+#: g10/g10.c:1153
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "Anbringen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1218
+#: g10/g10.c:1219
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "Ungültiges Hashverfahren '%s'\n"
 
-#: g10/g10.c:1297
+#: g10/g10.c:1298
 msgid "[filename]"
 msgstr "[Dateiname]"
 
-#: g10/g10.c:1301
+#: g10/g10.c:1302
 msgid "Go ahead and type your message ...\n"
 msgstr "Auf geht's - Botschaft eintippen ...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1304 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1305 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "'%s' kann nicht geöffnet werden\n"
@@ -826,7 +830,7 @@ msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
 
-#: g10/pkclist.c:138
+#: g10/pkclist.c:136
 #, c-format
 msgid ""
 "No trust value assigned to %lu:\n"
@@ -835,7 +839,7 @@ msgstr ""
 "Es ist kein \"Owner trust\" für %lu definiert:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:148
+#: g10/pkclist.c:146
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -858,29 +862,29 @@ msgstr ""
 " 4 = Ich vertraue ihm vollständig\n"
 " s = Bitte weitere Information anzeigen\n"
 
-#: g10/pkclist.c:157
+#: g10/pkclist.c:155
 msgid " m = back to the main menu\n"
 msgstr " m = Zurück zum Menü\n"
 
-#: g10/pkclist.c:159
+#: g10/pkclist.c:157
 msgid " q = quit\n"
 msgstr ""
 
 # valid user replies (not including 1..4)
 #. a string with valid answers
-#: g10/pkclist.c:164
+#: g10/pkclist.c:162
 msgid "sSmMqQ"
 msgstr "sSmMqQ"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:166
 msgid "Your decision? "
 msgstr "Ihre Auswahl? "
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:186
 msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr "Zertifikate führen zu einem letztlich vertrauenswürdigen Schlüssel:\n"
 
-#: g10/pkclist.c:223
+#: g10/pkclist.c:221
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -891,7 +895,7 @@ msgstr ""
 "ermitteln können.\n"
 "\n"
 
-#: g10/pkclist.c:261
+#: g10/pkclist.c:260
 msgid ""
 "No path leading to one of our keys found.\n"
 "\n"
@@ -899,7 +903,7 @@ msgstr ""
 "Kein Pfad führt zu einen unserer Schlüsseln.\n"
 "\n"
 
-#: g10/pkclist.c:263
+#: g10/pkclist.c:262
 msgid ""
 "No certificates with undefined trust found.\n"
 "\n"
@@ -907,7 +911,7 @@ msgstr ""
 "Keine Zertifikate mit undefinierten Vertrauen gefunden.\n"
 "\n"
 
-#: g10/pkclist.c:265
+#: g10/pkclist.c:264
 msgid ""
 "No trust values changed.\n"
 "\n"
@@ -915,33 +919,33 @@ msgstr ""
 "Keine \"trust\" Werte geändert.\n"
 "\n"
 
-#: g10/pkclist.c:280
+#: g10/pkclist.c:279
 #, c-format
 msgid "key %08lX: key has been revoked!\n"
 msgstr "Schlüssel %08lX: Schlüssel wurde widerrufen\n"
 
-#: g10/pkclist.c:286 g10/pkclist.c:381
+#: g10/pkclist.c:285 g10/pkclist.c:397
 msgid "Use this key anyway? "
 msgstr "Diesen Schlüssel trotzdem benutzen?"
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:309
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX: Schlüssel ist verfallen!\n"
 
-#: g10/pkclist.c:314
+#: g10/pkclist.c:315
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr ""
 "%08lX: Keine Infos zur Berechnung der Vertrauenswahrscheinlichkeit "
 "vorgefunden\n"
 
-#: g10/pkclist.c:332
+#: g10/pkclist.c:333
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
 
-#: g10/pkclist.c:338
+#: g10/pkclist.c:339
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -950,18 +954,18 @@ msgstr ""
 "%08lX: Es ist nicht sicher, daß dieser Schlüssel wirklich dem vorgeblichen\n"
 "Besitzer gehört, aber er wird trotzdem akzeptiert\n"
 
-#: g10/pkclist.c:344
+#: g10/pkclist.c:345
 msgid "This key probably belongs to the owner\n"
 msgstr ""
 "Dieser Schlüssel gehört höchstwahrscheinlich dem angegebenen Besitzer\n"
 
-#: g10/pkclist.c:349
+#: g10/pkclist.c:350
 msgid "This key belongs to us\n"
 msgstr ""
 "Dieser Schlüssel gehört uns (da wir nämlich den geheimen Schlüssel dazu "
 "haben)\n"
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:392
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -972,60 +976,60 @@ msgstr ""
 "Wenn Sie *wirklich* wissen, was Sie tun, können Sie die nächste\n"
 "Frage mit ja beantworten\n"
 
-#: g10/pkclist.c:385
+#: g10/pkclist.c:405
 msgid "WARNING: Using untrusted key!\n"
 msgstr "WARNUNG: Ein Schlüssel ohne gesichertes Vertrauen wird benutzt!\n"
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:441
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "WARNUNG: Dieser Schlüssel wurde von seinem Besitzer widerrufen!\n"
 
-#: g10/pkclist.c:422
+#: g10/pkclist.c:442
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Das könnte bedeuten, daß die Signatur gefälscht ist.\n"
 
-#: g10/pkclist.c:443
+#: g10/pkclist.c:463
 msgid "Note: This key has expired!\n"
 msgstr "Hinweis: Dieser Schlüssel ist verfallen!\n"
 
-#: g10/pkclist.c:450
+#: g10/pkclist.c:470
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr "WARNUNG: Dieser Schlüssel trägt keine vertrauenswürdige Signatur!\n"
 
-#: g10/pkclist.c:452
+#: g10/pkclist.c:472
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 "         Es gibt keinen Hinweis, daß die Signatur wirklich dem vorgeblichen "
 "Besitzer gehört.\n"
 
-#: g10/pkclist.c:468
+#: g10/pkclist.c:488
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "WARNUNG: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
 
-#: g10/pkclist.c:469
+#: g10/pkclist.c:489
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         Die Signatur ist wahrscheinlich eine FÄLSCHUNG.\n"
 
-#: g10/pkclist.c:476
+#: g10/pkclist.c:496
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "WARNUNG: Dieser Schlüssel ist nicht durch hinreichend vertrauenswürdige "
 "Signaturen zertifiziert!\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:499
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 "         Es ist nicht sicher, daß die Signatur wirklich dem vorgeblichen "
 "Besitzer gehört.\n"
 
-#: g10/pkclist.c:532 g10/pkclist.c:545 g10/pkclist.c:607 g10/pkclist.c:635
+#: g10/pkclist.c:552 g10/pkclist.c:565 g10/pkclist.c:628 g10/pkclist.c:656
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: übersprungen: %s\n"
 
-#: g10/pkclist.c:554
+#: g10/pkclist.c:574
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1033,20 +1037,20 @@ msgstr ""
 "Sie gaben keine User-ID angegeben (Benutzen Sie die Option \"-r\").\n"
 "\n"
 
-#: g10/pkclist.c:559
+#: g10/pkclist.c:579
 msgid "Enter the user ID: "
 msgstr "Geben Sie die User-ID ein: "
 
-#: g10/pkclist.c:570
+#: g10/pkclist.c:590
 msgid "No such user ID.\n"
 msgstr "Keine solche User-ID vorhanden.\n"
 
-#: g10/pkclist.c:615
+#: g10/pkclist.c:636
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: Fehler beim Prüfen des Schlüssels: %s\n"
 
-#: g10/pkclist.c:641
+#: g10/pkclist.c:662
 msgid "no valid addressees\n"
 msgstr "Keine gültigen Adressaten\n"
 
@@ -1198,7 +1202,7 @@ msgstr "Der Schl
 msgid "Is this correct (y/n)? "
 msgstr "Ist dies richtig? (j/n) "
 
-#: g10/keygen.c:582
+#: g10/keygen.c:583
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1214,23 +1218,23 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:593
+#: g10/keygen.c:594
 msgid "Real name: "
 msgstr "Ihr Name (\"Vorname Nachname\"): "
 
-#: g10/keygen.c:597
+#: g10/keygen.c:598
 msgid "Invalid character in name\n"
 msgstr "Ungültiges Zeichen im Namen\n"
 
-#: g10/keygen.c:599
+#: g10/keygen.c:600
 msgid "Name may not start with a digit\n"
 msgstr "Der Name darf nicht mit einer Ziffer beginnen.\n"
 
-#: g10/keygen.c:601
+#: g10/keygen.c:602
 msgid "Name must be at least 5 characters long\n"
 msgstr "Der Name muß min. 5 Zeichen lang sein.\n"
 
-#: g10/keygen.c:609
+#: g10/keygen.c:610
 msgid "Email address: "
 msgstr "E-Mail-Adresse: "
 
@@ -1246,7 +1250,12 @@ msgstr "Kommentar: "
 msgid "Invalid character in comment\n"
 msgstr "Ungültiges Zeichen im Kommentar.\n"
 
-#: g10/keygen.c:655
+#: g10/keygen.c:657
+#, c-format
+msgid "You are using the `%s' character set.\n"
+msgstr ""
+
+#: g10/keygen.c:663
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1257,15 +1266,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:658
+#: g10/keygen.c:666
 msgid "NnCcEeOoQq"
 msgstr "NnKkEeFfBb"
 
-#: g10/keygen.c:668
+#: g10/keygen.c:676
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Ändern: (N)ame, (K)ommentar, (E)-Mail oder (F)ertig/(B)eenden? "
 
-#: g10/keygen.c:720
+#: g10/keygen.c:728
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1273,11 +1282,11 @@ msgstr ""
 "Sie benötigen ein Mantra, um den geheimen Schlüssel zu schützen.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:728
+#: g10/keyedit.c:389 g10/keygen.c:736
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "Mantra wurde nicht richtig wiederholt; noch einmal versuchen.\n"
 
-#: g10/keygen.c:734
+#: g10/keygen.c:742
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1290,7 +1299,7 @@ msgstr ""
 "aufrufen.\n"
 "\n"
 
-#: g10/keygen.c:755
+#: g10/keygen.c:763
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1301,34 +1310,34 @@ msgstr ""
 "unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas\n"
 "tippen oder irgendwelche anderen Programme benutzen.\n"
 
-#: g10/keygen.c:825
+#: g10/keygen.c:833
 msgid "Key generation can only be used in interactive mode\n"
 msgstr ""
 "Die Schlüsselerzeugung kann nur im interaktiven Modus benutzt werden.\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:841
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "Der DSA Schlüssel wird 1024 Bits haben.\n"
 
-#: g10/keygen.c:839
+#: g10/keygen.c:847
 msgid "Key generation cancelled.\n"
 msgstr "Schlüsselerzeugung abgebrochen.\n"
 
-#: g10/keygen.c:849
+#: g10/keygen.c:857
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "schreiben des öffentlichen Zertifikats nach '%s'\n"
 
-#: g10/keygen.c:850
+#: g10/keygen.c:858
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "schreiben des geheimen Zertifikats nach '%s'\n"
 
-#: g10/keygen.c:927
+#: g10/keygen.c:935
 msgid "public and secret key created and signed.\n"
 msgstr "Öffentlichen und geheimen Schlüssel erzeugt und signiert.\n"
 
-#: g10/keygen.c:929
+#: g10/keygen.c:937
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--edit-key\" to generate a secondary key for this purpose.\n"
@@ -1337,20 +1346,20 @@ msgstr ""
 "werden kann.  Sie können aber mit dem Befehl \"--edit-key\" einen\n"
 "Zweitschlüssel für diesem Zweck erzeugen.\n"
 
-#: g10/keygen.c:943 g10/keygen.c:1042
+#: g10/keygen.c:951 g10/keygen.c:1050
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Schlüsselerzeugung fehlgeschlagen: %s\n"
 
-#: g10/keygen.c:987 g10/sig-check.c:172 g10/sign.c:52
+#: g10/keygen.c:995 g10/sig-check.c:209 g10/sign.c:52
 #, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
 msgstr ""
-"Der Schlüssel wurde %lu Sekunde in der Zukunft erzeugt (Zeitreise oder "
-"Uhren stimmen nicht überein)\n"
+"Der Schlüssel wurde %lu Sekunde in der Zukunft erzeugt (Zeitreise oder Uhren "
+"stimmen nicht überein)\n"
 
-#: g10/keygen.c:989 g10/sig-check.c:174 g10/sign.c:54
+#: g10/keygen.c:997 g10/sig-check.c:211 g10/sign.c:54
 #, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1358,11 +1367,11 @@ msgstr ""
 "Der Schlüssel wurde %lu Sekunden in der Zukunft erzeugt (Zeitreise oder "
 "Uhren stimmen nicht überein)\n"
 
-#: g10/keygen.c:1020
+#: g10/keygen.c:1028
 msgid "Really create? "
 msgstr "Wirklich erzeugen? "
 
-#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:169 g10/tdbio.c:467
+#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
 #: g10/tdbio.c:527
 #, c-format
 msgid "%s: can't open: %s\n"
@@ -1373,17 +1382,17 @@ msgstr "%s: kann nicht ge
 msgid "error creating passphrase: %s\n"
 msgstr "Fehler beim Erzeugen des Mantras: %s\n"
 
-#: g10/encode.c:155 g10/encode.c:269
+#: g10/encode.c:161 g10/encode.c:275
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: WARNUNG: Leere Datei\n"
 
-#: g10/encode.c:222
+#: g10/encode.c:228
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "Lesen von '%s'\n"
 
-#: g10/encode.c:397
+#: g10/encode.c:403
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s verschlüsselt für: %s\n"
@@ -1415,13 +1424,13 @@ msgstr "zu viele Eintr
 msgid "too many entries in unk cache - disabled\n"
 msgstr "zu viele Einträge im unk-Lager - abgeschaltet\n"
 
-#: g10/getkey.c:1496 g10/getkey.c:1552
+#: g10/getkey.c:1502 g10/getkey.c:1558
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
 "der Zweitschlüssel %08lX wird anstelle des Hauptschlüssels %08lX verwendet\n"
 
-#: g10/import.c:116 g10/trustdb.c:1318
+#: g10/import.c:116 g10/trustdb.c:1228
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "Kann die Datei nicht öffnen: %s\n"
@@ -1431,12 +1440,12 @@ msgstr "Kann die Datei nicht 
 msgid "skipping block of type %d\n"
 msgstr "überspringe den Block vom Typ %d\n"
 
-#: g10/import.c:167 g10/trustdb.c:1635 g10/trustdb.c:1704
+#: g10/import.c:167 g10/trustdb.c:1564 g10/trustdb.c:1637
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr "%lu Schlüssel bislang bearbeitet\n"
 
-#: g10/import.c:172 g10/trustdb.c:1394
+#: g10/import.c:172 g10/trustdb.c:1304
 #, c-format
 msgid "read error: %s\n"
 msgstr "Lesefehler: %s\n"
@@ -1519,7 +1528,7 @@ msgstr "Schl
 msgid "no default public keyring\n"
 msgstr "Kein voreingestellter öffentlicher Schlüsselbund\n"
 
-#: g10/import.c:374 g10/openfile.c:113 g10/sign.c:215 g10/sign.c:601
+#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "Schreiben nach '%s'\n"
@@ -2091,71 +2100,75 @@ msgstr "Keine entsprechende Signatur im geheimen Schl
 msgid "No user id with index %d\n"
 msgstr "Keine User-ID mit Index %d\n"
 
-#: g10/keyedit.c:1371
+#: g10/keyedit.c:1372
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Kein Zweitschlüssel mit Index %d\n"
 
-#: g10/mainproc.c:199
+#: g10/mainproc.c:202
 msgid "public key encrypted data: good DEK\n"
 msgstr "Mit öffentlichem Schüssel verschlüsselte Daten: Korrekte DEK\n"
 
-#: g10/mainproc.c:202
+#. fixme: defer this message until we have parsed all packets of
+#. * this type - do this by building a list of keys with their stati
+#. * and store it with the conetxt.  do_proc_packets can then use
+#. * this list to display some information
+#: g10/mainproc.c:209
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "Entschlüsselung mit öffentlichem Schlüssel fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:229
+#: g10/mainproc.c:236
 msgid "decryption okay\n"
 msgstr "Enschlüsselung fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:232
+#: g10/mainproc.c:239
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "Enschlüsselung fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:256
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr ""
 "Hinweis: Der Absender verlangte Vertraulichkeit(\"for-your-eyes-only\")\n"
 
-#: g10/mainproc.c:251
+#: g10/mainproc.c:258
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "Ursprünglicher Dateiname='%.*s'\n"
 
-#: g10/mainproc.c:831
+#: g10/mainproc.c:839
 msgid "signature verification suppressed\n"
 msgstr "Unterschriften-Überprüfung unterdrückt\n"
 
-#: g10/mainproc.c:837
+#: g10/mainproc.c:845
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Unterschrieben am %.*s mit %s Schlüssel %08lX\n"
 
 #. just in case that we have no userid
-#: g10/mainproc.c:863 g10/mainproc.c:874
+#: g10/mainproc.c:871 g10/mainproc.c:882
 msgid "BAD signature from \""
 msgstr "FALSCHE Unterschrift von \""
 
-#: g10/mainproc.c:864 g10/mainproc.c:875
+#: g10/mainproc.c:872 g10/mainproc.c:883
 msgid "Good signature from \""
 msgstr "Korrekte Unterschrift von \""
 
-#: g10/mainproc.c:866
-msgid  "                aka \""
+#: g10/mainproc.c:874
+msgid "                aka \""
 msgstr "                alias \""
 
-#: g10/mainproc.c:908
+#: g10/mainproc.c:916
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Signatur kann nicht geprüft werden: %s\n"
 
-#: g10/mainproc.c:981
+#: g10/mainproc.c:989
 msgid "old style (PGP 2.x) signature\n"
 msgstr "Unterschrift nach alter (PGP 2.x) Art\n"
 
-#: g10/mainproc.c:986
+#: g10/mainproc.c:994
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "ungültiges root-Paket in proc_tree() entdeckt\n"
 
@@ -2276,29 +2289,29 @@ msgstr ""
 "WARNUNG: Unsicherer Schlüssel entdeckt -\n"
 "         bitte das Mantra nochmal eingeben.\n"
 
-#: g10/sig-check.c:155
+#: g10/sig-check.c:192
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "Dieser durch PGP erzeugte ElGamal-Schlüssel ist für Signaturen NICHT sicher "
 "genug!\n"
 
-#: g10/sig-check.c:163
+#: g10/sig-check.c:200
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "lid %lu: User-ID ohne Signatur\n"
 
-#: g10/sig-check.c:164
+#: g10/sig-check.c:201
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "lid %lu: User-ID ohne Signatur\n"
 
-#: g10/sig-check.c:180
+#: g10/sig-check.c:217
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "Hinweis: Schlüssel der Signatur ist verfallen am %s.\n"
 
-#: g10/sig-check.c:237
+#: g10/sig-check.c:274
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 "Vermutlich eine FALSCHE Unterschrift, wegen unbekanntem \"critical bit\"\n"
@@ -2308,7 +2321,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "%s Unterschrift von: %s\n"
 
-#: g10/sign.c:210 g10/sign.c:596
+#: g10/sign.c:210 g10/sign.c:493
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "%s kann nicht erzeugt werden: %s\n"
@@ -2322,11 +2335,16 @@ msgstr "unterschreibe:"
 msgid "WARNING: `%s' is an empty file\n"
 msgstr "WARNUNG: '%s' ist eine leere Datei.\n"
 
-#: g10/textfilter.c:199
+#: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
 msgstr ""
 
+#: g10/textfilter.c:189
+#, c-format
+msgid "input line longer than %d characters\n"
+msgstr ""
+
 #: g10/tdbio.c:117 g10/tdbio.c:1448
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
@@ -2346,12 +2364,12 @@ msgstr "trustdb Transaktion zu gro
 msgid "%s: can't access: %s\n"
 msgstr "%s: kann nicht zugegriffen werden: %s\n"
 
-#: g10/ringedit.c:294 g10/tdbio.c:444
+#: g10/ringedit.c:296 g10/tdbio.c:444
 #, c-format
 msgid "%s: can't create directory: %s\n"
 msgstr "%s: Verzeichnis kann nicht erzeugt werden: %s\n"
 
-#: g10/ringedit.c:300 g10/tdbio.c:447
+#: g10/ringedit.c:302 g10/tdbio.c:447
 #, c-format
 msgid "%s: directory created\n"
 msgstr "%s: Verzeichnis erzeugt\n"
@@ -2361,7 +2379,7 @@ msgstr "%s: Verzeichnis erzeugt\n"
 msgid "%s: directory does not exist!\n"
 msgstr "%s: Verzeichnis existiert nicht!\n"
 
-#: g10/openfile.c:109 g10/openfile.c:176 g10/ringedit.c:1310 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: kann nicht erzeugt werden: %s\n"
@@ -2457,171 +2475,171 @@ msgstr "%s: konnte einen Satz nicht Nullen: %s\n"
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s: konnte Satz nicht anhängen: %s\n"
 
-#: g10/trustdb.c:144
+#: g10/trustdb.c:165
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "Die \"Trust\"-Datenbank ist beschädigt; verwenden Sie \"gpgm "
 "--fix-trustdb\".\n"
 
-#: g10/trustdb.c:157
+#: g10/trustdb.c:178
 #, c-format
 msgid "trust record %lu, req type %d: read failed: %s\n"
 msgstr "trust record %lu, req type %d: read failed: %s\n"
 
-#: g10/trustdb.c:172
+#: g10/trustdb.c:193
 #, c-format
 msgid "trust record %lu, type %d: write failed: %s\n"
 msgstr "trust record %lu, type %d: write failed: %s\n"
 
-#: g10/trustdb.c:186
+#: g10/trustdb.c:207
 #, c-format
 msgid "trust record %lu: delete failed: %s\n"
 msgstr "Vertrauenssatz %lu: löschen fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:200
+#: g10/trustdb.c:221
 #, c-format
 msgid "trustdb: sync failed: %s\n"
 msgstr "\"Trust-DB\": sync fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:329
+#: g10/trustdb.c:351
 #, c-format
 msgid "error reading dir record for LID %lu: %s\n"
 msgstr "Fehler beim Lesen des Dir-Satzes für LID %lu: %s\n"
 
-#: g10/trustdb.c:336
+#: g10/trustdb.c:358
 #, c-format
 msgid "lid %lu: expected dir record, got type %d\n"
 msgstr "lid %lu: Dir-Satz erwartet, aber es kam Typ %d\n"
 
-#: g10/trustdb.c:341
+#: g10/trustdb.c:363
 #, c-format
 msgid "no primary key for LID %lu\n"
 msgstr "Kein Hauptschlüssel für LID %lu\n"
 
-#: g10/trustdb.c:346
+#: g10/trustdb.c:368
 #, c-format
 msgid "error reading primary key for LID %lu: %s\n"
 msgstr "Fehler beim Lesen den Hauptschlüssels der LID %lu: %s\n"
 
-#: g10/trustdb.c:422
+#: g10/trustdb.c:445
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "Verketteter Signatursatz %lu hat einen falschen Besitzer\n"
 
-#: g10/trustdb.c:465
+#: g10/trustdb.c:488
 #, c-format
 msgid "'%s' is not a valid long keyID\n"
 msgstr "'%s' ist keine gültige lange Schlüssel-ID\n"
 
-#: g10/trustdb.c:500
+#: g10/trustdb.c:523
 #, c-format
 msgid "key %08lX: no public key for trusted key - skipped\n"
 msgstr ""
 "Schlüssel %08lX: kein öffentlicher Schüssel für vertrauenswürdigen Schlüssel "
 "- übersprungen\n"
 
-#: g10/trustdb.c:509 g10/trustdb.c:567
+#: g10/trustdb.c:532 g10/trustdb.c:590
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "Schlüssel %08lX kann nicht in die \"trustdb\" eingefügt werden\n"
 
-#: g10/trustdb.c:514 g10/trustdb.c:573
+#: g10/trustdb.c:537 g10/trustdb.c:596
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "Schlüssel %08lX: Satzabfrage fehlgeschlagen\n"
 
-#: g10/trustdb.c:519 g10/trustdb.c:582
+#: g10/trustdb.c:542 g10/trustdb.c:605
 #, c-format
 msgid "key %08lX: already in trusted key table\n"
 msgstr "Schlüssel %08lX: Ist bereits in geheimer Schlüsseltabelle\n"
 
-#: g10/trustdb.c:522 g10/trustdb.c:585
+#: g10/trustdb.c:545 g10/trustdb.c:608
 #, c-format
 msgid "key %08lX: accepted as trusted key.\n"
 msgstr "Schlüssel %08lX: Akzeptiert als vertrauenswürdiger Schlüssel.\n"
 
-#: g10/trustdb.c:538
+#: g10/trustdb.c:561
 #, c-format
 msgid "NOTE: secret key %08lX is NOT protected.\n"
 msgstr "HINWEIS: Geheimer Schlüssel %08lX ist NICHT geschützt.\n"
 
-#: g10/trustdb.c:550
+#: g10/trustdb.c:573
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr ""
 "Schlüssel %08lX: geheimer Schlüssel, aber ohne öffentlichen Schlüssel - "
 "übersprungen\n"
 
-#: g10/trustdb.c:557
+#: g10/trustdb.c:580
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr ""
 "Schlüssel %08lX: geheimer und öffentlicher Schlüssel passen nicht zusammen.\n"
 
-#: g10/trustdb.c:593
+#: g10/trustdb.c:616
 #, c-format
 msgid "enumerate secret keys failed: %s\n"
 msgstr "enum_secret_keys fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:776
+#: g10/trustdb.c:770
 #, c-format
 msgid "lid %lu: read dir record failed: %s\n"
 msgstr "lid %lu: Lesen des Verz.Satzes fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:785
+#: g10/trustdb.c:779
 #, c-format
 msgid "lid %lu: read key record failed: %s\n"
 msgstr "lid %lu: Lesen des Schl..Satzes fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:795
+#: g10/trustdb.c:789
 #, c-format
 msgid "lid %lu: read uid record failed: %s\n"
 msgstr "lid %lu: Lesen des UserID-Satzes fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:804
+#: g10/trustdb.c:798
 #, c-format
 msgid "lid %lu: read pref record failed: %s\n"
 msgstr "lid %lu: Lesen des Pref.Satzes fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:814
+#: g10/trustdb.c:808
 #, c-format
 msgid "lid %lu: read sig record failed: %s\n"
 msgstr "lid %lu: Lesen des Sig.Satzes fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1151
+#: g10/trustdb.c:1037
 msgid "Ooops, no keys\n"
 msgstr "Huch, keine Schlüssel\n"
 
-#: g10/trustdb.c:1155
+#: g10/trustdb.c:1041
 msgid "Ooops, no user ids\n"
 msgstr "Huch, keine User-IDs\n"
 
-#: g10/trustdb.c:1226 g10/trustdb.c:1244
+#: g10/trustdb.c:1134 g10/trustdb.c:1152
 #, c-format
 msgid "user '%s' read problem: %s\n"
 msgstr "User '%s' Leseproblem: %s\n"
 
-#: g10/trustdb.c:1229 g10/trustdb.c:1247
+#: g10/trustdb.c:1137 g10/trustdb.c:1155
 #, c-format
 msgid "user '%s' list problem: %s\n"
 msgstr "User '%s' Listenproblem: %s\n"
 
-#: g10/trustdb.c:1237 g10/trustdb.c:1485
+#: g10/trustdb.c:1145 g10/trustdb.c:1447
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "Benutzer '%s' nicht gefunden: %s\n"
 
-#: g10/trustdb.c:1239 g10/trustdb.c:1487
+#: g10/trustdb.c:1147 g10/trustdb.c:1449
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "Problem, '%s' in der Trust-DB zu finden: %s\n"
 
-#: g10/trustdb.c:1242
+#: g10/trustdb.c:1150
 #, c-format
 msgid "user '%s' not in trustdb\n"
 msgstr "User '%s' ist nicht in der trustdb\n"
 
-#: g10/trustdb.c:1277
+#: g10/trustdb.c:1186
 #, c-format
 msgid ""
 "# List of assigned trustvalues, created %s\n"
@@ -2630,384 +2648,384 @@ msgstr ""
 "# Liste der zugewisenen \"trustvalues\", erzeugt am %s\n"
 "# (Verwenden Sie \"gpgm --import-ownertrust\" um sie wieder einzuspielen)\n"
 
-#: g10/trustdb.c:1283
+#: g10/trustdb.c:1192
 msgid "directory record w/o primary key\n"
 msgstr "Verzeichnis-Satz ohne Hauptschlüssel\n"
 
-#: g10/trustdb.c:1290
+#: g10/trustdb.c:1199
 #, c-format
 msgid "error reading key record: %s\n"
 msgstr "Fehler beim Lesen des Schl.Satzes: %s\n"
 
-#: g10/trustdb.c:1330
+#: g10/trustdb.c:1240
 msgid "line too long\n"
 msgstr "Zeile zu lang\n"
 
-#: g10/trustdb.c:1338
+#: g10/trustdb.c:1248
 msgid "error: missing colon\n"
 msgstr "Fehler: Fehlender Doppelpunkt\n"
 
-#: g10/trustdb.c:1343
+#: g10/trustdb.c:1253
 msgid "error: invalid fingerprint\n"
 msgstr "Fehler: ungültiger Fingerabdruck\n"
 
-#: g10/trustdb.c:1347
+#: g10/trustdb.c:1257
 msgid "error: no ownertrust value\n"
 msgstr "Fehler: Keine \"Owner trust\" Werte\n"
 
-#: g10/trustdb.c:1372
+#: g10/trustdb.c:1282
 msgid "key not in trustdb, searching ring.\n"
 msgstr "Schlüssel ist nicht in der trustdb, Schl.bund wird durchsucht.\n"
 
-#: g10/trustdb.c:1375
+#: g10/trustdb.c:1285
 #, c-format
 msgid "key not in ring: %s\n"
 msgstr "Schlüssel ist nicht im Schlüsselbund: %s\n"
 
-#: g10/trustdb.c:1379
+#: g10/trustdb.c:1289
 msgid "Oops: key is now in trustdb???\n"
 msgstr "Huch: Schlüssel ist ja gar nicht in der Trust-DB?\n"
 
 #. update the ownertrust
-#: g10/trustdb.c:1384
+#: g10/trustdb.c:1294
 #, c-format
 msgid "insert trust record failed: %s\n"
 msgstr "'trust record' einfügen fehlgeschlagen: %s\n"
 
 #. error
-#: g10/trustdb.c:1390
+#: g10/trustdb.c:1300
 #, c-format
 msgid "error finding dir record: %s\n"
 msgstr "Fehler beim Auffinden des Verz.Satzes: %s\n"
 
-#: g10/trustdb.c:1490
+#: g10/trustdb.c:1452
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "User '%s' ist nicht in der 'Trust'-Datenbank - wird eingefügt\n"
 
-#: g10/trustdb.c:1493
+#: g10/trustdb.c:1455
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "konnte '%s' nicht in die 'Trust'-Datenbank hineintun: %s\n"
 
-#: g10/trustdb.c:1565
+#: g10/trustdb.c:1494
 #, c-format
 msgid "%s: keyblock read problem: %s\n"
 msgstr "%s: Schlüsselblock Leseproblem: %s\n"
 
-#: g10/trustdb.c:1579
+#: g10/trustdb.c:1508
 #, c-format
 msgid "%s: update failed: %s\n"
 msgstr "%s: Änderung fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1582
+#: g10/trustdb.c:1511
 #, c-format
 msgid "%s: updated\n"
 msgstr "%s: geändert\n"
 
-#: g10/trustdb.c:1584
+#: g10/trustdb.c:1513
 #, c-format
 msgid "%s: okay\n"
 msgstr "%s: In Ordnung\n"
 
-#: g10/trustdb.c:1599
+#: g10/trustdb.c:1528
 #, c-format
 msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr "lid %lu: Dir-Satz ohne Schlüssel - übergangen\n"
 
-#: g10/trustdb.c:1612
+#: g10/trustdb.c:1541
 #, c-format
 msgid "lid %lu: keyblock not found: %s\n"
 msgstr "lid %lu: Schlüsselblock nicht gefunden: %s\n"
 
-#: g10/trustdb.c:1621 g10/trustdb.c:1690
+#: g10/trustdb.c:1550 g10/trustdb.c:1623
 #, c-format
 msgid "lid %lu: update failed: %s\n"
 msgstr "lid %lu: Änderung fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1627 g10/trustdb.c:1696
+#: g10/trustdb.c:1556 g10/trustdb.c:1629
 #, c-format
 msgid "lid %lu: updated\n"
 msgstr "lid %lu: geändert\n"
 
-#: g10/trustdb.c:1631 g10/trustdb.c:1700
+#: g10/trustdb.c:1560 g10/trustdb.c:1633
 #, c-format
 msgid "lid %lu: okay\n"
 msgstr "lid %lu: In Ordnung\n"
 
-#: g10/trustdb.c:1638 g10/trustdb.c:1706
+#: g10/trustdb.c:1567 g10/trustdb.c:1639
 #, c-format
 msgid "%lu keys processed\n"
 msgstr "%lu Schlüssel bearbeitet\n"
 
-#: g10/trustdb.c:1640
+#: g10/trustdb.c:1569
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr "\t%lu Schlüssel übersprungen\n"
 
-#: g10/trustdb.c:1642 g10/trustdb.c:1708
+#: g10/trustdb.c:1571 g10/trustdb.c:1641
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr "\t%lu Schlüssel mit Fehlern\n"
 
-#: g10/trustdb.c:1644 g10/trustdb.c:1710
+#: g10/trustdb.c:1573 g10/trustdb.c:1643
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr "\t%lu Schlüssel geändert\n"
 
-#: g10/trustdb.c:1674
+#: g10/trustdb.c:1607
 #, c-format
 msgid "lid ?: insert failed: %s\n"
 msgstr "lid ?: Einfügen fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1679
+#: g10/trustdb.c:1612
 #, c-format
 msgid "lid %lu: insert failed: %s\n"
 msgstr "lid %lu: Einfügen fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1685
+#: g10/trustdb.c:1618
 #, c-format
 msgid "lid %lu: inserted\n"
 msgstr "lid %lu: eingefügt\n"
 
-#: g10/trustdb.c:1712
+#: g10/trustdb.c:1645
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr "\t%lu Schlüssel eingefügt\n"
 
-#: g10/trustdb.c:1715
+#: g10/trustdb.c:1648
 #, c-format
 msgid "enumerate keyblocks failed: %s\n"
 msgstr "enumerate Schlüsselblock fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1760
+#: g10/trustdb.c:1694
 #, c-format
 msgid "check_trust: search dir record failed: %s\n"
 msgstr "check_trust: Suche nach Dir-Satz fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1767
+#: g10/trustdb.c:1701
 #, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1771
+#: g10/trustdb.c:1705
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "Schlüssel %08lX.%lu: in \"trustdb\" eingefügt\n"
 
-#: g10/trustdb.c:1779
+#: g10/trustdb.c:1713
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "Schlüssel %08lX.%lu: wurde in der Zukunft erzeugt (Zeitreise oder Uhren "
 "stimmen nicht überein)\n"
 
-#: g10/trustdb.c:1786
+#: g10/trustdb.c:1720
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "Schlüssel %08lX.%lu: verfallen am %s\n"
 
-#: g10/trustdb.c:1794
+#: g10/trustdb.c:1728
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "Schlüssel %08lX.%lu: Vertrauensprüfung fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:2003 g10/trustdb.c:2032 g10/trustdb.c:2771
+#: g10/trustdb.c:1951 g10/trustdb.c:1981 g10/trustdb.c:2734
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr "WARNUNG: Lange 'Pref'-Records können noch nicht benutzt werden\n"
 
-#: g10/trustdb.c:2054
+#: g10/trustdb.c:2003
 #, c-format
 msgid "get_dir_record: search_record failed: %s\n"
 msgstr "get_dir_record: search_record fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:2117
+#: g10/trustdb.c:2071
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 msgstr "Hinweis: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 
-#: g10/trustdb.c:2121
+#: g10/trustdb.c:2075
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr "Hinweis: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 
 #. we need the dir record
-#: g10/trustdb.c:2128
+#: g10/trustdb.c:2082
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 
-#: g10/trustdb.c:2134
+#: g10/trustdb.c:2088
 #, c-format
 msgid "lid %lu: no primary key\n"
 msgstr "lid %lu: kein Hauptschlüssel\n"
 
-#: g10/trustdb.c:2167
+#: g10/trustdb.c:2121
 #, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr "lid %lu: User-ID im Schlüsselblock nicht gefunden\n"
 
-#: g10/trustdb.c:2171
+#: g10/trustdb.c:2125
 #, c-format
 msgid "lid %lu: user id without signature\n"
 msgstr "lid %lu: User-ID ohne Signatur\n"
 
-#: g10/trustdb.c:2178
+#: g10/trustdb.c:2132
 #, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr "lid %lu: Eigenbeglaubigung in 'hintlist'\n"
 
-#: g10/trustdb.c:2189 g10/trustdb.c:2910 g10/trustdb.c:2994
+#: g10/trustdb.c:2143 g10/trustdb.c:2879 g10/trustdb.c:2962
 msgid "Valid certificate revocation"
 msgstr "Gültiger Zerifikat-Widerruf"
 
-#: g10/trustdb.c:2190 g10/trustdb.c:2911 g10/trustdb.c:2995
+#: g10/trustdb.c:2144 g10/trustdb.c:2880 g10/trustdb.c:2963
 msgid "Good certificate"
 msgstr "Korrektes Zertifikat"
 
-#: g10/trustdb.c:2199
+#: g10/trustdb.c:2153
 msgid "very strange: no public key\n"
 msgstr "sehr seltsam: kein öffentlicher Schlüssel\n"
 
-#: g10/trustdb.c:2247
+#: g10/trustdb.c:2201
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr "hintlist %lu[%d] of %lu zeigt nicht auf einen 'dir record'\n"
 
-#: g10/trustdb.c:2253
+#: g10/trustdb.c:2207
 #, c-format
 msgid "lid %lu does not have a key\n"
 msgstr "lid %lu hat keinen Schlüssel\n"
 
-#: g10/trustdb.c:2263
+#: g10/trustdb.c:2217
 #, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr "lid %lu: Schlüsselblock nicht verfügbar: %s\n"
 
-#: g10/trustdb.c:2320 g10/trustdb.c:3245
+#: g10/trustdb.c:2274 g10/trustdb.c:3227
 #, c-format
 msgid "tdbio_search_dir failed: %s\n"
 msgstr "tdbio_search_dir fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:2473
+#: g10/trustdb.c:2427
 #, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
 msgstr "Schlüssel %08lX.%lu: Korrekte Unterschlüssel-Anbindung\n"
 
-#: g10/trustdb.c:2479 g10/trustdb.c:2521
+#: g10/trustdb.c:2433 g10/trustdb.c:2475
 #, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
 msgstr "Schlüssel %08lX.%lu: Ungültige Unterschlüssel-Anbindung\n"
 
-#: g10/trustdb.c:2494
+#: g10/trustdb.c:2448
 #, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
 msgstr "Schlüssel %08lX.%lu: Gültiger Schlüsselwiderruf\n"
 
-#: g10/trustdb.c:2500
+#: g10/trustdb.c:2454
 #, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
 msgstr "Schlüssel %08lX.%lu: Ungültiger Schlüsselwiderruf: %s\n"
 
-#: g10/trustdb.c:2515
+#: g10/trustdb.c:2469
 #, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
 msgstr "Schlüssel %08lX.%lu: Gültiger Unterschlüsselwiderruf\n"
 
-#: g10/trustdb.c:2615
+#: g10/trustdb.c:2573
 msgid "Good self-signature"
 msgstr "Korrekte Eigenbeglaubigung"
 
-#: g10/trustdb.c:2626
+#: g10/trustdb.c:2584
 msgid "Invalid self-signature"
 msgstr "Ungültige Eigenbeglaubigung"
 
-#: g10/trustdb.c:2636
+#: g10/trustdb.c:2594
 msgid "Valid user ID revocation skipped due to a newer self signature\n"
 msgstr ""
 "Gültiger User-ID-Widerruf ignoriert, da eine neuere Eigenbeglaubigung "
 "vorliegt\n"
 
-#: g10/trustdb.c:2643
+#: g10/trustdb.c:2601
 msgid "Valid user ID revocation\n"
 msgstr "Gültiger User-ID-Widerruf\n"
 
-#: g10/trustdb.c:2650
+#: g10/trustdb.c:2608
 msgid "Invalid user ID revocation"
 msgstr "Ungültiger User-ID-Widerruf"
 
-#: g10/trustdb.c:2734
+#: g10/trustdb.c:2697
 msgid "Too many preferences"
 msgstr "Zu viele Einstellungen"
 
-#: g10/trustdb.c:2748
+#: g10/trustdb.c:2711
 msgid "Too many preference items"
 msgstr "Zu viele Angaben zur Bevorzugung"
 
-#: g10/trustdb.c:2888
+#: g10/trustdb.c:2857
 #, fuzzy
 msgid "duplicated certificate - deleted"
 msgstr "Doppelte Zertifikate - entfernt"
 
-#: g10/trustdb.c:2922
+#: g10/trustdb.c:2891
 msgid "Hmmm, public key lost?"
 msgstr "Hmmm, öffentlicher Schüssel verloren?"
 
-#: g10/trustdb.c:2932 g10/trustdb.c:3015
+#: g10/trustdb.c:2900 g10/trustdb.c:2983
 msgid "Invalid certificate revocation"
 msgstr "Ungültiger Zertifikatswiderruf"
 
-#: g10/trustdb.c:2933 g10/trustdb.c:3016
+#: g10/trustdb.c:2901 g10/trustdb.c:2984
 msgid "Invalid certificate"
 msgstr "Ungültiges Zertifikat"
 
-#: g10/trustdb.c:2948
+#: g10/trustdb.c:2916
 #, c-format
 msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
 msgstr ""
 "uid %08lX.%lu/%02X%02X: hat \"shadow-dir\" %lu, aber ist noch nicht "
 "markiert.\n"
 
-#: g10/trustdb.c:2962
+#: g10/trustdb.c:2930
 #, c-format
 msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr "Signatursatz %lu[%d] zeigt auf falschen Satz.\n"
 
 #. that should never happen
-#: g10/trustdb.c:3215
+#: g10/trustdb.c:3190
 #, c-format
 msgid "insert_trust_record: keyblock not found: %s\n"
 msgstr "insert_trust_record: Schlüsselblock nicht gefunden: %s\n"
 
-#: g10/trustdb.c:3233
+#: g10/trustdb.c:3215
 msgid "did not use primary key for insert_trust_record()\n"
 msgstr "Für insert_trust_record() wurde nicht der Hauptschlüssel benutzt\n"
 
-#: g10/ringedit.c:314
+#: g10/ringedit.c:316
 #, c-format
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s: Schlüsselbund kann nicht erzeugt werden: %s\n"
 
-#: g10/ringedit.c:320 g10/ringedit.c:1315
+#: g10/ringedit.c:322 g10/ringedit.c:1330
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s: Schlüsselbund erstellt\n"
 
-#: g10/ringedit.c:1492
+#: g10/ringedit.c:1507
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr "Warnung: Zwei Dateien mit vertraulichem Inhalt vorhanden.\n"
 
-#: g10/ringedit.c:1493
+#: g10/ringedit.c:1508
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s ist der Unveränderte\n"
 
-#: g10/ringedit.c:1494
+#: g10/ringedit.c:1509
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s ist der Neue\n"
 
-#: g10/ringedit.c:1495
+#: g10/ringedit.c:1510
 msgid "Please fix this possible security flaw\n"
 msgstr "Bitte diesen potentiellen Sicherheitsmangel beseitigen\n"
 
@@ -3043,12 +3061,12 @@ msgstr "
 msgid "writing to stdout\n"
 msgstr "Schreiben auf die Standardausgabe\n"
 
-#: g10/openfile.c:145
+#: g10/openfile.c:147
 #, c-format
 msgid "assuming signed data in `%s'\n"
 msgstr "die unterzeichneten Daten sind wohl in '%s'\n"
 
-#: g10/openfile.c:192
+#: g10/openfile.c:197
 #, c-format
 msgid "%s: new options file created\n"
 msgstr "%s: neue Optionendatei erstellt\n"
@@ -3388,9 +3406,6 @@ msgstr "Keine Hilfe f
 #~ msgid "edit a key signature"
 #~ msgstr "Bearbeiten der Signaturen eines Schlüssels"
 
-#~ msgid "do not make any changes"
-#~ msgstr "Keine wirklichen Änderungen durchführen"
-
 #~ msgid ""
 #~ "It's up to you to assign a value here; this value will never be exported\n"
 #~ "to any 3rd party.  We need it to implement the web-of-trust; it has nothing\n"
index 32cb72a..c6eda90 100644 (file)
@@ -5,7 +5,7 @@
 # I also got inspiration from it.po by Marco d'Itri <md@linux.it>
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1999-02-19 15:31+0100\n"
+"POT-Creation-Date: 1999-03-08 19:50+0100\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Date: 1998-11-13 10:49:25+0100\n"
 "From: Urko Lusa <ulusa@lacueva.ddns.org>\n"
@@ -19,15 +19,15 @@ msgstr ""
 "g10/mainproc.c g10/passphrase.c g10/plaintext.c g10/pref.c g10/seckey-cert.c "
 "g10/sig-check.c g10/sign.c g10/trustdb.c g10/verify.c\n"
 
-#: util/secmem.c:77
+#: util/secmem.c:76
 msgid "Warning: using insecure memory!\n"
 msgstr "Aviso: ¡se está usando memoria insegura!\n"
 
-#: util/secmem.c:250
+#: util/secmem.c:249
 msgid "operation is not possible without initialized secure memory\n"
 msgstr ""
 
-#: util/secmem.c:251
+#: util/secmem.c:250
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
@@ -259,7 +259,7 @@ msgstr ""
 "¡NO USE NINGÚN DATO GENERADO POR ESTE PROGRAMA!\n"
 "\n"
 
-#: cipher/rndlinux.c:118
+#: cipher/rndlinux.c:114
 #, c-format
 msgid ""
 "\n"
@@ -446,7 +446,10 @@ msgstr "algo m
 msgid "force v3 signatures"
 msgstr "fuerza firmas v3"
 
-#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:235
+msgid "do not make any changes"
+msgstr ""
+
 #: g10/g10.c:236
 msgid "batch mode: never ask"
 msgstr "proceso por lotes: nunca preguntar"
@@ -636,122 +639,122 @@ msgstr "fichero de opciones `%s': %s\n"
 msgid "reading options from `%s'\n"
 msgstr "leyendo opciones desde `%s'\n"
 
-#: g10/g10.c:796
+#: g10/g10.c:797
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s no es un juego de caracteres válido\n"
 
-#: g10/g10.c:836 g10/g10.c:848
+#: g10/g10.c:837 g10/g10.c:849
 msgid "selected cipher algorithm is invalid\n"
 msgstr "el algoritmo de cifrado seleccionado no es válido\n"
 
-#: g10/g10.c:842 g10/g10.c:854
+#: g10/g10.c:843 g10/g10.c:855
 msgid "selected digest algorithm is invalid\n"
 msgstr "el algoritmo de resumen seleccionado no es válido\n"
 
-#: g10/g10.c:857
+#: g10/g10.c:858
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "el algoritmo de compresión debe estar en el rango %d-%d\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:860
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed debe ser mayor que 0\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:862
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed debe ser mayor que 1\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:864
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "max-cert-depth debe estar en el rango 1-255\n"
 
-#: g10/g10.c:866
+#: g10/g10.c:867
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "nota: el modo S2K simple (0) no es nada recomendable\n"
 
-#: g10/g10.c:870
+#: g10/g10.c:871
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "modo S2K incorrecto; debe ser 0, 1 o 3\n"
 
-#: g10/g10.c:947
+#: g10/g10.c:948
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inicialización de la base de datos de confianza fallida: %s\n"
 
-#: g10/g10.c:953
+#: g10/g10.c:954
 msgid "--store [filename]"
 msgstr "--store [nombre_fichero]"
 
-#: g10/g10.c:961
+#: g10/g10.c:962
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nombre_fichero]"
 
-#: g10/g10.c:969
+#: g10/g10.c:970
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nombre_fichero]"
 
-#: g10/g10.c:982
+#: g10/g10.c:983
 msgid "--sign [filename]"
 msgstr "--sign [nombre_fichero]"
 
-#: g10/g10.c:995
+#: g10/g10.c:996
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nombre_fichero]"
 
-#: g10/g10.c:1009
+#: g10/g10.c:1010
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nombre_fichero]"
 
-#: g10/g10.c:1021
+#: g10/g10.c:1022
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nombre_fichero]"
 
-#: g10/g10.c:1030
+#: g10/g10.c:1031
 msgid "--edit-key username [commands]"
 msgstr "--edit-key nombre_usuario"
 
-#: g10/g10.c:1046
+#: g10/g10.c:1047
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nombre_usuario"
 
-#: g10/g10.c:1049
+#: g10/g10.c:1050
 msgid "--delete-key username"
 msgstr "--delete-key nombre_usuario"
 
-#: g10/encode.c:216 g10/g10.c:1072 g10/sign.c:311
+#: g10/encode.c:222 g10/g10.c:1073 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "no puede abrirse `%s': %s\n"
 
-#: g10/g10.c:1083
+#: g10/g10.c:1084
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [id_usuario] [anillo]"
 
-#: g10/g10.c:1144
+#: g10/g10.c:1145
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "eliminación de armadura fallida: %s\n"
 
-#: g10/g10.c:1152
+#: g10/g10.c:1153
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creación de armadura fallida: %s\n"
 
-#: g10/g10.c:1218
+#: g10/g10.c:1219
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algoritmo de distribución no válido `%s'\n"
 
-#: g10/g10.c:1297
+#: g10/g10.c:1298
 msgid "[filename]"
 msgstr "[nombre_fichero]"
 
-#: g10/g10.c:1301
+#: g10/g10.c:1302
 msgid "Go ahead and type your message ...\n"
 msgstr "Adelante, teclee el mensaje ...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1304 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1305 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "no puede abrirse `%s'\n"
@@ -829,7 +832,7 @@ msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
 
-#: g10/pkclist.c:138
+#: g10/pkclist.c:136
 #, c-format
 msgid ""
 "No trust value assigned to %lu:\n"
@@ -838,7 +841,7 @@ msgstr ""
 "No hay confianza definida para el propietario %lu:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:148
+#: g10/pkclist.c:146
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -860,28 +863,28 @@ msgstr ""
 " 4 = Me fío completamente\n"
 " i = Mostrar más información\n"
 
-#: g10/pkclist.c:157
+#: g10/pkclist.c:155
 msgid " m = back to the main menu\n"
 msgstr " m = volver al menú principal\n"
 
-#: g10/pkclist.c:159
+#: g10/pkclist.c:157
 msgid " q = quit\n"
 msgstr " q = salir\n"
 
 #. a string with valid answers
-#: g10/pkclist.c:164
+#: g10/pkclist.c:162
 msgid "sSmMqQ"
 msgstr "iImMqQ"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:166
 msgid "Your decision? "
 msgstr "Su decisión: "
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:186
 msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr "Certificados que llevan a una clave de confianza absoluta:\n"
 
-#: g10/pkclist.c:223
+#: g10/pkclist.c:221
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -891,7 +894,7 @@ msgstr ""
 "si es posible asignar algunos valores de confianza perdidos.\n"
 "\n"
 
-#: g10/pkclist.c:261
+#: g10/pkclist.c:260
 msgid ""
 "No path leading to one of our keys found.\n"
 "\n"
@@ -899,13 +902,13 @@ msgstr ""
 "No se ha encontrado ninguna ruta con una de nuestras claves.\n"
 "\n"
 
-#: g10/pkclist.c:263
+#: g10/pkclist.c:262
 msgid ""
 "No certificates with undefined trust found.\n"
 "\n"
 msgstr "No se ha encontrado ningún certificado sin valor de confianza.\n"
 
-#: g10/pkclist.c:265
+#: g10/pkclist.c:264
 msgid ""
 "No trust values changed.\n"
 "\n"
@@ -913,31 +916,31 @@ msgstr ""
 "No se cambió ningún valor de confianza.\n"
 "\n"
 
-#: g10/pkclist.c:280
+#: g10/pkclist.c:279
 #, c-format
 msgid "key %08lX: key has been revoked!\n"
 msgstr "%08lX: ¡Esta clave ha sido retirada!\n"
 
-#: g10/pkclist.c:286 g10/pkclist.c:381
+#: g10/pkclist.c:285 g10/pkclist.c:397
 msgid "Use this key anyway? "
 msgstr "¿Usar esta clave de todas formas? "
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:309
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX: ¡Esta clave está caducada!\n"
 
-#: g10/pkclist.c:314
+#: g10/pkclist.c:315
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr "%08lX: no hay información para calcular la probabilidad de confianza\n"
 
-#: g10/pkclist.c:332
+#: g10/pkclist.c:333
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX: ¡Esta clave NO es de confianza!\n"
 
-#: g10/pkclist.c:338
+#: g10/pkclist.c:339
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -947,15 +950,15 @@ msgstr ""
 "proprietario\n"
 "pero se acepta igualmente\n"
 
-#: g10/pkclist.c:344
+#: g10/pkclist.c:345
 msgid "This key probably belongs to the owner\n"
 msgstr "Esta clave probablemente pertenece a su proprietario\n"
 
-#: g10/pkclist.c:349
+#: g10/pkclist.c:350
 msgid "This key belongs to us\n"
 msgstr "Esta clave nos pertenece\n"
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:392
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -967,56 +970,56 @@ msgstr ""
 "\"sí\" a la siguiente pregunta.\n"
 "\n"
 
-#: g10/pkclist.c:385
+#: g10/pkclist.c:405
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATENCIÓN: ¡Usando una clave no fiable!\n"
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:441
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATENCIÓN: ¡Esta clave ha sido revocada por su propietario!\n"
 
-#: g10/pkclist.c:422
+#: g10/pkclist.c:442
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "          Esto puede significar que la firma está falsificada.\n"
 
-#: g10/pkclist.c:443
+#: g10/pkclist.c:463
 msgid "Note: This key has expired!\n"
 msgstr "Nota: ¡Esta clave está caducada!\n"
 
-#: g10/pkclist.c:450
+#: g10/pkclist.c:470
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr ""
 "ATENCIÓN: ¡Esta clave no está certificada por una firma de confianza!\n"
 
-#: g10/pkclist.c:452
+#: g10/pkclist.c:472
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr "         No hay indicios de que la firma pertenezca al propietario.\n"
 
-#: g10/pkclist.c:468
+#: g10/pkclist.c:488
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATENCIÓN: ¡Esta clave NO es de confianza!\n"
 
-#: g10/pkclist.c:469
+#: g10/pkclist.c:489
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         La firma es probablemente una FALSIFICACIÓN.\n"
 
-#: g10/pkclist.c:476
+#: g10/pkclist.c:496
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "AVISO: ¡Esta clave no está certificada con suficientes firmas de confianza!\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:499
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr "         No es seguro que la firma pertenezca al propietario.\n"
 
-#: g10/pkclist.c:532 g10/pkclist.c:545 g10/pkclist.c:607 g10/pkclist.c:635
+#: g10/pkclist.c:552 g10/pkclist.c:565 g10/pkclist.c:628 g10/pkclist.c:656
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: ignorado: %s\n"
 
-#: g10/pkclist.c:554
+#: g10/pkclist.c:574
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1024,20 +1027,20 @@ msgstr ""
 "No se ha especificado un ID de usuario (puede usar \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:559
+#: g10/pkclist.c:579
 msgid "Enter the user ID: "
 msgstr "Introduzca el ID de usuario: "
 
-#: g10/pkclist.c:570
+#: g10/pkclist.c:590
 msgid "No such user ID.\n"
 msgstr "ID de usuario inexistente.\n"
 
-#: g10/pkclist.c:615
+#: g10/pkclist.c:636
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: error comprobando la clave: %s\n"
 
-#: g10/pkclist.c:641
+#: g10/pkclist.c:662
 msgid "no valid addressees\n"
 msgstr "no hay direcciones válidas\n"
 
@@ -1188,7 +1191,7 @@ msgstr "La clave caduca el %s\n"
 msgid "Is this correct (y/n)? "
 msgstr "¿Es correcto (s/n)? "
 
-#: g10/keygen.c:582
+#: g10/keygen.c:583
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1206,23 +1209,23 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:593
+#: g10/keygen.c:594
 msgid "Real name: "
 msgstr "Nombre y apellidos: "
 
-#: g10/keygen.c:597
+#: g10/keygen.c:598
 msgid "Invalid character in name\n"
 msgstr "Caracter no válido en el nombre\n"
 
-#: g10/keygen.c:599
+#: g10/keygen.c:600
 msgid "Name may not start with a digit\n"
 msgstr "El nombre no puede empezar con un número\n"
 
-#: g10/keygen.c:601
+#: g10/keygen.c:602
 msgid "Name must be at least 5 characters long\n"
 msgstr "El nombre debe tener al menos 5 caracteres\n"
 
-#: g10/keygen.c:609
+#: g10/keygen.c:610
 msgid "Email address: "
 msgstr "Dirección de correo electrónico: "
 
@@ -1238,7 +1241,12 @@ msgstr "Comentario: "
 msgid "Invalid character in comment\n"
 msgstr "Caracter no válido en el comentario\n"
 
-#: g10/keygen.c:655
+#: g10/keygen.c:657
+#, c-format
+msgid "You are using the `%s' character set.\n"
+msgstr ""
+
+#: g10/keygen.c:663
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1249,15 +1257,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:658
+#: g10/keygen.c:666
 msgid "NnCcEeOoQq"
 msgstr "NnCcDdVvSs"
 
-#: g10/keygen.c:668
+#: g10/keygen.c:676
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "¿Cambia (N)ombre, (C)omentario, (D)irección o (V)ale/(S)alir? "
 
-#: g10/keygen.c:720
+#: g10/keygen.c:728
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1265,11 +1273,11 @@ msgstr ""
 "Necesita una contraseña para proteger su clave secreta.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:728
+#: g10/keyedit.c:389 g10/keygen.c:736
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "contraseña repetida incorrecta, inténtelo de nuevo.\n"
 
-#: g10/keygen.c:734
+#: g10/keygen.c:742
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1281,7 +1289,7 @@ msgstr ""
 "la opción \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:755
+#: g10/keygen.c:763
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1294,33 +1302,33 @@ msgstr ""
 "generador de números aleatorios mayor oportunidad de recoger suficiente\n"
 "entropía.\n"
 
-#: g10/keygen.c:825
+#: g10/keygen.c:833
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "La creación de claves sólo es posible en modo interactivo\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:841
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "El par de claves DSA tendrá 1024 bits.\n"
 
-#: g10/keygen.c:839
+#: g10/keygen.c:847
 msgid "Key generation cancelled.\n"
 msgstr "Creación de claves cancelada.\n"
 
-#: g10/keygen.c:849
+#: g10/keygen.c:857
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "escribiendo certificado público en `%s'\n"
 
-#: g10/keygen.c:850
+#: g10/keygen.c:858
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "escribiendo certificado privado en `%s'\n"
 
-#: g10/keygen.c:927
+#: g10/keygen.c:935
 msgid "public and secret key created and signed.\n"
 msgstr "Claves pública y secreta creadas y firmadas.\n"
 
-#: g10/keygen.c:929
+#: g10/keygen.c:937
 #, fuzzy
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
@@ -1330,12 +1338,12 @@ msgstr ""
 "el comando \"--add-key\" para crear una clave secundaria con este "
 "propósito.\n"
 
-#: g10/keygen.c:943 g10/keygen.c:1042
+#: g10/keygen.c:951 g10/keygen.c:1050
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Creación de la clave fallida: %s\n"
 
-#: g10/keygen.c:987 g10/sig-check.c:172 g10/sign.c:52
+#: g10/keygen.c:995 g10/sig-check.c:209 g10/sign.c:52
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1343,7 +1351,7 @@ msgstr ""
 "clave pública creada %lu %s en el futuro (salto en el tiempo o problemas con "
 "el reloj)\n"
 
-#: g10/keygen.c:989 g10/sig-check.c:174 g10/sign.c:54
+#: g10/keygen.c:997 g10/sig-check.c:211 g10/sign.c:54
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1351,11 +1359,11 @@ msgstr ""
 "clave pública creada %lu %s en el futuro (salto en el tiempo o problemas con "
 "el reloj)\n"
 
-#: g10/keygen.c:1020
+#: g10/keygen.c:1028
 msgid "Really create? "
 msgstr "¿Crear de verdad? "
 
-#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:169 g10/tdbio.c:467
+#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
 #: g10/tdbio.c:527
 #, c-format
 msgid "%s: can't open: %s\n"
@@ -1366,17 +1374,17 @@ msgstr "%s: no puede abrirse: %s\n"
 msgid "error creating passphrase: %s\n"
 msgstr "error creando contraseña: %s\n"
 
-#: g10/encode.c:155 g10/encode.c:269
+#: g10/encode.c:161 g10/encode.c:275
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: atención: fichero vacío\n"
 
-#: g10/encode.c:222
+#: g10/encode.c:228
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "leyendo desde `%s'\n"
 
-#: g10/encode.c:397
+#: g10/encode.c:403
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s/%s cifrado para: %s\n"
@@ -1408,12 +1416,12 @@ msgstr "demasiados registros en la cache pk - anulada\n"
 msgid "too many entries in unk cache - disabled\n"
 msgstr "demasiados registros en la cache unk - anulada\n"
 
-#: g10/getkey.c:1496 g10/getkey.c:1552
+#: g10/getkey.c:1502 g10/getkey.c:1558
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr "usando clave secundaria %08lX en vez de clave primaria %08lX\n"
 
-#: g10/import.c:116 g10/trustdb.c:1318
+#: g10/import.c:116 g10/trustdb.c:1228
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "no puede abrirse el fichero: %s\n"
@@ -1423,12 +1431,12 @@ msgstr "no puede abrirse el fichero: %s\n"
 msgid "skipping block of type %d\n"
 msgstr "ignorando bloque de tipo %d\n"
 
-#: g10/import.c:167 g10/trustdb.c:1635 g10/trustdb.c:1704
+#: g10/import.c:167 g10/trustdb.c:1564 g10/trustdb.c:1637
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr "hasta ahora se han procesado %lu claves\n"
 
-#: g10/import.c:172 g10/trustdb.c:1394
+#: g10/import.c:172 g10/trustdb.c:1304
 #, c-format
 msgid "read error: %s\n"
 msgstr "error de lectura: %s\n"
@@ -1511,7 +1519,7 @@ msgstr "clave %08lX: clave p
 msgid "no default public keyring\n"
 msgstr "no hay anillo público por defecto\n"
 
-#: g10/import.c:374 g10/openfile.c:113 g10/sign.c:215 g10/sign.c:601
+#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "escribiendo en `%s'\n"
@@ -2081,71 +2089,75 @@ msgstr "No hay firma correspondiente en anillo secreto\n"
 msgid "No user id with index %d\n"
 msgstr "No hay ningún identificativo de usuario con el índice %d\n"
 
-#: g10/keyedit.c:1371
+#: g10/keyedit.c:1372
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "No hay ninguna clave secundaria con el índice %d\n"
 
-#: g10/mainproc.c:199
+#: g10/mainproc.c:202
 msgid "public key encrypted data: good DEK\n"
 msgstr "datos cifrados de la clave pública: DEK bueno\n"
 
-#: g10/mainproc.c:202
+#. fixme: defer this message until we have parsed all packets of
+#. * this type - do this by building a list of keys with their stati
+#. * and store it with the conetxt.  do_proc_packets can then use
+#. * this list to display some information
+#: g10/mainproc.c:209
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "descifrado de la clave pública fallido: %s\n"
 
-#: g10/mainproc.c:229
+#: g10/mainproc.c:236
 msgid "decryption okay\n"
 msgstr "descifrado correcto\n"
 
-#: g10/mainproc.c:232
+#: g10/mainproc.c:239
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "descifrado fallido: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:256
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "nota: el remitente solicitó \"sólo-para-tus-ojos\"\n"
 
-#: g10/mainproc.c:251
+#: g10/mainproc.c:258
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "nombre fichero original='%.*s'\n"
 
-#: g10/mainproc.c:831
+#: g10/mainproc.c:839
 msgid "signature verification suppressed\n"
 msgstr "suprimida la verificación de la firma\n"
 
-#: g10/mainproc.c:837
+#: g10/mainproc.c:845
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Firma creada %.*s usando identificativo de clave %s %08lX\n"
 
 #. just in case that we have no userid
-#: g10/mainproc.c:863 g10/mainproc.c:874
+#: g10/mainproc.c:871 g10/mainproc.c:882
 msgid "BAD signature from \""
 msgstr "Firma INCORRECTA de \""
 
-#: g10/mainproc.c:864 g10/mainproc.c:875
+#: g10/mainproc.c:872 g10/mainproc.c:883
 msgid "Good signature from \""
 msgstr "Firma correcta de \""
 
-#: g10/mainproc.c:866
+#: g10/mainproc.c:874
 #, fuzzy
 msgid "                aka \""
 msgstr "                       importadas: %lu"
 
-#: g10/mainproc.c:908
+#: g10/mainproc.c:916
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Imposible comprobar la firma: %s\n"
 
-#: g10/mainproc.c:981
+#: g10/mainproc.c:989
 msgid "old style (PGP 2.x) signature\n"
 msgstr "firma viejo estilo (PGP 2.x)\n"
 
-#: g10/mainproc.c:986
+#: g10/mainproc.c:994
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "paquete raíz no válido detectado en proc_tree()\n"
 
@@ -2262,29 +2274,29 @@ msgstr "Contrase
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr "Aviso: detectada clave débil - por favor cambie la contraseña.\n"
 
-#: g10/sig-check.c:155
+#: g10/sig-check.c:192
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "¡esto es una clave ElGamal generada por PGP que NO es segura para las "
 "firmas!\n"
 
-#: g10/sig-check.c:163
+#: g10/sig-check.c:200
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "lid %lu: identificativo de usuario sin firma\n"
 
-#: g10/sig-check.c:164
+#: g10/sig-check.c:201
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "lid %lu: identificativo de usuario sin firma\n"
 
-#: g10/sig-check.c:180
+#: g10/sig-check.c:217
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "atención: clave de la firma caducada el %s\n"
 
-#: g10/sig-check.c:237
+#: g10/sig-check.c:274
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr "asumiendo firma mala debido a un bit crítico desconocido\n"
 
@@ -2293,7 +2305,7 @@ msgstr "asumiendo firma mala debido a un bit cr
 msgid "%s signature from: %s\n"
 msgstr "firma %s de %s\n"
 
-#: g10/sign.c:210 g10/sign.c:596
+#: g10/sign.c:210 g10/sign.c:493
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "no puede crearse `%s': %s\n"
@@ -2307,11 +2319,16 @@ msgstr "firmando:"
 msgid "WARNING: `%s' is an empty file\n"
 msgstr "atención: '%s' es un fichero vacío\n"
 
-#: g10/textfilter.c:199
+#: g10/textfilter.c:122
 #, fuzzy, c-format
 msgid "can't handle text lines longer than %d characters\n"
 msgstr "armadura inválida: línea más larga de %d caracteres\n"
 
+#: g10/textfilter.c:189
+#, fuzzy, c-format
+msgid "input line longer than %d characters\n"
+msgstr "armadura inválida: línea más larga de %d caracteres\n"
+
 #: g10/tdbio.c:117 g10/tdbio.c:1448
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
@@ -2332,12 +2349,12 @@ msgstr "transacci
 msgid "%s: can't access: %s\n"
 msgstr "%s: no puede abrirse: %s\n"
 
-#: g10/ringedit.c:294 g10/tdbio.c:444
+#: g10/ringedit.c:296 g10/tdbio.c:444
 #, c-format
 msgid "%s: can't create directory: %s\n"
 msgstr "%s: no puede crearse el directorio: %s\n"
 
-#: g10/ringedit.c:300 g10/tdbio.c:447
+#: g10/ringedit.c:302 g10/tdbio.c:447
 #, c-format
 msgid "%s: directory created\n"
 msgstr "%s: se ha creado el directorio\n"
@@ -2347,7 +2364,7 @@ msgstr "%s: se ha creado el directorio\n"
 msgid "%s: directory does not exist!\n"
 msgstr "%s: el directorio no existe\n"
 
-#: g10/openfile.c:109 g10/openfile.c:176 g10/ringedit.c:1310 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: no puede crearse: %s\n"
@@ -2443,166 +2460,166 @@ msgstr "%s: fallo en poner a cero un registro: %s\n"
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s: fallo al añadir un registro: %s\n"
 
-#: g10/trustdb.c:144
+#: g10/trustdb.c:165
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "La base de datos de confianza está dañada. Por favor, ejecute\n"
 "\"gpgm --fix-trust-db\".\n"
 
-#: g10/trustdb.c:157
+#: g10/trustdb.c:178
 #, c-format
 msgid "trust record %lu, req type %d: read failed: %s\n"
 msgstr "registro de confianza %lu, petición tipo %d: fallo lectura: %s\n"
 
-#: g10/trustdb.c:172
+#: g10/trustdb.c:193
 #, c-format
 msgid "trust record %lu, type %d: write failed: %s\n"
 msgstr "registro de confianza %lu, tipo %d: fallo escritura: %s\n"
 
-#: g10/trustdb.c:186
+#: g10/trustdb.c:207
 #, c-format
 msgid "trust record %lu: delete failed: %s\n"
 msgstr "registro de confianza %lu: fallo al borrar: %s\n"
 
-#: g10/trustdb.c:200
+#: g10/trustdb.c:221
 #, c-format
 msgid "trustdb: sync failed: %s\n"
 msgstr "base de datos de confianza: fallo sincronización: %s\n"
 
-#: g10/trustdb.c:329
+#: g10/trustdb.c:351
 #, c-format
 msgid "error reading dir record for LID %lu: %s\n"
 msgstr "error lectura registro de directorio del LID %lu: %s\n"
 
-#: g10/trustdb.c:336
+#: g10/trustdb.c:358
 #, c-format
 msgid "lid %lu: expected dir record, got type %d\n"
 msgstr "lid %lu: esperaba registro directorio, encontrado tipo %d\n"
 
-#: g10/trustdb.c:341
+#: g10/trustdb.c:363
 #, c-format
 msgid "no primary key for LID %lu\n"
 msgstr "no hay clave primaria para el LID %lu\n"
 
-#: g10/trustdb.c:346
+#: g10/trustdb.c:368
 #, c-format
 msgid "error reading primary key for LID %lu: %s\n"
 msgstr "error lectura clave primaria para el LID %lu: %s\n"
 
-#: g10/trustdb.c:422
+#: g10/trustdb.c:445
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "registro de firma encadenado %lu tiene el propietario equivocado\n"
 
-#: g10/trustdb.c:465
+#: g10/trustdb.c:488
 #, c-format
 msgid "'%s' is not a valid long keyID\n"
 msgstr "'%s' no es un identificativo largo de clave válido\n"
 
-#: g10/trustdb.c:500
+#: g10/trustdb.c:523
 #, c-format
 msgid "key %08lX: no public key for trusted key - skipped\n"
 msgstr "clave %08lX: clave de confianza sin clave pública - ignorada\n"
 
-#: g10/trustdb.c:509 g10/trustdb.c:567
+#: g10/trustdb.c:532 g10/trustdb.c:590
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "clave %08lX: imposible incluirla en la base de datos de confianza\n"
 
-#: g10/trustdb.c:514 g10/trustdb.c:573
+#: g10/trustdb.c:537 g10/trustdb.c:596
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "clave %08lX: petición de registro fallida\n"
 
-#: g10/trustdb.c:519 g10/trustdb.c:582
+#: g10/trustdb.c:542 g10/trustdb.c:605
 #, c-format
 msgid "key %08lX: already in trusted key table\n"
 msgstr "clave %08lX: ya está en la tabla de confianza\n"
 
-#: g10/trustdb.c:522 g10/trustdb.c:585
+#: g10/trustdb.c:545 g10/trustdb.c:608
 #, c-format
 msgid "key %08lX: accepted as trusted key.\n"
 msgstr "clave %08lX: aceptada como clave de confianza.\n"
 
-#: g10/trustdb.c:538
+#: g10/trustdb.c:561
 #, c-format
 msgid "NOTE: secret key %08lX is NOT protected.\n"
 msgstr "NOTA: la clave secreta %08lX NO está protegida.\n"
 
-#: g10/trustdb.c:550
+#: g10/trustdb.c:573
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "clave %08lX: clave secreta sin clave pública - ignorada\n"
 
-#: g10/trustdb.c:557
+#: g10/trustdb.c:580
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr "clave %08lX: las claves pública y secreta no se corresponden\n"
 
-#: g10/trustdb.c:593
+#: g10/trustdb.c:616
 #, c-format
 msgid "enumerate secret keys failed: %s\n"
 msgstr "enum_secret_keys fallido: %s\n"
 
-#: g10/trustdb.c:776
+#: g10/trustdb.c:770
 #, c-format
 msgid "lid %lu: read dir record failed: %s\n"
 msgstr "lid %lu: lectura registro de directorio fallida: %s\n"
 
-#: g10/trustdb.c:785
+#: g10/trustdb.c:779
 #, c-format
 msgid "lid %lu: read key record failed: %s\n"
 msgstr "lid %lu: lectura registro de clave fallida: %s\n"
 
-#: g10/trustdb.c:795
+#: g10/trustdb.c:789
 #, c-format
 msgid "lid %lu: read uid record failed: %s\n"
 msgstr "lid %lu: lectura registro identificativo fallida: %s\n"
 
-#: g10/trustdb.c:804
+#: g10/trustdb.c:798
 #, c-format
 msgid "lid %lu: read pref record failed: %s\n"
 msgstr "lid %lu: lectura registro preferencias fallida: %s\n"
 
-#: g10/trustdb.c:814
+#: g10/trustdb.c:808
 #, c-format
 msgid "lid %lu: read sig record failed: %s\n"
 msgstr "lid %lu: lectura registro firma fallida: %s\n"
 
-#: g10/trustdb.c:1151
+#: g10/trustdb.c:1037
 msgid "Ooops, no keys\n"
 msgstr "Oh oh, no hay claves\n"
 
-#: g10/trustdb.c:1155
+#: g10/trustdb.c:1041
 msgid "Ooops, no user ids\n"
 msgstr "Oh oh, no hay identificativos de usuario\n"
 
-#: g10/trustdb.c:1226 g10/trustdb.c:1244
+#: g10/trustdb.c:1134 g10/trustdb.c:1152
 #, c-format
 msgid "user '%s' read problem: %s\n"
 msgstr "problema de lectura usuario '%s': %s\n"
 
-#: g10/trustdb.c:1229 g10/trustdb.c:1247
+#: g10/trustdb.c:1137 g10/trustdb.c:1155
 #, c-format
 msgid "user '%s' list problem: %s\n"
 msgstr "problema lista usuario '%s': %s\n"
 
-#: g10/trustdb.c:1237 g10/trustdb.c:1485
+#: g10/trustdb.c:1145 g10/trustdb.c:1447
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "usuario '%s' no encontrado: %s\n"
 
-#: g10/trustdb.c:1239 g10/trustdb.c:1487
+#: g10/trustdb.c:1147 g10/trustdb.c:1449
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "problema buscando '%s' en la tabla de confianza: %s\n"
 
-#: g10/trustdb.c:1242
+#: g10/trustdb.c:1150
 #, c-format
 msgid "user '%s' not in trustdb\n"
 msgstr "usuario '%s' no está en la tabla de confianza\n"
 
-#: g10/trustdb.c:1277
+#: g10/trustdb.c:1186
 #, c-format
 msgid ""
 "# List of assigned trustvalues, created %s\n"
@@ -2611,205 +2628,205 @@ msgstr ""
 "# Lista de valores de confianza, creada el %s\n"
 "# (Puede usar \"gpgm --import-ownertrust\" para restablecerlos)\n"
 
-#: g10/trustdb.c:1283
+#: g10/trustdb.c:1192
 msgid "directory record w/o primary key\n"
 msgstr "registro de directorio sin clave primaria\n"
 
-#: g10/trustdb.c:1290
+#: g10/trustdb.c:1199
 #, c-format
 msgid "error reading key record: %s\n"
 msgstr "error lectura registro de clave: %s\n"
 
-#: g10/trustdb.c:1330
+#: g10/trustdb.c:1240
 msgid "line too long\n"
 msgstr "linea demasiado larga\n"
 
-#: g10/trustdb.c:1338
+#: g10/trustdb.c:1248
 msgid "error: missing colon\n"
 msgstr "error: falta ':'\n"
 
-#: g10/trustdb.c:1343
+#: g10/trustdb.c:1253
 msgid "error: invalid fingerprint\n"
 msgstr "error: huella dactilar no válida\n"
 
-#: g10/trustdb.c:1347
+#: g10/trustdb.c:1257
 msgid "error: no ownertrust value\n"
 msgstr "error: no hay valor de confianza del propietario\n"
 
-#: g10/trustdb.c:1372
+#: g10/trustdb.c:1282
 msgid "key not in trustdb, searching ring.\n"
 msgstr "la clave no está en tabla de confianza, buscando en el anillo.\n"
 
-#: g10/trustdb.c:1375
+#: g10/trustdb.c:1285
 #, c-format
 msgid "key not in ring: %s\n"
 msgstr "la clave no está en el anillo: %s\n"
 
-#: g10/trustdb.c:1379
+#: g10/trustdb.c:1289
 msgid "Oops: key is now in trustdb???\n"
 msgstr "Oh oh: la clave ahora está en la tabla de confianza???\n"
 
 #. update the ownertrust
-#: g10/trustdb.c:1384
+#: g10/trustdb.c:1294
 #, c-format
 msgid "insert trust record failed: %s\n"
 msgstr "inserción del registro de confianza fallida: %s\n"
 
 #. error
-#: g10/trustdb.c:1390
+#: g10/trustdb.c:1300
 #, c-format
 msgid "error finding dir record: %s\n"
 msgstr "error buscando registro de directorio: %s\n"
 
-#: g10/trustdb.c:1490
+#: g10/trustdb.c:1452
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "usuario '%s' no está en la tabla de confianza - insertando\n"
 
-#: g10/trustdb.c:1493
+#: g10/trustdb.c:1455
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "fallo al poner '%s' en la tabla de confianza: %s\n"
 
-#: g10/trustdb.c:1565
+#: g10/trustdb.c:1494
 #, c-format
 msgid "%s: keyblock read problem: %s\n"
 msgstr "%s: problema lectura del bloque de clave: %s\n"
 
-#: g10/trustdb.c:1579
+#: g10/trustdb.c:1508
 #, c-format
 msgid "%s: update failed: %s\n"
 msgstr "%s: actualización fallida: %s\n"
 
-#: g10/trustdb.c:1582
+#: g10/trustdb.c:1511
 #, c-format
 msgid "%s: updated\n"
 msgstr "%s: actualizada\n"
 
-#: g10/trustdb.c:1584
+#: g10/trustdb.c:1513
 #, c-format
 msgid "%s: okay\n"
 msgstr "%s: bien\n"
 
-#: g10/trustdb.c:1599
+#: g10/trustdb.c:1528
 #, c-format
 msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr "lid %lu: registro de directiorio sin clave - ignorado\n"
 
-#: g10/trustdb.c:1612
+#: g10/trustdb.c:1541
 #, c-format
 msgid "lid %lu: keyblock not found: %s\n"
 msgstr "lid %lu: bloque de clave no encontrado: %s\n"
 
-#: g10/trustdb.c:1621 g10/trustdb.c:1690
+#: g10/trustdb.c:1550 g10/trustdb.c:1623
 #, c-format
 msgid "lid %lu: update failed: %s\n"
 msgstr "lid %lu: actualización fallida: %s\n"
 
-#: g10/trustdb.c:1627 g10/trustdb.c:1696
+#: g10/trustdb.c:1556 g10/trustdb.c:1629
 #, c-format
 msgid "lid %lu: updated\n"
 msgstr "lid %lu: actualizado\n"
 
-#: g10/trustdb.c:1631 g10/trustdb.c:1700
+#: g10/trustdb.c:1560 g10/trustdb.c:1633
 #, c-format
 msgid "lid %lu: okay\n"
 msgstr "lid %lu: bien\n"
 
-#: g10/trustdb.c:1638 g10/trustdb.c:1706
+#: g10/trustdb.c:1567 g10/trustdb.c:1639
 #, c-format
 msgid "%lu keys processed\n"
 msgstr "se han procesado %lu claves\n"
 
-#: g10/trustdb.c:1640
+#: g10/trustdb.c:1569
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr "\t%lu claves ignoradas\n"
 
-#: g10/trustdb.c:1642 g10/trustdb.c:1708
+#: g10/trustdb.c:1571 g10/trustdb.c:1641
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr "\t%lu claves con errores\n"
 
-#: g10/trustdb.c:1644 g10/trustdb.c:1710
+#: g10/trustdb.c:1573 g10/trustdb.c:1643
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr "\t%lu claves actualizadas\n"
 
-#: g10/trustdb.c:1674
+#: g10/trustdb.c:1607
 #, c-format
 msgid "lid ?: insert failed: %s\n"
 msgstr "lid ?: inserción fallida: %s\n"
 
-#: g10/trustdb.c:1679
+#: g10/trustdb.c:1612
 #, c-format
 msgid "lid %lu: insert failed: %s\n"
 msgstr "lid %lu: inserción fallida: %s\n"
 
-#: g10/trustdb.c:1685
+#: g10/trustdb.c:1618
 #, c-format
 msgid "lid %lu: inserted\n"
 msgstr "lid %lu: insertada\n"
 
-#: g10/trustdb.c:1712
+#: g10/trustdb.c:1645
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr "\t%lu claves insertadas\n"
 
-#: g10/trustdb.c:1715
+#: g10/trustdb.c:1648
 #, c-format
 msgid "enumerate keyblocks failed: %s\n"
 msgstr "enumeración bloques de clave fallido: %s\n"
 
-#: g10/trustdb.c:1760
+#: g10/trustdb.c:1694
 #, c-format
 msgid "check_trust: search dir record failed: %s\n"
 msgstr "check_trust: búsqueda registro directorio fallida: %s\n"
 
-#: g10/trustdb.c:1767
+#: g10/trustdb.c:1701
 #, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
 
-#: g10/trustdb.c:1771
+#: g10/trustdb.c:1705
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "clave %08lX.%lu: incluida en la base de datos de confianza\n"
 
-#: g10/trustdb.c:1779
+#: g10/trustdb.c:1713
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "clave %08lX.%lu: creada en el futuro (salto en el tiempo o\n"
 "problemas con el reloj)\n"
 
-#: g10/trustdb.c:1786
+#: g10/trustdb.c:1720
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "clave %08lX.%lu: caducada el %s\n"
 
-#: g10/trustdb.c:1794
+#: g10/trustdb.c:1728
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "clave %08lX.%lu: comprobación de confianza fallida: %s\n"
 
-#: g10/trustdb.c:2003 g10/trustdb.c:2032 g10/trustdb.c:2771
+#: g10/trustdb.c:1951 g10/trustdb.c:1981 g10/trustdb.c:2734
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr "ATENCÍON: todavía no puedo tratar registros de preferencias largos\n"
 
-#: g10/trustdb.c:2054
+#: g10/trustdb.c:2003
 #, c-format
 msgid "get_dir_record: search_record failed: %s\n"
 msgstr "get_dir_record: search_record fallida: %s\n"
 
-#: g10/trustdb.c:2117
+#: g10/trustdb.c:2071
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 msgstr ""
 "NOTA: el registro de firma %lu[%d] está en la lista\n"
 "de búsqueda de %lu pero está marcado como comprobado\n"
 
-#: g10/trustdb.c:2121
+#: g10/trustdb.c:2075
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr ""
@@ -2817,187 +2834,187 @@ msgstr ""
 "de búsqueda de %lu pero no está marcado\n"
 
 #. we need the dir record
-#: g10/trustdb.c:2128
+#: g10/trustdb.c:2082
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr ""
 "El registro de firma %lu[%d] en la lista de búsqueda de %lu\n"
 "no apunta a un registro de directorio\n"
 
-#: g10/trustdb.c:2134
+#: g10/trustdb.c:2088
 #, c-format
 msgid "lid %lu: no primary key\n"
 msgstr "lid %lu: ninguna clave primaria\n"
 
-#: g10/trustdb.c:2167
+#: g10/trustdb.c:2121
 #, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr ""
 "lid %lu: no se ha encontrado identificativo de usuario\n"
 "en el bloque de clave\n"
 
-#: g10/trustdb.c:2171
+#: g10/trustdb.c:2125
 #, c-format
 msgid "lid %lu: user id without signature\n"
 msgstr "lid %lu: identificativo de usuario sin firma\n"
 
-#: g10/trustdb.c:2178
+#: g10/trustdb.c:2132
 #, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr "lid %lu: autofirma en lista de búsqueda\n"
 
-#: g10/trustdb.c:2189 g10/trustdb.c:2910 g10/trustdb.c:2994
+#: g10/trustdb.c:2143 g10/trustdb.c:2879 g10/trustdb.c:2962
 msgid "Valid certificate revocation"
 msgstr "Revocación de certificado válida"
 
-#: g10/trustdb.c:2190 g10/trustdb.c:2911 g10/trustdb.c:2995
+#: g10/trustdb.c:2144 g10/trustdb.c:2880 g10/trustdb.c:2963
 msgid "Good certificate"
 msgstr "Certificado bueno"
 
-#: g10/trustdb.c:2199
+#: g10/trustdb.c:2153
 msgid "very strange: no public key\n"
 msgstr "muy raro: no hay clave pública\n"
 
-#: g10/trustdb.c:2247
+#: g10/trustdb.c:2201
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr ""
 "la lista de búsqueda %lu[%d] de %lu no apunta a\n"
 "un registro de directorio\n"
 
-#: g10/trustdb.c:2253
+#: g10/trustdb.c:2207
 #, c-format
 msgid "lid %lu does not have a key\n"
 msgstr "lid %lu no dispone de clave\n"
 
-#: g10/trustdb.c:2263
+#: g10/trustdb.c:2217
 #, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr "lid %lu: no puedo obtener el bloque de clave: %s\n"
 
-#: g10/trustdb.c:2320 g10/trustdb.c:3245
+#: g10/trustdb.c:2274 g10/trustdb.c:3227
 #, c-format
 msgid "tdbio_search_dir failed: %s\n"
 msgstr "tdbio_search_dir fallida: %s\n"
 
-#: g10/trustdb.c:2473
+#: g10/trustdb.c:2427
 #, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
 msgstr "clave %08lX.%lu: buena unión de sub-clave\n"
 
-#: g10/trustdb.c:2479 g10/trustdb.c:2521
+#: g10/trustdb.c:2433 g10/trustdb.c:2475
 #, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
 msgstr "clave %08lX.%lu: unión de sub-clave no válida\n"
 
-#: g10/trustdb.c:2494
+#: g10/trustdb.c:2448
 #, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
 msgstr "clave %08lX.%lu: revocación de clave válida\n"
 
-#: g10/trustdb.c:2500
+#: g10/trustdb.c:2454
 #, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
 msgstr "clave %08lX.%lu: revocación de clave no válida: %s\n"
 
-#: g10/trustdb.c:2515
+#: g10/trustdb.c:2469
 #, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
 msgstr "clave %08lX.%lu: revocación de sub-clave válida\n"
 
-#: g10/trustdb.c:2615
+#: g10/trustdb.c:2573
 msgid "Good self-signature"
 msgstr "autofirma buena"
 
-#: g10/trustdb.c:2626
+#: g10/trustdb.c:2584
 msgid "Invalid self-signature"
 msgstr "autofirma no válida"
 
-#: g10/trustdb.c:2636
+#: g10/trustdb.c:2594
 msgid "Valid user ID revocation skipped due to a newer self signature\n"
 msgstr ""
 "Revocación válida de identificativo de usuario ignorada debido auna "
 "autofirma más reciente\n"
 
-#: g10/trustdb.c:2643
+#: g10/trustdb.c:2601
 msgid "Valid user ID revocation\n"
 msgstr "Revocación identificativo de usuario válida.\n"
 
-#: g10/trustdb.c:2650
+#: g10/trustdb.c:2608
 #, fuzzy
 msgid "Invalid user ID revocation"
 msgstr "Revocación identificativo de usuario no válida.\n"
 
-#: g10/trustdb.c:2734
+#: g10/trustdb.c:2697
 msgid "Too many preferences"
 msgstr "demasiadas preferencias"
 
-#: g10/trustdb.c:2748
+#: g10/trustdb.c:2711
 msgid "Too many preference items"
 msgstr "demasiados items de preferencias"
 
-#: g10/trustdb.c:2888
+#: g10/trustdb.c:2857
 #, fuzzy
 msgid "duplicated certificate - deleted"
 msgstr "Certificado duplicado - eliminado"
 
-#: g10/trustdb.c:2922
+#: g10/trustdb.c:2891
 msgid "Hmmm, public key lost?"
 msgstr "Oh oh, ¿se ha perdido la clave pública?"
 
-#: g10/trustdb.c:2932 g10/trustdb.c:3015
+#: g10/trustdb.c:2900 g10/trustdb.c:2983
 msgid "Invalid certificate revocation"
 msgstr "Certificado de revocación incorrecto"
 
-#: g10/trustdb.c:2933 g10/trustdb.c:3016
+#: g10/trustdb.c:2901 g10/trustdb.c:2984
 msgid "Invalid certificate"
 msgstr "Certificado incorrecto"
 
-#: g10/trustdb.c:2948
+#: g10/trustdb.c:2916
 #, c-format
 msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
 msgstr ""
 
-#: g10/trustdb.c:2962
+#: g10/trustdb.c:2930
 #, c-format
 msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr "registro de firma %lu[%d] apunta al registro equivocado.\n"
 
 #. that should never happen
-#: g10/trustdb.c:3215
+#: g10/trustdb.c:3190
 #, c-format
 msgid "insert_trust_record: keyblock not found: %s\n"
 msgstr "insert_trust_record: bloque de clave no encontrado: %s\n"
 
-#: g10/trustdb.c:3233
+#: g10/trustdb.c:3215
 msgid "did not use primary key for insert_trust_record()\n"
 msgstr "no se usó clave primaria para insert_trust_record()\n"
 
-#: g10/ringedit.c:314
+#: g10/ringedit.c:316
 #, c-format
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s: no se puede crear el anillo: %s\n"
 
-#: g10/ringedit.c:320 g10/ringedit.c:1315
+#: g10/ringedit.c:322 g10/ringedit.c:1330
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s: anillo creado\n"
 
-#: g10/ringedit.c:1492
+#: g10/ringedit.c:1507
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr "ATENCIÓN: existen 2 ficheros con información confidencial.\n"
 
-#: g10/ringedit.c:1493
+#: g10/ringedit.c:1508
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s es el que no se ha modificado\n"
 
-#: g10/ringedit.c:1494
+#: g10/ringedit.c:1509
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s es el nuevo\n"
 
-#: g10/ringedit.c:1495
+#: g10/ringedit.c:1510
 msgid "Please fix this possible security flaw\n"
 msgstr "Por favor arregle este posible fallo de seguridad\n"
 
@@ -3033,12 +3050,12 @@ msgstr "
 msgid "writing to stdout\n"
 msgstr "escribiendo en stdout\n"
 
-#: g10/openfile.c:145
+#: g10/openfile.c:147
 #, c-format
 msgid "assuming signed data in `%s'\n"
 msgstr "asumiendo que hay datos firmados en `%s'\n"
 
-#: g10/openfile.c:192
+#: g10/openfile.c:197
 #, c-format
 msgid "%s: new options file created\n"
 msgstr "%s: se ha creado un nuevo fichero de opciones\n"
index 85fc126..142bf0d 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg 0.9.0a\n"
-"POT-Creation-Date: 1999-02-19 15:31+0100\n"
+"POT-Creation-Date: 1999-03-08 19:50+0100\n"
 "PO-Revision-Date: 1999-01-09 00:25+01:00\n"
 "Last-Translator: Gaël Quéri <gqueri@mail.dotcom.fr>\n"
 "Language-Team: French <fr@li.org>\n"
@@ -13,15 +13,15 @@ msgstr ""
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8-bit\n"
 
-#: util/secmem.c:77
+#: util/secmem.c:76
 msgid "Warning: using insecure memory!\n"
 msgstr "Attention : utilisation de la mémoire non sûre !\n"
 
-#: util/secmem.c:250
+#: util/secmem.c:249
 msgid "operation is not possible without initialized secure memory\n"
 msgstr ""
 
-#: util/secmem.c:251
+#: util/secmem.c:250
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
@@ -254,7 +254,7 @@ msgstr ""
 "N'UTILISEZ PAS LES DONNÉES GÉNÉRÉES PAR CE PROGRAMME!!\n"
 "\n"
 
-#: cipher/rndlinux.c:118
+#: cipher/rndlinux.c:114
 #, c-format
 msgid ""
 "\n"
@@ -442,7 +442,10 @@ msgstr "devenir beaucoup plus silencieux"
 msgid "force v3 signatures"
 msgstr "forcer les signatures en v3"
 
-#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:235
+msgid "do not make any changes"
+msgstr ""
+
 #: g10/g10.c:236
 msgid "batch mode: never ask"
 msgstr "mode automatique : ne jamais rien demander"
@@ -630,122 +633,122 @@ msgstr "fichier d'options `%s' : %s\n"
 msgid "reading options from `%s'\n"
 msgstr "lire les options de `%s'\n"
 
-#: g10/g10.c:796
+#: g10/g10.c:797
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s n'est pas une table de caractères valide\n"
 
-#: g10/g10.c:836 g10/g10.c:848
+#: g10/g10.c:837 g10/g10.c:849
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algorithme de chiffrement sélectionné est invalide\n"
 
-#: g10/g10.c:842 g10/g10.c:854
+#: g10/g10.c:843 g10/g10.c:855
 msgid "selected digest algorithm is invalid\n"
 msgstr "la fonction de hachage sélectionnée est invalide\n"
 
-#: g10/g10.c:857
+#: g10/g10.c:858
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "l'algorithme de compression doit faire partie de l'échelle %d..%d\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:860
 msgid "completes-needed must be greater than 0\n"
 msgstr "« completes-needed » doit être supérieur à 0\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:862
 msgid "marginals-needed must be greater than 1\n"
 msgstr "« marginals-needed » doit être supérieur à 1\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:864
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "« max-cert-depth » doit être compris entre 1 et 255\n"
 
-#: g10/g10.c:866
+#: g10/g10.c:867
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "NOTE : le mode S2K simple (0) est fortement déconseillé\n"
 
-#: g10/g10.c:870
+#: g10/g10.c:871
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "mode S2K invalide ; doit être 0, 1 ou 3\n"
 
-#: g10/g10.c:947
+#: g10/g10.c:948
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "n'a pas pu initialiser la base de confiance : %s\n"
 
-#: g10/g10.c:953
+#: g10/g10.c:954
 msgid "--store [filename]"
 msgstr "--store [nom du fichier]"
 
-#: g10/g10.c:961
+#: g10/g10.c:962
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nom du fichier]"
 
-#: g10/g10.c:969
+#: g10/g10.c:970
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nom du fichier]"
 
-#: g10/g10.c:982
+#: g10/g10.c:983
 msgid "--sign [filename]"
 msgstr "--sign [nom du fichier]"
 
-#: g10/g10.c:995
+#: g10/g10.c:996
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nom du fichier]"
 
-#: g10/g10.c:1009
+#: g10/g10.c:1010
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nom du fichier]"
 
-#: g10/g10.c:1021
+#: g10/g10.c:1022
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nom du fichier]"
 
-#: g10/g10.c:1030
+#: g10/g10.c:1031
 msgid "--edit-key username [commands]"
 msgstr "--edit-key utilisateur [commandes]"
 
-#: g10/g10.c:1046
+#: g10/g10.c:1047
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key utilisateur"
 
-#: g10/g10.c:1049
+#: g10/g10.c:1050
 msgid "--delete-key username"
 msgstr "--delete-key utilisateur"
 
-#: g10/encode.c:216 g10/g10.c:1072 g10/sign.c:311
+#: g10/encode.c:222 g10/g10.c:1073 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "ne peut ouvrir %s: %s\n"
 
-#: g10/g10.c:1083
+#: g10/g10.c:1084
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [utilisateur] [porte-clés]"
 
-#: g10/g10.c:1144
+#: g10/g10.c:1145
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "suppression d'armure non réussie : %s\n"
 
-#: g10/g10.c:1152
+#: g10/g10.c:1153
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "construction d'armure non réussie : %s \n"
 
-#: g10/g10.c:1218
+#: g10/g10.c:1219
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algorithme de hachage `%s' invalide\n"
 
-#: g10/g10.c:1297
+#: g10/g10.c:1298
 msgid "[filename]"
 msgstr "[nom du fichier]"
 
-#: g10/g10.c:1301
+#: g10/g10.c:1302
 msgid "Go ahead and type your message ...\n"
 msgstr "Continuez et tapez votre message...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1304 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1305 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "ne peut ouvrir `%s'\n"
@@ -823,7 +826,7 @@ msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
 
-#: g10/pkclist.c:138
+#: g10/pkclist.c:136
 #, c-format
 msgid ""
 "No trust value assigned to %lu:\n"
@@ -832,7 +835,7 @@ msgstr ""
 "Pas de confiance définie pour %lu :\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:148
+#: g10/pkclist.c:146
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -854,28 +857,28 @@ msgstr ""
 " 4 = je le crois totalement\n"
 " s = montrez moi plus d'informations\n"
 
-#: g10/pkclist.c:157
+#: g10/pkclist.c:155
 msgid " m = back to the main menu\n"
 msgstr " m = retour au menu principal\n"
 
-#: g10/pkclist.c:159
+#: g10/pkclist.c:157
 msgid " q = quit\n"
 msgstr " q = quitter\n"
 
 #. a string with valid answers
-#: g10/pkclist.c:164
+#: g10/pkclist.c:162
 msgid "sSmMqQ"
 msgstr "sSmMqQ"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:166
 msgid "Your decision? "
 msgstr "Votre décision ? "
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:186
 msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr "Certificats conduisant vers une clé à confiance ultime :\n"
 
-#: g10/pkclist.c:223
+#: g10/pkclist.c:221
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -884,7 +887,7 @@ msgstr ""
 "N'a pas pu trouver un chemin de confiance valide jusqu'à la clé. Voyons si\n"
 "nous ne pouvons pas assigner quelques indices de confiance manquants.\n"
 
-#: g10/pkclist.c:261
+#: g10/pkclist.c:260
 msgid ""
 "No path leading to one of our keys found.\n"
 "\n"
@@ -892,7 +895,7 @@ msgstr ""
 "Aucun chemin menant vers une de nos clés n'a été trouvé.\n"
 "\n"
 
-#: g10/pkclist.c:263
+#: g10/pkclist.c:262
 msgid ""
 "No certificates with undefined trust found.\n"
 "\n"
@@ -900,7 +903,7 @@ msgstr ""
 "Aucun certificat à confiance indéfinie n'a été trouvé.\n"
 "\n"
 
-#: g10/pkclist.c:265
+#: g10/pkclist.c:264
 msgid ""
 "No trust values changed.\n"
 "\n"
@@ -908,31 +911,31 @@ msgstr ""
 "Pas d'indice de confiance changé.\n"
 "\n"
 
-#: g10/pkclist.c:280
+#: g10/pkclist.c:279
 #, c-format
 msgid "key %08lX: key has been revoked!\n"
 msgstr "clé %08lX : la clé a été révoquée !\n"
 
-#: g10/pkclist.c:286 g10/pkclist.c:381
+#: g10/pkclist.c:285 g10/pkclist.c:397
 msgid "Use this key anyway? "
 msgstr "Utiliser cette clé quand-même ? "
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:309
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX : la clé a expiré\n"
 
-#: g10/pkclist.c:314
+#: g10/pkclist.c:315
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr "%08lX : pas d'information pour calculer une probabilité de confiance\n"
 
-#: g10/pkclist.c:332
+#: g10/pkclist.c:333
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX : Nous ne faisons PAS confiance à cette clé\n"
 
-#: g10/pkclist.c:338
+#: g10/pkclist.c:339
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -942,15 +945,15 @@ msgstr ""
 "propriétaire\n"
 "mais elle est quand même acceptée\n"
 
-#: g10/pkclist.c:344
+#: g10/pkclist.c:345
 msgid "This key probably belongs to the owner\n"
 msgstr "Cette clé appartient probablement à son propriétaire\n"
 
-#: g10/pkclist.c:349
+#: g10/pkclist.c:350
 msgid "This key belongs to us\n"
 msgstr "Cette clé nous appartient\n"
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:392
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -962,58 +965,58 @@ msgstr ""
 "oui à la prochaine question\n"
 "\n"
 
-#: g10/pkclist.c:385
+#: g10/pkclist.c:405
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATTENTION : Utilisation d'une clé sans confiance !\n"
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:441
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATTENTION : Cette clé à été révoquée par son propriétaire !\n"
 
-#: g10/pkclist.c:422
+#: g10/pkclist.c:442
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Cela pourrait signifier que la signature est fausse.\n"
 
-#: g10/pkclist.c:443
+#: g10/pkclist.c:463
 msgid "Note: This key has expired!\n"
 msgstr "Note : Cette clé a expiré !\n"
 
-#: g10/pkclist.c:450
+#: g10/pkclist.c:470
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr ""
 "ATTENTION : Cette clé n'est pas certifiée avec une signature de confiance !\n"
 
-#: g10/pkclist.c:452
+#: g10/pkclist.c:472
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr "         Rien ne dit que la signature appartient à son propriétaire.\n"
 
-#: g10/pkclist.c:468
+#: g10/pkclist.c:488
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATTENTION : Nous ne faisons PAS confiance à cette clé !\n"
 
-#: g10/pkclist.c:469
+#: g10/pkclist.c:489
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         La signature est certainement FAUSSE.\n"
 
-#: g10/pkclist.c:476
+#: g10/pkclist.c:496
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "ATTENTION : Les signatures de cette clé n'ont pas une confiance suffisante "
 "!\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:499
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 "         Il n'est pas sûr que la signature appartient à son propriétaire.\n"
 
-#: g10/pkclist.c:532 g10/pkclist.c:545 g10/pkclist.c:607 g10/pkclist.c:635
+#: g10/pkclist.c:552 g10/pkclist.c:565 g10/pkclist.c:628 g10/pkclist.c:656
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s : ignoré : %s\n"
 
-#: g10/pkclist.c:554
+#: g10/pkclist.c:574
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1022,20 +1025,20 @@ msgstr ""
 "\"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:559
+#: g10/pkclist.c:579
 msgid "Enter the user ID: "
 msgstr "Entrez le nom d'utilisateur : "
 
-#: g10/pkclist.c:570
+#: g10/pkclist.c:590
 msgid "No such user ID.\n"
 msgstr "Pas de tel utilisateur.\n"
 
-#: g10/pkclist.c:615
+#: g10/pkclist.c:636
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s : erreur pendant la vérification de la clé : %s\n"
 
-#: g10/pkclist.c:641
+#: g10/pkclist.c:662
 msgid "no valid addressees\n"
 msgstr "pas de destinataire valide\n"
 
@@ -1187,7 +1190,7 @@ msgstr "La cl
 msgid "Is this correct (y/n)? "
 msgstr "Est-ce correct (o/n) ? "
 
-#: g10/keygen.c:582
+#: g10/keygen.c:583
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1203,24 +1206,24 @@ msgstr ""
 "   « Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de> »\n"
 "\n"
 
-#: g10/keygen.c:593
+#: g10/keygen.c:594
 msgid "Real name: "
 msgstr "Nom réel : "
 
-#: g10/keygen.c:597
+#: g10/keygen.c:598
 msgid "Invalid character in name\n"
 msgstr "Caractère invalide dans le nom\n"
 
-#: g10/keygen.c:599
+#: g10/keygen.c:600
 msgid "Name may not start with a digit\n"
 msgstr "Le nom ne doit pas commencer avec un chiffre\n"
 
 # ??? c'est de la discrimination...
-#: g10/keygen.c:601
+#: g10/keygen.c:602
 msgid "Name must be at least 5 characters long\n"
 msgstr "Le nom doit faire au moins 5 caractères de long\n"
 
-#: g10/keygen.c:609
+#: g10/keygen.c:610
 msgid "Email address: "
 msgstr "Adresse e-mail : "
 
@@ -1236,7 +1239,12 @@ msgstr "Commentaire : "
 msgid "Invalid character in comment\n"
 msgstr "Caractère invalide dans le commentaire\n"
 
-#: g10/keygen.c:655
+#: g10/keygen.c:657
+#, c-format
+msgid "You are using the `%s' character set.\n"
+msgstr ""
+
+#: g10/keygen.c:663
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1247,15 +1255,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:658
+#: g10/keygen.c:666
 msgid "NnCcEeOoQq"
 msgstr "NnCcEeOoQq"
 
-#: g10/keygen.c:668
+#: g10/keygen.c:676
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Changer le (N)om, le (C)ommentaire, l'(E)-mail ou (O)K/(Q)uitter? "
 
-#: g10/keygen.c:720
+#: g10/keygen.c:728
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1263,11 +1271,11 @@ msgstr ""
 "Vous avez besoin d'un mot de passe pour protéger votre clé secrète.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:728
+#: g10/keyedit.c:389 g10/keygen.c:736
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "le mot de passe n'a pas été identiquement répété ; recommencez.\n"
 
-#: g10/keygen.c:734
+#: g10/keygen.c:742
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1279,7 +1287,7 @@ msgstr ""
 "le désirez, en utilisant ce programme avec l'option « --edit-key ».\n"
 "\n"
 
-#: g10/keygen.c:755
+#: g10/keygen.c:763
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1292,33 +1300,33 @@ msgstr ""
 "premiers ; cela donne au générateur de nombres aléatoires une meilleure\n"
 "chance d'avoir assez d'entropie.\n"
 
-#: g10/keygen.c:825
+#: g10/keygen.c:833
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "La génération de clé ne peut être faite qu'en mode interactif\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:841
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "La paire de clés DSA fera 1024 bits.\n"
 
-#: g10/keygen.c:839
+#: g10/keygen.c:847
 msgid "Key generation cancelled.\n"
 msgstr "La génération a été annulée.\n"
 
-#: g10/keygen.c:849
+#: g10/keygen.c:857
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "écriture d'un certificat public à `%s'\n"
 
-#: g10/keygen.c:850
+#: g10/keygen.c:858
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "écriture d'un certificat secret à `%s'\n"
 
-#: g10/keygen.c:927
+#: g10/keygen.c:935
 msgid "public and secret key created and signed.\n"
 msgstr "les clés publique et secrète ont été créées et signées.\n"
 
-#: g10/keygen.c:929
+#: g10/keygen.c:937
 #, fuzzy
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
@@ -1328,28 +1336,28 @@ msgstr ""
 "utiliser la commande « --add-key » pour générer une clé secondaire à\n"
 "cette fin.\n"
 
-#: g10/keygen.c:943 g10/keygen.c:1042
+#: g10/keygen.c:951 g10/keygen.c:1050
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "La génération de clé a échoué : %s\n"
 
-#: g10/keygen.c:987 g10/sig-check.c:172 g10/sign.c:52
+#: g10/keygen.c:995 g10/sig-check.c:209 g10/sign.c:52
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
 msgstr "clé publique créée %lu %s dans le futur\n"
 
-#: g10/keygen.c:989 g10/sig-check.c:174 g10/sign.c:54
+#: g10/keygen.c:997 g10/sig-check.c:211 g10/sign.c:54
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
 msgstr "clé publique créée %lu %s dans le futur\n"
 
-#: g10/keygen.c:1020
+#: g10/keygen.c:1028
 msgid "Really create? "
 msgstr "Créer vraiment ? "
 
-#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:169 g10/tdbio.c:467
+#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
 #: g10/tdbio.c:527
 #, c-format
 msgid "%s: can't open: %s\n"
@@ -1360,17 +1368,17 @@ msgstr "%s : ne peut ouvrir : %s\n"
 msgid "error creating passphrase: %s\n"
 msgstr "erreur pendant la création du mot de passe : %s\n"
 
-#: g10/encode.c:155 g10/encode.c:269
+#: g10/encode.c:161 g10/encode.c:275
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s : ATTENTION : fichier vide\n"
 
-#: g10/encode.c:222
+#: g10/encode.c:228
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "lecture de `%s'\n"
 
-#: g10/encode.c:397
+#: g10/encode.c:403
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s/%s chiffré pour : %s\n"
@@ -1402,14 +1410,14 @@ msgstr "trop d'entr
 msgid "too many entries in unk cache - disabled\n"
 msgstr "trop d'entrées dans le cache unk - désactivé\n"
 
-#: g10/getkey.c:1496 g10/getkey.c:1552
+#: g10/getkey.c:1502 g10/getkey.c:1558
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
 "utilisation de la clé secondaire %08lX à la place de la clé\n"
 "principale %08lX\n"
 
-#: g10/import.c:116 g10/trustdb.c:1318
+#: g10/import.c:116 g10/trustdb.c:1228
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "ne peut ouvrir le fichier : %s\n"
@@ -1419,12 +1427,12 @@ msgstr "ne peut ouvrir le fichier : %s\n"
 msgid "skipping block of type %d\n"
 msgstr "ne prend pas en compte le bloc de type %d\n"
 
-#: g10/import.c:167 g10/trustdb.c:1635 g10/trustdb.c:1704
+#: g10/import.c:167 g10/trustdb.c:1564 g10/trustdb.c:1637
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr "%lu clés traitées jusqu'ici\n"
 
-#: g10/import.c:172 g10/trustdb.c:1394
+#: g10/import.c:172 g10/trustdb.c:1304
 #, c-format
 msgid "read error: %s\n"
 msgstr "erreur de lecture : %s\n"
@@ -1507,7 +1515,7 @@ msgstr "cl
 msgid "no default public keyring\n"
 msgstr "pas de porte-clés public par défaut\n"
 
-#: g10/import.c:374 g10/openfile.c:113 g10/sign.c:215 g10/sign.c:601
+#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "écriture de `%s'\n"
@@ -2077,71 +2085,75 @@ msgstr "Pas de signature correspondante dans le porte-cl
 msgid "No user id with index %d\n"
 msgstr "Pas d'utilisateur avec l'index %d\n"
 
-#: g10/keyedit.c:1371
+#: g10/keyedit.c:1372
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Pas de clé secondaire avec l'index %d\n"
 
-#: g10/mainproc.c:199
+#: g10/mainproc.c:202
 msgid "public key encrypted data: good DEK\n"
 msgstr "données chiffrées avec la clé publique : bonne clé de chiffrement\n"
 
-#: g10/mainproc.c:202
+#. fixme: defer this message until we have parsed all packets of
+#. * this type - do this by building a list of keys with their stati
+#. * and store it with the conetxt.  do_proc_packets can then use
+#. * this list to display some information
+#: g10/mainproc.c:209
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "le déchiffrement de la clé publique a échoué : %s\n"
 
-#: g10/mainproc.c:229
+#: g10/mainproc.c:236
 msgid "decryption okay\n"
 msgstr "le déchiffrement a réussi\n"
 
-#: g10/mainproc.c:232
+#: g10/mainproc.c:239
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "le déchiffrement a échoué : %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:256
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "NOTE : l'expéditeur a demandé « pour vos yeux seulement »\n"
 
-#: g10/mainproc.c:251
+#: g10/mainproc.c:258
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "nom de fichier original : '%.*s'\n"
 
-#: g10/mainproc.c:831
+#: g10/mainproc.c:839
 msgid "signature verification suppressed\n"
 msgstr "vérification de signature supprimée\n"
 
-#: g10/mainproc.c:837
+#: g10/mainproc.c:845
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Signature faite %.*s avec une clé %s ID %08lX\n"
 
 #. just in case that we have no userid
-#: g10/mainproc.c:863 g10/mainproc.c:874
+#: g10/mainproc.c:871 g10/mainproc.c:882
 msgid "BAD signature from \""
 msgstr "MAUVAISE signature de \""
 
-#: g10/mainproc.c:864 g10/mainproc.c:875
+#: g10/mainproc.c:872 g10/mainproc.c:883
 msgid "Good signature from \""
 msgstr "Bonne signature de \""
 
-#: g10/mainproc.c:866
+#: g10/mainproc.c:874
 #, fuzzy
 msgid "                aka \""
 msgstr "                      importée : %lu"
 
-#: g10/mainproc.c:908
+#: g10/mainproc.c:916
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Ne peut vérifier la signature : %s\n"
 
-#: g10/mainproc.c:981
+#: g10/mainproc.c:989
 msgid "old style (PGP 2.x) signature\n"
 msgstr "signature d'un ancien style (PGP 2.x)\n"
 
-#: g10/mainproc.c:986
+#: g10/mainproc.c:994
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "paquet racine invalide détecté dans proc_tree()\n"
 
@@ -2262,29 +2274,29 @@ msgstr "Mot de passe invalide ; r
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr "ATTENTION : Mauvaise clé détectée - changez encore le mot de passe.\n"
 
-#: g10/sig-check.c:155
+#: g10/sig-check.c:192
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "Ceci est une clé ElGamal générée par PGP qui n'est PAS sûre pour les\n"
 "signatures!\n"
 
-#: g10/sig-check.c:163
+#: g10/sig-check.c:200
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "lid %lu : utilisateur sans signature\n"
 
-#: g10/sig-check.c:164
+#: g10/sig-check.c:201
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "lid %lu : utilisateur sans signature\n"
 
-#: g10/sig-check.c:180
+#: g10/sig-check.c:217
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "NOTE : la clé de signature a expiré le %s\n"
 
-#: g10/sig-check.c:237
+#: g10/sig-check.c:274
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 "la signature est supposée être fausse car un bit critique est\n"
@@ -2295,7 +2307,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "Signature %s de : %s\n"
 
-#: g10/sign.c:210 g10/sign.c:596
+#: g10/sign.c:210 g10/sign.c:493
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "ne peut créer %s : %s\n"
@@ -2309,11 +2321,16 @@ msgstr "signature :"
 msgid "WARNING: `%s' is an empty file\n"
 msgstr "ATTENTION : `%s' est un fichier vide\n"
 
-#: g10/textfilter.c:199
+#: g10/textfilter.c:122
 #, fuzzy, c-format
 msgid "can't handle text lines longer than %d characters\n"
 msgstr "armure invalide : ligne plus longue que %d caractères\n"
 
+#: g10/textfilter.c:189
+#, fuzzy, c-format
+msgid "input line longer than %d characters\n"
+msgstr "armure invalide : ligne plus longue que %d caractères\n"
+
 #: g10/tdbio.c:117 g10/tdbio.c:1448
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
@@ -2335,12 +2352,12 @@ msgstr "transaction de base de confiance trop volumineuse\n"
 msgid "%s: can't access: %s\n"
 msgstr "%s : ne peut accéder : %s\n"
 
-#: g10/ringedit.c:294 g10/tdbio.c:444
+#: g10/ringedit.c:296 g10/tdbio.c:444
 #, c-format
 msgid "%s: can't create directory: %s\n"
 msgstr "%s : ne peut créer le répertoire : %s\n"
 
-#: g10/ringedit.c:300 g10/tdbio.c:447
+#: g10/ringedit.c:302 g10/tdbio.c:447
 #, c-format
 msgid "%s: directory created\n"
 msgstr "%s : répertoire créé\n"
@@ -2350,7 +2367,7 @@ msgstr "%s : r
 msgid "%s: directory does not exist!\n"
 msgstr "%s : le répertoire n'existe pas !\n"
 
-#: g10/openfile.c:109 g10/openfile.c:176 g10/ringedit.c:1310 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s : ne peut créer : %s\n"
@@ -2449,169 +2466,169 @@ msgstr "%s : n'a pu mettre un enregistrement 
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s : n'a pas pu ajouter un enregistrement : %s\n"
 
-#: g10/trustdb.c:144
+#: g10/trustdb.c:165
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "La base de confiance est corrompue ; exécutez « gpgm --fix-trustdb ».\n"
 
-#: g10/trustdb.c:157
+#: g10/trustdb.c:178
 #, c-format
 msgid "trust record %lu, req type %d: read failed: %s\n"
 msgstr ""
 "enregistrement de confiance %lu, type de requête %d : la lecture a échoué : "
 "%s\n"
 
-#: g10/trustdb.c:172
+#: g10/trustdb.c:193
 #, c-format
 msgid "trust record %lu, type %d: write failed: %s\n"
 msgstr "enregistrement de confiance %lu, type %d : l'écriture a échoué : %s\n"
 
-#: g10/trustdb.c:186
+#: g10/trustdb.c:207
 #, c-format
 msgid "trust record %lu: delete failed: %s\n"
 msgstr "enregistrement de confiance %lu : la suppression a échoué : %s\n"
 
-#: g10/trustdb.c:200
+#: g10/trustdb.c:221
 #, c-format
 msgid "trustdb: sync failed: %s\n"
 msgstr "base de confiance : la synchronisation a échoué : %s\n"
 
-#: g10/trustdb.c:329
+#: g10/trustdb.c:351
 #, c-format
 msgid "error reading dir record for LID %lu: %s\n"
 msgstr ""
 "erreur pendant la lecture de l'enregistrement de répertoire pour\n"
 "le LID %lu : %s\n"
 
-#: g10/trustdb.c:336
+#: g10/trustdb.c:358
 #, c-format
 msgid "lid %lu: expected dir record, got type %d\n"
 msgstr "lid %lu : enregistrement de répertoire attendu, a reçu le type %d\n"
 
-#: g10/trustdb.c:341
+#: g10/trustdb.c:363
 #, c-format
 msgid "no primary key for LID %lu\n"
 msgstr "pas de clé principale pour le LID %lu\n"
 
-#: g10/trustdb.c:346
+#: g10/trustdb.c:368
 #, c-format
 msgid "error reading primary key for LID %lu: %s\n"
 msgstr "erreur pendant la lecture de la clé principale pour le LID %lu : %s\n"
 
-#: g10/trustdb.c:422
+#: g10/trustdb.c:445
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "l'enregistrement de signature %lu a un mauvais propriétaire\n"
 
-#: g10/trustdb.c:465
+#: g10/trustdb.c:488
 #, c-format
 msgid "'%s' is not a valid long keyID\n"
 msgstr "'%s' n'est pas une identification longue de clé valide\n"
 
-#: g10/trustdb.c:500
+#: g10/trustdb.c:523
 #, c-format
 msgid "key %08lX: no public key for trusted key - skipped\n"
 msgstr "clé %08lX : pas de clé publique pour la clé certifiée - ignorée\n"
 
-#: g10/trustdb.c:509 g10/trustdb.c:567
+#: g10/trustdb.c:532 g10/trustdb.c:590
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "clé %08lX : ne peut être mise dans la base de confiance\n"
 
-#: g10/trustdb.c:514 g10/trustdb.c:573
+#: g10/trustdb.c:537 g10/trustdb.c:596
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "clé %08lX : l'enregistrement de requête a échoué\n"
 
-#: g10/trustdb.c:519 g10/trustdb.c:582
+#: g10/trustdb.c:542 g10/trustdb.c:605
 #, c-format
 msgid "key %08lX: already in trusted key table\n"
 msgstr "clé %08lX : déjà dans la table des clés certifiées\n"
 
-#: g10/trustdb.c:522 g10/trustdb.c:585
+#: g10/trustdb.c:545 g10/trustdb.c:608
 #, c-format
 msgid "key %08lX: accepted as trusted key.\n"
 msgstr "clé %08lX : acceptée comme clé certifiée.\n"
 
-#: g10/trustdb.c:538
+#: g10/trustdb.c:561
 #, c-format
 msgid "NOTE: secret key %08lX is NOT protected.\n"
 msgstr "NOTE : la clé secrète %08lX n'est PAS protégée.\n"
 
-#: g10/trustdb.c:550
+#: g10/trustdb.c:573
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "clé %08lX : clé secrète sans clé publique - non prise en compte\n"
 
-#: g10/trustdb.c:557
+#: g10/trustdb.c:580
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr "clé %08lX : les clés secrète et publique ne correspondent pas\n"
 
-#: g10/trustdb.c:593
+#: g10/trustdb.c:616
 #, c-format
 msgid "enumerate secret keys failed: %s\n"
 msgstr "l'énumération des clés secrètes a échoué : %s\n"
 
-#: g10/trustdb.c:776
+#: g10/trustdb.c:770
 #, c-format
 msgid "lid %lu: read dir record failed: %s\n"
 msgstr "lid %lu : la lecture d'enregistrement de répertoire a échoué : %s\n"
 
-#: g10/trustdb.c:785
+#: g10/trustdb.c:779
 #, c-format
 msgid "lid %lu: read key record failed: %s\n"
 msgstr "lid %lu : la lecture de l''enregistrement de clé a échoué : %s\n"
 
-#: g10/trustdb.c:795
+#: g10/trustdb.c:789
 #, c-format
 msgid "lid %lu: read uid record failed: %s\n"
 msgstr "lid %lu : la lecture d'enregistrement d'uid a échoué : %s\n"
 
-#: g10/trustdb.c:804
+#: g10/trustdb.c:798
 #, c-format
 msgid "lid %lu: read pref record failed: %s\n"
 msgstr "lid %lu : la lecture d'enregistrement de préférences a échoué : %s\n"
 
-#: g10/trustdb.c:814
+#: g10/trustdb.c:808
 #, c-format
 msgid "lid %lu: read sig record failed: %s\n"
 msgstr "lid %lu : la lecture d'enregistrement de signature a échoué : %s\n"
 
-#: g10/trustdb.c:1151
+#: g10/trustdb.c:1037
 msgid "Ooops, no keys\n"
 msgstr "Ooops, pas de clé\n"
 
-#: g10/trustdb.c:1155
+#: g10/trustdb.c:1041
 msgid "Ooops, no user ids\n"
 msgstr "Ooops, pas de nom d'utilisateur\n"
 
-#: g10/trustdb.c:1226 g10/trustdb.c:1244
+#: g10/trustdb.c:1134 g10/trustdb.c:1152
 #, c-format
 msgid "user '%s' read problem: %s\n"
 msgstr "problème de lecture de l'utilisateur '%s' : %s\n"
 
-#: g10/trustdb.c:1229 g10/trustdb.c:1247
+#: g10/trustdb.c:1137 g10/trustdb.c:1155
 #, c-format
 msgid "user '%s' list problem: %s\n"
 msgstr "problème de liste à l'utilisateur '%s' : %s\n"
 
-#: g10/trustdb.c:1237 g10/trustdb.c:1485
+#: g10/trustdb.c:1145 g10/trustdb.c:1447
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "l'utilisateur '%s' n'a pas été trouvé : %s\n"
 
-#: g10/trustdb.c:1239 g10/trustdb.c:1487
+#: g10/trustdb.c:1147 g10/trustdb.c:1449
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "problème de recherche de '%s' dans la base de confiance : %s\n"
 
-#: g10/trustdb.c:1242
+#: g10/trustdb.c:1150
 #, c-format
 msgid "user '%s' not in trustdb\n"
 msgstr "l'utilisateur '%s' n'est pas dans la base de confiance\n"
 
-#: g10/trustdb.c:1277
+#: g10/trustdb.c:1186
 #, c-format
 msgid ""
 "# List of assigned trustvalues, created %s\n"
@@ -2620,208 +2637,208 @@ msgstr ""
 "# Liste des indices de confiance assignés, créée le %s\n"
 "# (Utiliser « gpgm --import-ownertrust » pour les restaurer)\n"
 
-#: g10/trustdb.c:1283
+#: g10/trustdb.c:1192
 msgid "directory record w/o primary key\n"
 msgstr "enregistrement de répertoire sans clé principale\n"
 
-#: g10/trustdb.c:1290
+#: g10/trustdb.c:1199
 #, c-format
 msgid "error reading key record: %s\n"
 msgstr "erreur pendant la lecture de l'enregistrement de clé : %s\n"
 
-#: g10/trustdb.c:1330
+#: g10/trustdb.c:1240
 msgid "line too long\n"
 msgstr "ligne trop longue\n"
 
-#: g10/trustdb.c:1338
+#: g10/trustdb.c:1248
 msgid "error: missing colon\n"
 msgstr "erreur : deux-points manquant\n"
 
-#: g10/trustdb.c:1343
+#: g10/trustdb.c:1253
 msgid "error: invalid fingerprint\n"
 msgstr "erreur : empreinte digitale invalide\n"
 
-#: g10/trustdb.c:1347
+#: g10/trustdb.c:1257
 msgid "error: no ownertrust value\n"
 msgstr "erreur : pas d'indice de confiance\n"
 
-#: g10/trustdb.c:1372
+#: g10/trustdb.c:1282
 msgid "key not in trustdb, searching ring.\n"
 msgstr "la clé n'est pas dans la base de confiance, recherche du porte-clés.\n"
 
-#: g10/trustdb.c:1375
+#: g10/trustdb.c:1285
 #, c-format
 msgid "key not in ring: %s\n"
 msgstr "clé absente du porte-clés : %s\n"
 
-#: g10/trustdb.c:1379
+#: g10/trustdb.c:1289
 msgid "Oops: key is now in trustdb???\n"
 msgstr "Oops : la clé est maintenant dans la base de confiance ???\n"
 
 #. update the ownertrust
-#: g10/trustdb.c:1384
+#: g10/trustdb.c:1294
 #, c-format
 msgid "insert trust record failed: %s\n"
 msgstr "l'insertion d'enregistrement de confiance a échoué : %s\n"
 
 #. error
-#: g10/trustdb.c:1390
+#: g10/trustdb.c:1300
 #, c-format
 msgid "error finding dir record: %s\n"
 msgstr "erreur pendant la recherche de l'enregistrement de répertoire : %s\n"
 
-#: g10/trustdb.c:1490
+#: g10/trustdb.c:1452
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "l'utilisateur '%s' n'est pas dans la base de confiance - insertion\n"
 
-#: g10/trustdb.c:1493
+#: g10/trustdb.c:1455
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "n'a pas pu insérer '%s' dans la base de confiance : %s\n"
 
-#: g10/trustdb.c:1565
+#: g10/trustdb.c:1494
 #, c-format
 msgid "%s: keyblock read problem: %s\n"
 msgstr "%s : problème de lecture du bloc de clés : %s\n"
 
-#: g10/trustdb.c:1579
+#: g10/trustdb.c:1508
 #, c-format
 msgid "%s: update failed: %s\n"
 msgstr "%s : la mise à jour a échoué : %s\n"
 
-#: g10/trustdb.c:1582
+#: g10/trustdb.c:1511
 #, c-format
 msgid "%s: updated\n"
 msgstr "%s : mis à jour\n"
 
-#: g10/trustdb.c:1584
+#: g10/trustdb.c:1513
 #, c-format
 msgid "%s: okay\n"
 msgstr "%s : OK\n"
 
-#: g10/trustdb.c:1599
+#: g10/trustdb.c:1528
 #, c-format
 msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr "lid %lu : enregistrement de répertoire sans clé - ignoré\n"
 
-#: g10/trustdb.c:1612
+#: g10/trustdb.c:1541
 #, c-format
 msgid "lid %lu: keyblock not found: %s\n"
 msgstr "lid %lu : le bloc de clés n'a pas été trouvé : %s\n"
 
-#: g10/trustdb.c:1621 g10/trustdb.c:1690
+#: g10/trustdb.c:1550 g10/trustdb.c:1623
 #, c-format
 msgid "lid %lu: update failed: %s\n"
 msgstr "lid %lu : la mise à jour a échoué: %s\n"
 
-#: g10/trustdb.c:1627 g10/trustdb.c:1696
+#: g10/trustdb.c:1556 g10/trustdb.c:1629
 #, c-format
 msgid "lid %lu: updated\n"
 msgstr "lid %lu : mis à jour\n"
 
-#: g10/trustdb.c:1631 g10/trustdb.c:1700
+#: g10/trustdb.c:1560 g10/trustdb.c:1633
 #, c-format
 msgid "lid %lu: okay\n"
 msgstr "lid %lu : OK\n"
 
-#: g10/trustdb.c:1638 g10/trustdb.c:1706
+#: g10/trustdb.c:1567 g10/trustdb.c:1639
 #, c-format
 msgid "%lu keys processed\n"
 msgstr "%lu clés traitées\n"
 
-#: g10/trustdb.c:1640
+#: g10/trustdb.c:1569
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr "\t%lu clés ignorées\n"
 
-#: g10/trustdb.c:1642 g10/trustdb.c:1708
+#: g10/trustdb.c:1571 g10/trustdb.c:1641
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr "\t%lu clés avec erreurs\n"
 
-#: g10/trustdb.c:1644 g10/trustdb.c:1710
+#: g10/trustdb.c:1573 g10/trustdb.c:1643
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr "\t%lu clés mises à jour\n"
 
-#: g10/trustdb.c:1674
+#: g10/trustdb.c:1607
 #, c-format
 msgid "lid ?: insert failed: %s\n"
 msgstr "lid ? : l'insertion a échoué : %s\n"
 
-#: g10/trustdb.c:1679
+#: g10/trustdb.c:1612
 #, c-format
 msgid "lid %lu: insert failed: %s\n"
 msgstr "lid %lu : l'insertion a échoué : %s\n"
 
-#: g10/trustdb.c:1685
+#: g10/trustdb.c:1618
 #, c-format
 msgid "lid %lu: inserted\n"
 msgstr "lid %lu : inséré\n"
 
-#: g10/trustdb.c:1712
+#: g10/trustdb.c:1645
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr "\t%lu clés insérées\n"
 
-#: g10/trustdb.c:1715
+#: g10/trustdb.c:1648
 #, c-format
 msgid "enumerate keyblocks failed: %s\n"
 msgstr "l'énumération des blocs de clés a échoué : %s\n"
 
-#: g10/trustdb.c:1760
+#: g10/trustdb.c:1694
 #, c-format
 msgid "check_trust: search dir record failed: %s\n"
 msgstr ""
 "check_trust : la recherche d'enregistrement de répertoire a échoué : %s\n"
 
-#: g10/trustdb.c:1767
+#: g10/trustdb.c:1701
 #, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr "clé %08lX : l'insertion d'enregistrement de confiance a échoué : %s\n"
 
-#: g10/trustdb.c:1771
+#: g10/trustdb.c:1705
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "clé %08lX.%lu : insérée dans la base de confiance\n"
 
-#: g10/trustdb.c:1779
+#: g10/trustdb.c:1713
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "clé %08lX.%lu : créée dans le futur (voyage temporel ou\n"
 "problème d'horloge)\n"
 
-#: g10/trustdb.c:1786
+#: g10/trustdb.c:1720
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "clé %08lX.%lu : a expiré le %s\n"
 
-#: g10/trustdb.c:1794
+#: g10/trustdb.c:1728
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "clé %08lX.%lu : la vérification de confiance a échoué: %s\n"
 
-#: g10/trustdb.c:2003 g10/trustdb.c:2032 g10/trustdb.c:2771
+#: g10/trustdb.c:1951 g10/trustdb.c:1981 g10/trustdb.c:2734
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""
 "ATTENTION : les enregistrements de préférences longs ne sont pas encore\n"
 "supportés\n"
 
-#: g10/trustdb.c:2054
+#: g10/trustdb.c:2003
 #, c-format
 msgid "get_dir_record: search_record failed: %s\n"
 msgstr "get_dir_record : search_record a échoué : %s\n"
 
-#: g10/trustdb.c:2117
+#: g10/trustdb.c:2071
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 msgstr ""
 "NOTE : l'enregistrement de signature %lu[%d] est dans la liste d'aide\n"
 "de %lu mais marqué comme vérifié\n"
 
-#: g10/trustdb.c:2121
+#: g10/trustdb.c:2075
 #, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr ""
@@ -2829,147 +2846,147 @@ msgstr ""
 "de %lu mais n'est pas marqué\n"
 
 #. we need the dir record
-#: g10/trustdb.c:2128
+#: g10/trustdb.c:2082
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr ""
 "l'enregistrement de signature %lu[%d] dans la liste d'aide de %lu\n"
 "ne pointe pas vers un enregistrement de répertoire\n"
 
-#: g10/trustdb.c:2134
+#: g10/trustdb.c:2088
 #, c-format
 msgid "lid %lu: no primary key\n"
 msgstr "lid %lu : pas de clé primaire\n"
 
-#: g10/trustdb.c:2167
+#: g10/trustdb.c:2121
 #, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr "lid %lu : utilisateur non trouvé dans le bloc de clés\n"
 
-#: g10/trustdb.c:2171
+#: g10/trustdb.c:2125
 #, c-format
 msgid "lid %lu: user id without signature\n"
 msgstr "lid %lu : utilisateur sans signature\n"
 
-#: g10/trustdb.c:2178
+#: g10/trustdb.c:2132
 #, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr "lid %lu : auto-signature dans la liste d'aide\n"
 
-#: g10/trustdb.c:2189 g10/trustdb.c:2910 g10/trustdb.c:2994
+#: g10/trustdb.c:2143 g10/trustdb.c:2879 g10/trustdb.c:2962
 msgid "Valid certificate revocation"
 msgstr "Certificat de révocation valide"
 
-#: g10/trustdb.c:2190 g10/trustdb.c:2911 g10/trustdb.c:2995
+#: g10/trustdb.c:2144 g10/trustdb.c:2880 g10/trustdb.c:2963
 msgid "Good certificate"
 msgstr "Bon certificat"
 
-#: g10/trustdb.c:2199
+#: g10/trustdb.c:2153
 msgid "very strange: no public key\n"
 msgstr "très étrange : pas de clé publique\n"
 
-#: g10/trustdb.c:2247
+#: g10/trustdb.c:2201
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr ""
 "la liste d'aide de %lu[%d] de %lu ne pointe pas vers un enregistrement\n"
 "de répertoire\n"
 
-#: g10/trustdb.c:2253
+#: g10/trustdb.c:2207
 #, c-format
 msgid "lid %lu does not have a key\n"
 msgstr "la lid %lu n'a pas de clé\n"
 
-#: g10/trustdb.c:2263
+#: g10/trustdb.c:2217
 #, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr "lid %lu: ne peut obtenir le bloc de clés: %s\n"
 
-#: g10/trustdb.c:2320 g10/trustdb.c:3245
+#: g10/trustdb.c:2274 g10/trustdb.c:3227
 #, c-format
 msgid "tdbio_search_dir failed: %s\n"
 msgstr "tdbio_search_dir a échoué : %s\n"
 
-#: g10/trustdb.c:2473
+#: g10/trustdb.c:2427
 #, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
 msgstr "clé %08lX.%lu : bonne liaison avec la sous-clé\n"
 
-#: g10/trustdb.c:2479 g10/trustdb.c:2521
+#: g10/trustdb.c:2433 g10/trustdb.c:2475
 #, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
 msgstr "clé %08lX.%lu : liaison avec la sous-clé invalide : %s\n"
 
-#: g10/trustdb.c:2494
+#: g10/trustdb.c:2448
 #, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
 msgstr "clé %08lX.%lu : révocation de clé valide\n"
 
-#: g10/trustdb.c:2500
+#: g10/trustdb.c:2454
 #, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
 msgstr "clé %08lX.%lu : révocation de sous-clé invalide : %s\n"
 
-#: g10/trustdb.c:2515
+#: g10/trustdb.c:2469
 #, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
 msgstr "clé %08lX.%lu : révocation de sous-clé valide\n"
 
-#: g10/trustdb.c:2615
+#: g10/trustdb.c:2573
 msgid "Good self-signature"
 msgstr "Bonne auto-signature"
 
-#: g10/trustdb.c:2626
+#: g10/trustdb.c:2584
 msgid "Invalid self-signature"
 msgstr "Auto-signature invalide"
 
-#: g10/trustdb.c:2636
+#: g10/trustdb.c:2594
 msgid "Valid user ID revocation skipped due to a newer self signature\n"
 msgstr ""
 "La révocation valide de nom d'utilisateur a été ignorée car l'auto-\n"
 "signature est plus récente\n"
 
-#: g10/trustdb.c:2643
+#: g10/trustdb.c:2601
 msgid "Valid user ID revocation\n"
 msgstr "Révocation de nom d'utilisateur valide\n"
 
-#: g10/trustdb.c:2650
+#: g10/trustdb.c:2608
 msgid "Invalid user ID revocation"
 msgstr "Révocation de nom d'utilisateur invalide"
 
-#: g10/trustdb.c:2734
+#: g10/trustdb.c:2697
 msgid "Too many preferences"
 msgstr "Trop de préférences"
 
-#: g10/trustdb.c:2748
+#: g10/trustdb.c:2711
 msgid "Too many preference items"
 msgstr "Trop d'items de préférence"
 
-#: g10/trustdb.c:2888
+#: g10/trustdb.c:2857
 #, fuzzy
 msgid "duplicated certificate - deleted"
 msgstr "Certificat dupliqué - enlevé"
 
-#: g10/trustdb.c:2922
+#: g10/trustdb.c:2891
 msgid "Hmmm, public key lost?"
 msgstr "Hmmm, clé publique perdue ?"
 
-#: g10/trustdb.c:2932 g10/trustdb.c:3015
+#: g10/trustdb.c:2900 g10/trustdb.c:2983
 msgid "Invalid certificate revocation"
 msgstr "Révocation de certificat invalide"
 
-#: g10/trustdb.c:2933 g10/trustdb.c:3016
+#: g10/trustdb.c:2901 g10/trustdb.c:2984
 msgid "Invalid certificate"
 msgstr "Certificat invalide"
 
-#: g10/trustdb.c:2948
+#: g10/trustdb.c:2916
 #, c-format
 msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
 msgstr ""
 "uid %08lX.%lu/%02X%02X : possède une ombre %lu mais n'est pas encore\n"
 "marqué.\n"
 
-#: g10/trustdb.c:2962
+#: g10/trustdb.c:2930
 #, c-format
 msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr ""
@@ -2977,41 +2994,41 @@ msgstr ""
 "enregistrement de répertoire\n"
 
 #. that should never happen
-#: g10/trustdb.c:3215
+#: g10/trustdb.c:3190
 #, c-format
 msgid "insert_trust_record: keyblock not found: %s\n"
 msgstr "insert_trust_record : bloc de clés non trouvé : %s\n"
 
-#: g10/trustdb.c:3233
+#: g10/trustdb.c:3215
 msgid "did not use primary key for insert_trust_record()\n"
 msgstr "n'a pas utilisé la clé principale pour « insert_trust_record() »\n"
 
-#: g10/ringedit.c:314
+#: g10/ringedit.c:316
 #, c-format
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s : ne peut créer le porte-clés : %s\n"
 
-#: g10/ringedit.c:320 g10/ringedit.c:1315
+#: g10/ringedit.c:322 g10/ringedit.c:1330
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s : porte-clés créé\n"
 
-#: g10/ringedit.c:1492
+#: g10/ringedit.c:1507
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr ""
 "ATTENTION : 2 fichiers avec des informations confidentielles existent.\n"
 
-#: g10/ringedit.c:1493
+#: g10/ringedit.c:1508
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s est le fichier original\n"
 
-#: g10/ringedit.c:1494
+#: g10/ringedit.c:1509
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s est le nouveau\n"
 
-#: g10/ringedit.c:1495
+#: g10/ringedit.c:1510
 msgid "Please fix this possible security flaw\n"
 msgstr "Réparez ce problème de sécurité possible\n"
 
@@ -3047,12 +3064,12 @@ msgstr "R
 msgid "writing to stdout\n"
 msgstr "écriture vers la sortie standard\n"
 
-#: g10/openfile.c:145
+#: g10/openfile.c:147
 #, c-format
 msgid "assuming signed data in `%s'\n"
 msgstr "les données signées sont supposées être dans `%s'\n"
 
-#: g10/openfile.c:192
+#: g10/openfile.c:197
 #, c-format
 msgid "%s: new options file created\n"
 msgstr "%s : nouveau fichier d'options créé\n"
index f54b0e5..2ae09a2 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg-0.4.3\n"
-"POT-Creation-Date: 1999-02-19 15:31+0100\n"
+"POT-Creation-Date: 1999-03-08 19:50+0100\n"
 "PO-Revision-Date: 1998-11-09 16:19+01:00\n"
 "Last-Translator: Marco d'Itri <md@linux.it>\n"
 "Language-Team: Italian <it@li.org>\n"
@@ -13,15 +13,15 @@ msgstr ""
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: util/secmem.c:77
+#: util/secmem.c:76
 msgid "Warning: using insecure memory!\n"
 msgstr "Attenzione: si sta usando memoria insicura!\n"
 
-#: util/secmem.c:250
+#: util/secmem.c:249
 msgid "operation is not possible without initialized secure memory\n"
 msgstr ""
 
-#: util/secmem.c:251
+#: util/secmem.c:250
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
@@ -295,7 +295,7 @@ msgstr ""
 "Il generatore di numeri casuali è solo un ripiego per fare\n"
 "compilare il programma - non è assolutamente un RNG forte!\n"
 
-#: cipher/rndlinux.c:118
+#: cipher/rndlinux.c:114
 #, c-format
 msgid ""
 "\n"
@@ -482,7 +482,10 @@ msgstr "meno prolisso"
 msgid "force v3 signatures"
 msgstr "forza l'uso di firme v3"
 
-#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:235
+msgid "do not make any changes"
+msgstr ""
+
 #: g10/g10.c:236
 msgid "batch mode: never ask"
 msgstr "modo batch: non fare domande"
@@ -669,124 +672,124 @@ msgstr "file con opzioni predefinite `%s': %s\n"
 msgid "reading options from `%s'\n"
 msgstr "lettura delle opzioni da `%s'\n"
 
-#: g10/g10.c:796
+#: g10/g10.c:797
 #, fuzzy, c-format
 msgid "%s is not a valid character set\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/g10.c:836 g10/g10.c:848
+#: g10/g10.c:837 g10/g10.c:849
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algoritmo di cifratura selezionato non è valido\n"
 
-#: g10/g10.c:842 g10/g10.c:854
+#: g10/g10.c:843 g10/g10.c:855
 msgid "selected digest algorithm is invalid\n"
 msgstr "l'algoritmo di digest selezionato non è valido\n"
 
-#: g10/g10.c:857
+#: g10/g10.c:858
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "l'algoritmo di compressione deve essere tra %d e %d\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:860
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed deve essere maggiore di 0\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:862
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed deve essere maggiore di 1\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:864
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr ""
 
-#: g10/g10.c:866
+#: g10/g10.c:867
 #, fuzzy
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "nota: il modo S2K semplice (0) è fortemente scoraggiato\n"
 
-#: g10/g10.c:870
+#: g10/g10.c:871
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "modo S2K non valido; deve essere 0, 1 o 3\n"
 
-#: g10/g10.c:947
+#: g10/g10.c:948
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inizializzazione del trustdb fallita: %s\n"
 
-#: g10/g10.c:953
+#: g10/g10.c:954
 msgid "--store [filename]"
 msgstr "--store [nomefile]"
 
-#: g10/g10.c:961
+#: g10/g10.c:962
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nomefile]"
 
-#: g10/g10.c:969
+#: g10/g10.c:970
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nomefile]"
 
-#: g10/g10.c:982
+#: g10/g10.c:983
 msgid "--sign [filename]"
 msgstr "--sign [nomefile]"
 
-#: g10/g10.c:995
+#: g10/g10.c:996
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nomefile]"
 
-#: g10/g10.c:1009
+#: g10/g10.c:1010
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nomefile]"
 
-#: g10/g10.c:1021
+#: g10/g10.c:1022
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nomefile]"
 
-#: g10/g10.c:1030
+#: g10/g10.c:1031
 #, fuzzy
 msgid "--edit-key username [commands]"
 msgstr "--edit-key nomeutente"
 
-#: g10/g10.c:1046
+#: g10/g10.c:1047
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nomeutente"
 
-#: g10/g10.c:1049
+#: g10/g10.c:1050
 msgid "--delete-key username"
 msgstr "--delete-key nomeutente"
 
-#: g10/encode.c:216 g10/g10.c:1072 g10/sign.c:311
+#: g10/encode.c:222 g10/g10.c:1073 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "impossibile aprire `%s': %s\n"
 
-#: g10/g10.c:1083
+#: g10/g10.c:1084
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [userid] [portachiavi]"
 
-#: g10/g10.c:1144
+#: g10/g10.c:1145
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "rimozione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:1152
+#: g10/g10.c:1153
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creazione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:1218
+#: g10/g10.c:1219
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algoritmo di hash non valido `%s'\n"
 
-#: g10/g10.c:1297
+#: g10/g10.c:1298
 msgid "[filename]"
 msgstr "[nomefile]"
 
-#: g10/g10.c:1301
+#: g10/g10.c:1302
 msgid "Go ahead and type your message ...\n"
 msgstr ""
 
-#: g10/decrypt.c:59 g10/g10.c:1304 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1305 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "impossibile aprire `%s'\n"
@@ -867,7 +870,7 @@ msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
 
-#: g10/pkclist.c:138
+#: g10/pkclist.c:136
 #, fuzzy, c-format
 msgid ""
 "No trust value assigned to %lu:\n"
@@ -876,7 +879,7 @@ msgstr ""
 "Nessun valore di fiducia del proprietario definito per %lu:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:148
+#: g10/pkclist.c:146
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -898,31 +901,31 @@ msgstr ""
 " 4 = Mi fido completamente\n"
 " s = mostrami ulteriori informazioni\n"
 
-#: g10/pkclist.c:157
+#: g10/pkclist.c:155
 msgid " m = back to the main menu\n"
 msgstr " m = ritorna al menù principale\n"
 
-#: g10/pkclist.c:159
+#: g10/pkclist.c:157
 msgid " q = quit\n"
 msgstr ""
 
 # valid user replies (not including 1..4)
 # [Marco, you can change 'm' and 's' to whatever letters you like]
 #. a string with valid answers
-#: g10/pkclist.c:164
+#: g10/pkclist.c:162
 #, fuzzy
 msgid "sSmMqQ"
 msgstr "sSmMqQ"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:166
 msgid "Your decision? "
 msgstr "Cosa hai deciso? "
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:186
 msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr ""
 
-#: g10/pkclist.c:223
+#: g10/pkclist.c:221
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -932,19 +935,19 @@ msgstr ""
 "se possiamo assegnare qualche valore di fiducia del proprietario mancante.\n"
 "\n"
 
-#: g10/pkclist.c:261
+#: g10/pkclist.c:260
 msgid ""
 "No path leading to one of our keys found.\n"
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:263
+#: g10/pkclist.c:262
 msgid ""
 "No certificates with undefined trust found.\n"
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:265
+#: g10/pkclist.c:264
 #, fuzzy
 msgid ""
 "No trust values changed.\n"
@@ -953,46 +956,46 @@ msgstr ""
 "Nessun valore di fiducia del proprietario modificato.\n"
 "\n"
 
-#: g10/pkclist.c:280
+#: g10/pkclist.c:279
 #, fuzzy, c-format
 msgid "key %08lX: key has been revoked!\n"
 msgstr "chiave %08lX: accettata come chiave segreta\n"
 
-#: g10/pkclist.c:286 g10/pkclist.c:381
+#: g10/pkclist.c:285 g10/pkclist.c:397
 msgid "Use this key anyway? "
 msgstr "Uso lo stesso questa chiave? "
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:309
 #, fuzzy, c-format
 msgid "%08lX: key has expired\n"
 msgstr "Nota: questa chiave è scaduta!\n"
 
-#: g10/pkclist.c:314
+#: g10/pkclist.c:315
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr ""
 
-#: g10/pkclist.c:332
+#: g10/pkclist.c:333
 #, fuzzy, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "ATTENZIONE: NON ci fidiamo di questa chiave!\n"
 
-#: g10/pkclist.c:338
+#: g10/pkclist.c:339
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
 "but it is accepted anyway\n"
 msgstr ""
 
-#: g10/pkclist.c:344
+#: g10/pkclist.c:345
 msgid "This key probably belongs to the owner\n"
 msgstr ""
 
-#: g10/pkclist.c:349
+#: g10/pkclist.c:350
 msgid "This key belongs to us\n"
 msgstr ""
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:392
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -1004,56 +1007,56 @@ msgstr ""
 "prossima domanda.\n"
 "\n"
 
-#: g10/pkclist.c:385
+#: g10/pkclist.c:405
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATTENZIONE: uso di una chiave non fidata!\n"
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:441
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATTENZIONE: questa chiave è stata revocata dal suo proprietario!\n"
 
-#: g10/pkclist.c:422
+#: g10/pkclist.c:442
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Questo può significare che la firma è stata falsificata.\n"
 
-#: g10/pkclist.c:443
+#: g10/pkclist.c:463
 msgid "Note: This key has expired!\n"
 msgstr "Nota: questa chiave è scaduta!\n"
 
-#: g10/pkclist.c:450
+#: g10/pkclist.c:470
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr "ATTENZIONE: questa chiave non è certificata con una firma fidata!\n"
 
-#: g10/pkclist.c:452
+#: g10/pkclist.c:472
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 "         Non ci sono indicazioni che la firma appartenga al proprietario.\n"
 
-#: g10/pkclist.c:468
+#: g10/pkclist.c:488
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATTENZIONE: NON ci fidiamo di questa chiave!\n"
 
-#: g10/pkclist.c:469
+#: g10/pkclist.c:489
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "          La firma è probabilmente un FALSO.\n"
 
-#: g10/pkclist.c:476
+#: g10/pkclist.c:496
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "ATTENZIONE: questa chiave non è certificata con firme abbastanza fidate!\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:499
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr "         Non è sicuro che la firma appartenga al proprietario.\n"
 
-#: g10/pkclist.c:532 g10/pkclist.c:545 g10/pkclist.c:607 g10/pkclist.c:635
+#: g10/pkclist.c:552 g10/pkclist.c:565 g10/pkclist.c:628 g10/pkclist.c:656
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: saltata: %s\n"
 
-#: g10/pkclist.c:554
+#: g10/pkclist.c:574
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1061,20 +1064,20 @@ msgstr ""
 "Non hai specificato un user ID. (puoi usare \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:559
+#: g10/pkclist.c:579
 msgid "Enter the user ID: "
 msgstr "Inserisci l'user ID: "
 
-#: g10/pkclist.c:570
+#: g10/pkclist.c:590
 msgid "No such user ID.\n"
 msgstr "User ID inesistente.\n"
 
-#: g10/pkclist.c:615
+#: g10/pkclist.c:636
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/pkclist.c:641
+#: g10/pkclist.c:662
 msgid "no valid addressees\n"
 msgstr "nessun indirizzo valido\n"
 
@@ -1224,7 +1227,7 @@ msgstr "La chiave scadr
 msgid "Is this correct (y/n)? "
 msgstr "È giusto (s/n)? "
 
-#: g10/keygen.c:582
+#: g10/keygen.c:583
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1240,23 +1243,23 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:593
+#: g10/keygen.c:594
 msgid "Real name: "
 msgstr "Nome e Cognome: "
 
-#: g10/keygen.c:597
+#: g10/keygen.c:598
 msgid "Invalid character in name\n"
 msgstr "Carattere non valido nel nome\n"
 
-#: g10/keygen.c:599
+#: g10/keygen.c:600
 msgid "Name may not start with a digit\n"
 msgstr "Il nome non può iniziare con una cifra\n"
 
-#: g10/keygen.c:601
+#: g10/keygen.c:602
 msgid "Name must be at least 5 characters long\n"
 msgstr "Il nome deve essere lungo almeno 5 caratteri\n"
 
-#: g10/keygen.c:609
+#: g10/keygen.c:610
 msgid "Email address: "
 msgstr "Indirizzo di Email: "
 
@@ -1272,7 +1275,12 @@ msgstr "Commento: "
 msgid "Invalid character in comment\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/keygen.c:655
+#: g10/keygen.c:657
+#, c-format
+msgid "You are using the `%s' character set.\n"
+msgstr ""
+
+#: g10/keygen.c:663
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1283,15 +1291,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:658
+#: g10/keygen.c:666
 msgid "NnCcEeOoQq"
 msgstr "NnCcEeOoQq"
 
-#: g10/keygen.c:668
+#: g10/keygen.c:676
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Modifica (N)ome, (C)ommento, (E)mail oppure (O)kay/(Q)uit? "
 
-#: g10/keygen.c:720
+#: g10/keygen.c:728
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1299,11 +1307,11 @@ msgstr ""
 "Ti serve una passphrase per proteggere la tua chiave segreta.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:728
+#: g10/keyedit.c:389 g10/keygen.c:736
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "passphrase non ripetuta correttamente; riprova.\n"
 
-#: g10/keygen.c:734
+#: g10/keygen.c:742
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1315,7 +1323,7 @@ msgstr ""
 "programma con l'opzione \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:755
+#: g10/keygen.c:763
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1329,33 +1337,33 @@ msgstr ""
 "generatore di numeri casuali la possibilità di raccogliere abbastanza\n"
 "entropia.\n"
 
-#: g10/keygen.c:825
+#: g10/keygen.c:833
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "Una chiave può essere generata solo in modo interattivo\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:841
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "La coppia DSA avrà 1024 bit.\n"
 
-#: g10/keygen.c:839
+#: g10/keygen.c:847
 msgid "Key generation cancelled.\n"
 msgstr "Generazione della chiave annullata.\n"
 
-#: g10/keygen.c:849
+#: g10/keygen.c:857
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "scrittura del certificato pubblico in `%s'\n"
 
-#: g10/keygen.c:850
+#: g10/keygen.c:858
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "scrittura del certificato privato in `%s'\n"
 
-#: g10/keygen.c:927
+#: g10/keygen.c:935
 msgid "public and secret key created and signed.\n"
 msgstr "chiavi pubbliche e segrete create e firmate.\n"
 
-#: g10/keygen.c:929
+#: g10/keygen.c:937
 #, fuzzy
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
@@ -1365,12 +1373,12 @@ msgstr ""
 "vorrai usare il comando \"--add-key\" per generare una chiave secondaria\n"
 "per questo scopo.\n"
 
-#: g10/keygen.c:943 g10/keygen.c:1042
+#: g10/keygen.c:951 g10/keygen.c:1050
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Generazione della chiave fallita: %s\n"
 
-#: g10/keygen.c:987 g10/sig-check.c:172 g10/sign.c:52
+#: g10/keygen.c:995 g10/sig-check.c:209 g10/sign.c:52
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1378,7 +1386,7 @@ msgstr ""
 "chiave pubblica creata nel futuro (salto nel tempo o problema con\n"
 "l'orologio)\n"
 
-#: g10/keygen.c:989 g10/sig-check.c:174 g10/sign.c:54
+#: g10/keygen.c:997 g10/sig-check.c:211 g10/sign.c:54
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1386,11 +1394,11 @@ msgstr ""
 "chiave pubblica creata nel futuro (salto nel tempo o problema con\n"
 "l'orologio)\n"
 
-#: g10/keygen.c:1020
+#: g10/keygen.c:1028
 msgid "Really create? "
 msgstr "Crea davvero? "
 
-#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:169 g10/tdbio.c:467
+#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
 #: g10/tdbio.c:527
 #, c-format
 msgid "%s: can't open: %s\n"
@@ -1401,17 +1409,17 @@ msgstr "%s: impossibile aprire: %s\n"
 msgid "error creating passphrase: %s\n"
 msgstr "errore nella creazione della passhprase: %s\n"
 
-#: g10/encode.c:155 g10/encode.c:269
+#: g10/encode.c:161 g10/encode.c:275
 #, fuzzy, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: attenzione: file vuoto\n"
 
-#: g10/encode.c:222
+#: g10/encode.c:228
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "lettura da `%s'\n"
 
-#: g10/encode.c:397
+#: g10/encode.c:403
 #, fuzzy, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s crittografato per: %s\n"
@@ -1444,12 +1452,12 @@ msgstr ""
 msgid "too many entries in unk cache - disabled\n"
 msgstr ""
 
-#: g10/getkey.c:1496 g10/getkey.c:1552
+#: g10/getkey.c:1502 g10/getkey.c:1558
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr "uso la chiave secondaria %08lX invece della chiave primaria %08lX\n"
 
-#: g10/import.c:116 g10/trustdb.c:1318
+#: g10/import.c:116 g10/trustdb.c:1228
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "impossibile aprire il file: %s\n"
@@ -1459,12 +1467,12 @@ msgstr "impossibile aprire il file: %s\n"
 msgid "skipping block of type %d\n"
 msgstr "salto un blocco di tipo %d\n"
 
-#: g10/import.c:167 g10/trustdb.c:1635 g10/trustdb.c:1704
+#: g10/import.c:167 g10/trustdb.c:1564 g10/trustdb.c:1637
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr "Per ora sono state esaminate %lu chiavi\n"
 
-#: g10/import.c:172 g10/trustdb.c:1394
+#: g10/import.c:172 g10/trustdb.c:1304
 #, c-format
 msgid "read error: %s\n"
 msgstr "errore di lettura: %s\n"
@@ -1547,7 +1555,7 @@ msgstr "chiave %08lX: chiave pubblica non trovata: %s\n"
 msgid "no default public keyring\n"
 msgstr "nessun portachiavi pubblico predefinito\n"
 
-#: g10/import.c:374 g10/openfile.c:113 g10/sign.c:215 g10/sign.c:601
+#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "scrittura in `%s'\n"
@@ -2116,74 +2124,78 @@ msgstr "Manca la firma corrispondente nel portachiavi segreto\n"
 msgid "No user id with index %d\n"
 msgstr "Nessun user id con l'indice %d\n"
 
-#: g10/keyedit.c:1371
+#: g10/keyedit.c:1372
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Nessuna chiave secondaria con l'indice %d\n"
 
-#: g10/mainproc.c:199
+#: g10/mainproc.c:202
 #, fuzzy
 msgid "public key encrypted data: good DEK\n"
 msgstr "Decifratura della chiave pubblica fallita: %s\n"
 
-#: g10/mainproc.c:202
+#. fixme: defer this message until we have parsed all packets of
+#. * this type - do this by building a list of keys with their stati
+#. * and store it with the conetxt.  do_proc_packets can then use
+#. * this list to display some information
+#: g10/mainproc.c:209
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "Decifratura della chiave pubblica fallita: %s\n"
 
-#: g10/mainproc.c:229
+#: g10/mainproc.c:236
 #, fuzzy
 msgid "decryption okay\n"
 msgstr "decifratura fallita: %s\n"
 
-#: g10/mainproc.c:232
+#: g10/mainproc.c:239
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "decifratura fallita: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:256
 #, fuzzy
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "nota: il mittente ha richiesto \"solo-per-i-tuoi-occhi\"\n"
 
-#: g10/mainproc.c:251
+#: g10/mainproc.c:258
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr ""
 
-#: g10/mainproc.c:831
+#: g10/mainproc.c:839
 msgid "signature verification suppressed\n"
 msgstr ""
 
-#: g10/mainproc.c:837
+#: g10/mainproc.c:845
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Firma fatta %.*s usando %s key ID %08lX\n"
 
 #. just in case that we have no userid
-#: g10/mainproc.c:863 g10/mainproc.c:874
+#: g10/mainproc.c:871 g10/mainproc.c:882
 msgid "BAD signature from \""
 msgstr "Firma NON corretta da \""
 
-#: g10/mainproc.c:864 g10/mainproc.c:875
+#: g10/mainproc.c:872 g10/mainproc.c:883
 msgid "Good signature from \""
 msgstr "Buona firma da \""
 
-#: g10/mainproc.c:866
+#: g10/mainproc.c:874
 #, fuzzy
 msgid "                aka \""
 msgstr "importate: %lu"
 
-#: g10/mainproc.c:908
+#: g10/mainproc.c:916
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Impossibile controllare la firma: %s\n"
 
-#: g10/mainproc.c:981
+#: g10/mainproc.c:989
 msgid "old style (PGP 2.x) signature\n"
 msgstr ""
 
-#: g10/mainproc.c:986
+#: g10/mainproc.c:994
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr ""
 
@@ -2306,28 +2318,28 @@ msgstr ""
 "Attenzione: individuata una chiave debole - per favore cambia ancora la\n"
 "passphrase.\n"
 
-#: g10/sig-check.c:155
+#: g10/sig-check.c:192
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "questa è una chiave ElGamal generata da PGP che NON è sicura per le firme!\n"
 
-#: g10/sig-check.c:163
+#: g10/sig-check.c:200
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "chiave %08lX: user id senza firma\n"
 
-#: g10/sig-check.c:164
+#: g10/sig-check.c:201
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "chiave %08lX: user id senza firma\n"
 
-#: g10/sig-check.c:180
+#: g10/sig-check.c:217
 #, fuzzy, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "attenzione: firma della chiave scaduta il %s\n"
 
-#: g10/sig-check.c:237
+#: g10/sig-check.c:274
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 
@@ -2336,7 +2348,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "Firma NON corretta da \""
 
-#: g10/sign.c:210 g10/sign.c:596
+#: g10/sign.c:210 g10/sign.c:493
 #, fuzzy, c-format
 msgid "can't create %s: %s\n"
 msgstr "%s: impossibile creare: %s\n"
@@ -2351,11 +2363,16 @@ msgstr "sign"
 msgid "WARNING: `%s' is an empty file\n"
 msgstr "%s: attenzione: file vuoto\n"
 
-#: g10/textfilter.c:199
+#: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
 msgstr ""
 
+#: g10/textfilter.c:189
+#, c-format
+msgid "input line longer than %d characters\n"
+msgstr ""
+
 #: g10/tdbio.c:117 g10/tdbio.c:1448
 #, fuzzy, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
@@ -2375,12 +2392,12 @@ msgstr ""
 msgid "%s: can't access: %s\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/ringedit.c:294 g10/tdbio.c:444
+#: g10/ringedit.c:296 g10/tdbio.c:444
 #, fuzzy, c-format
 msgid "%s: can't create directory: %s\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/ringedit.c:300 g10/tdbio.c:447
+#: g10/ringedit.c:302 g10/tdbio.c:447
 #, fuzzy, c-format
 msgid "%s: directory created\n"
 msgstr "%s: impossibile creare: %s\n"
@@ -2390,7 +2407,7 @@ msgstr "%s: impossibile creare: %s\n"
 msgid "%s: directory does not exist!\n"
 msgstr ""
 
-#: g10/openfile.c:109 g10/openfile.c:176 g10/ringedit.c:1310 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: impossibile creare: %s\n"
@@ -2486,551 +2503,551 @@ msgstr ""
 msgid "%s: failed to append a record: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:144
+#: g10/trustdb.c:165
 #, fuzzy
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr "Il trustdb è rovinato; per favore esegui \"gpgm --fix-trust-db\".\n"
 
-#: g10/trustdb.c:157
+#: g10/trustdb.c:178
 #, c-format
 msgid "trust record %lu, req type %d: read failed: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:172
+#: g10/trustdb.c:193
 #, c-format
 msgid "trust record %lu, type %d: write failed: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:186
+#: g10/trustdb.c:207
 #, fuzzy, c-format
 msgid "trust record %lu: delete failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/trustdb.c:200
+#: g10/trustdb.c:221
 #, fuzzy, c-format
 msgid "trustdb: sync failed: %s\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/trustdb.c:329
+#: g10/trustdb.c:351
 #, c-format
 msgid "error reading dir record for LID %lu: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:336
+#: g10/trustdb.c:358
 #, c-format
 msgid "lid %lu: expected dir record, got type %d\n"
 msgstr ""
 
-#: g10/trustdb.c:341
+#: g10/trustdb.c:363
 #, c-format
 msgid "no primary key for LID %lu\n"
 msgstr ""
 
-#: g10/trustdb.c:346
+#: g10/trustdb.c:368
 #, fuzzy, c-format
 msgid "error reading primary key for LID %lu: %s\n"
 msgstr "errore nella creazione della passhprase: %s\n"
 
-#: g10/trustdb.c:422
+#: g10/trustdb.c:445
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "la chained sigrec %lu ha il proprietario sbagliato\n"
 
-#: g10/trustdb.c:465
+#: g10/trustdb.c:488
 #, fuzzy, c-format
 msgid "'%s' is not a valid long keyID\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/trustdb.c:500
+#: g10/trustdb.c:523
 #, fuzzy, c-format
 msgid "key %08lX: no public key for trusted key - skipped\n"
 msgstr "chiave %08lX: chiave segreta senza chiave pubblica - saltata\n"
 
-#: g10/trustdb.c:509 g10/trustdb.c:567
+#: g10/trustdb.c:532 g10/trustdb.c:590
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "chiave %08lX: impossibile metterla nel trustdb\n"
 
-#: g10/trustdb.c:514 g10/trustdb.c:573
+#: g10/trustdb.c:537 g10/trustdb.c:596
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "chiave %08lX: richiesta del record fallita\n"
 
-#: g10/trustdb.c:519 g10/trustdb.c:582
+#: g10/trustdb.c:542 g10/trustdb.c:605
 #, fuzzy, c-format
 msgid "key %08lX: already in trusted key table\n"
 msgstr "chiave %08lX: già nella tabella delle chiavi segrete\n"
 
-#: g10/trustdb.c:522 g10/trustdb.c:585
+#: g10/trustdb.c:545 g10/trustdb.c:608
 #, fuzzy, c-format
 msgid "key %08lX: accepted as trusted key.\n"
 msgstr "chiave %08lX: accettata come chiave segreta\n"
 
-#: g10/trustdb.c:538
+#: g10/trustdb.c:561
 #, fuzzy, c-format
 msgid "NOTE: secret key %08lX is NOT protected.\n"
 msgstr "Questa chiave non è protetta.\n"
 
-#: g10/trustdb.c:550
+#: g10/trustdb.c:573
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "chiave %08lX: chiave segreta senza chiave pubblica - saltata\n"
 
-#: g10/trustdb.c:557
+#: g10/trustdb.c:580
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr "chiave %08lX: le chiavi segreta e pubblica non corrispondono\n"
 
-#: g10/trustdb.c:593
+#: g10/trustdb.c:616
 #, fuzzy, c-format
 msgid "enumerate secret keys failed: %s\n"
 msgstr "enum_secret_keys fallito: %s\n"
 
-#: g10/trustdb.c:776
+#: g10/trustdb.c:770
 #, fuzzy, c-format
 msgid "lid %lu: read dir record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:785
+#: g10/trustdb.c:779
 #, fuzzy, c-format
 msgid "lid %lu: read key record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:795
+#: g10/trustdb.c:789
 #, fuzzy, c-format
 msgid "lid %lu: read uid record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:804
+#: g10/trustdb.c:798
 #, fuzzy, c-format
 msgid "lid %lu: read pref record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:814
+#: g10/trustdb.c:808
 #, fuzzy, c-format
 msgid "lid %lu: read sig record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:1151
+#: g10/trustdb.c:1037
 msgid "Ooops, no keys\n"
 msgstr ""
 
-#: g10/trustdb.c:1155
+#: g10/trustdb.c:1041
 #, fuzzy
 msgid "Ooops, no user ids\n"
 msgstr "elenca le chiavi e gli user id"
 
-#: g10/trustdb.c:1226 g10/trustdb.c:1244
+#: g10/trustdb.c:1134 g10/trustdb.c:1152
 #, fuzzy, c-format
 msgid "user '%s' read problem: %s\n"
 msgstr "%s: utente non trovato\n"
 
-#: g10/trustdb.c:1229 g10/trustdb.c:1247
+#: g10/trustdb.c:1137 g10/trustdb.c:1155
 #, fuzzy, c-format
 msgid "user '%s' list problem: %s\n"
 msgstr "%s: utente non trovato\n"
 
-#: g10/trustdb.c:1237 g10/trustdb.c:1485
+#: g10/trustdb.c:1145 g10/trustdb.c:1447
 #, fuzzy, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "%s: utente non trovato\n"
 
-#: g10/trustdb.c:1239 g10/trustdb.c:1487
+#: g10/trustdb.c:1147 g10/trustdb.c:1449
 #, fuzzy, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "inizializzazione del trustdb fallita: %s\n"
 
-#: g10/trustdb.c:1242
+#: g10/trustdb.c:1150
 #, fuzzy, c-format
 msgid "user '%s' not in trustdb\n"
 msgstr "%s: utente non trovato\n"
 
-#: g10/trustdb.c:1277
+#: g10/trustdb.c:1186
 #, c-format
 msgid ""
 "# List of assigned trustvalues, created %s\n"
 "# (Use \"gpgm --import-ownertrust\" to restore them)\n"
 msgstr ""
 
-#: g10/trustdb.c:1283
+#: g10/trustdb.c:1192
 msgid "directory record w/o primary key\n"
 msgstr ""
 
-#: g10/trustdb.c:1290
+#: g10/trustdb.c:1199
 #, fuzzy, c-format
 msgid "error reading key record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/trustdb.c:1330
+#: g10/trustdb.c:1240
 msgid "line too long\n"
 msgstr ""
 
-#: g10/trustdb.c:1338
+#: g10/trustdb.c:1248
 msgid "error: missing colon\n"
 msgstr ""
 
-#: g10/trustdb.c:1343
+#: g10/trustdb.c:1253
 #, fuzzy
 msgid "error: invalid fingerprint\n"
 msgstr "errore nella riga della coda\n"
 
-#: g10/trustdb.c:1347
+#: g10/trustdb.c:1257
 #, fuzzy
 msgid "error: no ownertrust value\n"
 msgstr "esporta i valori di fiducia"
 
-#: g10/trustdb.c:1372
+#: g10/trustdb.c:1282
 msgid "key not in trustdb, searching ring.\n"
 msgstr ""
 
-#: g10/trustdb.c:1375
+#: g10/trustdb.c:1285
 #, fuzzy, c-format
 msgid "key not in ring: %s\n"
 msgstr "impossibile scrivere il portachiavi: %s\n"
 
-#: g10/trustdb.c:1379
+#: g10/trustdb.c:1289
 msgid "Oops: key is now in trustdb???\n"
 msgstr ""
 
 #. update the ownertrust
-#: g10/trustdb.c:1384
+#: g10/trustdb.c:1294
 #, fuzzy, c-format
 msgid "insert trust record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
 #. error
-#: g10/trustdb.c:1390
+#: g10/trustdb.c:1300
 #, fuzzy, c-format
 msgid "error finding dir record: %s\n"
 msgstr "rimozione dell'armatura fallita: %s\n"
 
-#: g10/trustdb.c:1490
+#: g10/trustdb.c:1452
 #, fuzzy, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/trustdb.c:1493
+#: g10/trustdb.c:1455
 #, fuzzy, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "inizializzazione del trustdb fallita: %s\n"
 
-#: g10/trustdb.c:1565
+#: g10/trustdb.c:1494
 #, c-format
 msgid "%s: keyblock read problem: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:1579
+#: g10/trustdb.c:1508
 #, fuzzy, c-format
 msgid "%s: update failed: %s\n"
 msgstr "aggiornamento fallito: %s\n"
 
-#: g10/trustdb.c:1582
+#: g10/trustdb.c:1511
 #, fuzzy, c-format
 msgid "%s: updated\n"
 msgstr "\\t%lu chiavi aggiornate\n"
 
-#: g10/trustdb.c:1584
+#: g10/trustdb.c:1513
 #, c-format
 msgid "%s: okay\n"
 msgstr ""
 
-#: g10/trustdb.c:1599
+#: g10/trustdb.c:1528
 #, c-format
 msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr ""
 
-#: g10/trustdb.c:1612
+#: g10/trustdb.c:1541
 #, fuzzy, c-format
 msgid "lid %lu: keyblock not found: %s\n"
 msgstr "chiave %08lX: chiave pubblica non trovata: %s\n"
 
-#: g10/trustdb.c:1621 g10/trustdb.c:1690
+#: g10/trustdb.c:1550 g10/trustdb.c:1623
 #, fuzzy, c-format
 msgid "lid %lu: update failed: %s\n"
 msgstr "aggiornamento fallito: %s\n"
 
-#: g10/trustdb.c:1627 g10/trustdb.c:1696
+#: g10/trustdb.c:1556 g10/trustdb.c:1629
 #, fuzzy, c-format
 msgid "lid %lu: updated\n"
 msgstr "\\t%lu chiavi aggiornate\n"
 
-#: g10/trustdb.c:1631 g10/trustdb.c:1700
+#: g10/trustdb.c:1560 g10/trustdb.c:1633
 #, fuzzy, c-format
 msgid "lid %lu: okay\n"
 msgstr "lid %lu: manca la chiave primaria\n"
 
-#: g10/trustdb.c:1638 g10/trustdb.c:1706
+#: g10/trustdb.c:1567 g10/trustdb.c:1639
 #, c-format
 msgid "%lu keys processed\n"
 msgstr "%lu chiavi esaminate\n"
 
-#: g10/trustdb.c:1640
+#: g10/trustdb.c:1569
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr "\\t%lu chiavi saltate\n"
 
-#: g10/trustdb.c:1642 g10/trustdb.c:1708
+#: g10/trustdb.c:1571 g10/trustdb.c:1641
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr "\\t%lu chiavi con errori\n"
 
-#: g10/trustdb.c:1644 g10/trustdb.c:1710
+#: g10/trustdb.c:1573 g10/trustdb.c:1643
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr "\\t%lu chiavi aggiornate\n"
 
-#: g10/trustdb.c:1674
+#: g10/trustdb.c:1607
 #, fuzzy, c-format
 msgid "lid ?: insert failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/trustdb.c:1679
+#: g10/trustdb.c:1612
 #, fuzzy, c-format
 msgid "lid %lu: insert failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/trustdb.c:1685
+#: g10/trustdb.c:1618
 #, fuzzy, c-format
 msgid "lid %lu: inserted\n"
 msgstr "\\t%lu chiavi inserite\n"
 
-#: g10/trustdb.c:1712
+#: g10/trustdb.c:1645
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr "\\t%lu chiavi inserite\n"
 
-#: g10/trustdb.c:1715
+#: g10/trustdb.c:1648
 #, fuzzy, c-format
 msgid "enumerate keyblocks failed: %s\n"
 msgstr "enum_secret_keys fallito: %s\n"
 
-#: g10/trustdb.c:1760
+#: g10/trustdb.c:1694
 #, fuzzy, c-format
 msgid "check_trust: search dir record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:1767
+#: g10/trustdb.c:1701
 #, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr "chiave %08lX: inserimento del record della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:1771
+#: g10/trustdb.c:1705
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "chiave %08lX.%lu: inserita nel trustdb\n"
 
-#: g10/trustdb.c:1779
+#: g10/trustdb.c:1713
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "chiave %08lX.%lu: creata nel futuro (salto nel tempo o problema\n"
 "con l'orologio)\n"
 
-#: g10/trustdb.c:1786
+#: g10/trustdb.c:1720
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "chiave %08lX.%lu: scaduta il %s\n"
 
-#: g10/trustdb.c:1794
+#: g10/trustdb.c:1728
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "chiave %08lX.%lu: controllo della fiducia fallito: %s\n"
 
-#: g10/trustdb.c:2003 g10/trustdb.c:2032 g10/trustdb.c:2771
+#: g10/trustdb.c:1951 g10/trustdb.c:1981 g10/trustdb.c:2734
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""
 
-#: g10/trustdb.c:2054
+#: g10/trustdb.c:2003
 #, fuzzy, c-format
 msgid "get_dir_record: search_record failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/trustdb.c:2117
+#: g10/trustdb.c:2071
 #, fuzzy, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 msgstr ""
 "nota: rec di %lu[%d] nella hintlist di %lu ma marcato come verificato\n"
 
-#: g10/trustdb.c:2121
+#: g10/trustdb.c:2075
 #, fuzzy, c-format
 msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr "nota: rec di %lu[%d] nella hintlist di %lu ma  non marcato\n"
 
 #. we need the dir record
-#: g10/trustdb.c:2128
+#: g10/trustdb.c:2082
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr "Il rec di %lu[%d] nella hintlist di %lu non punta a un record dir\n"
 
-#: g10/trustdb.c:2134
+#: g10/trustdb.c:2088
 #, c-format
 msgid "lid %lu: no primary key\n"
 msgstr "lid %lu: manca la chiave primaria\n"
 
-#: g10/trustdb.c:2167
+#: g10/trustdb.c:2121
 #, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr "lid %lu: user id non trovato nel keyblock\n"
 
-#: g10/trustdb.c:2171
+#: g10/trustdb.c:2125
 #, c-format
 msgid "lid %lu: user id without signature\n"
 msgstr "chiave %08lX: user id senza firma\n"
 
-#: g10/trustdb.c:2178
+#: g10/trustdb.c:2132
 #, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr "lid %lu: autofirma nella hintlist\n"
 
-#: g10/trustdb.c:2189 g10/trustdb.c:2910 g10/trustdb.c:2994
+#: g10/trustdb.c:2143 g10/trustdb.c:2879 g10/trustdb.c:2962
 msgid "Valid certificate revocation"
 msgstr "Revoca del certificato valida"
 
-#: g10/trustdb.c:2190 g10/trustdb.c:2911 g10/trustdb.c:2995
+#: g10/trustdb.c:2144 g10/trustdb.c:2880 g10/trustdb.c:2963
 msgid "Good certificate"
 msgstr "Certificato corretto"
 
-#: g10/trustdb.c:2199
+#: g10/trustdb.c:2153
 msgid "very strange: no public key\n"
 msgstr "molto strano: non ci sono chiavi pubbliche\n"
 
-#: g10/trustdb.c:2247
+#: g10/trustdb.c:2201
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr "hintlist %lu[%d] di %lu non punta a un record dir\n"
 
-#: g10/trustdb.c:2253
+#: g10/trustdb.c:2207
 #, c-format
 msgid "lid %lu does not have a key\n"
 msgstr "Il lid %lu non ha una chiave\n"
 
-#: g10/trustdb.c:2263
+#: g10/trustdb.c:2217
 #, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr "lid %lu: impossibile ottenere il keyblock: %s\n"
 
-#: g10/trustdb.c:2320 g10/trustdb.c:3245
+#: g10/trustdb.c:2274 g10/trustdb.c:3227
 #, fuzzy, c-format
 msgid "tdbio_search_dir failed: %s\n"
 msgstr "rimozione dell'armatura fallita: %s\n"
 
-#: g10/trustdb.c:2473
+#: g10/trustdb.c:2427
 #, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
 msgstr "chiave %08lX.%lu: Legame con la subchiave corretto\n"
 
-#: g10/trustdb.c:2479 g10/trustdb.c:2521
+#: g10/trustdb.c:2433 g10/trustdb.c:2475
 #, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
 msgstr "chiave %08lX.%lu: Legame con la subchiave non valido: %s\n"
 
-#: g10/trustdb.c:2494
+#: g10/trustdb.c:2448
 #, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
 msgstr "chiave %08lX.%lu: Revoca della chiave valida\n"
 
-#: g10/trustdb.c:2500
+#: g10/trustdb.c:2454
 #, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
 msgstr "chiave %08lX.%lu: Revoca della chiave non valida: %s\n"
 
-#: g10/trustdb.c:2515
+#: g10/trustdb.c:2469
 #, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
 msgstr "chiave %08lX.%lu: Revoca della subchiave valida\n"
 
-#: g10/trustdb.c:2615
+#: g10/trustdb.c:2573
 msgid "Good self-signature"
 msgstr "Autofirma corretta"
 
-#: g10/trustdb.c:2626
+#: g10/trustdb.c:2584
 msgid "Invalid self-signature"
 msgstr "Autofirma non valida"
 
-#: g10/trustdb.c:2636
+#: g10/trustdb.c:2594
 msgid "Valid user ID revocation skipped due to a newer self signature\n"
 msgstr ""
 
-#: g10/trustdb.c:2643
+#: g10/trustdb.c:2601
 msgid "Valid user ID revocation\n"
 msgstr "Revoca dell'user ID valida\n"
 
-#: g10/trustdb.c:2650
+#: g10/trustdb.c:2608
 msgid "Invalid user ID revocation"
 msgstr "Revoca dell'user ID non valida"
 
-#: g10/trustdb.c:2734
+#: g10/trustdb.c:2697
 msgid "Too many preferences"
 msgstr "Troppe preferenze"
 
-#: g10/trustdb.c:2748
+#: g10/trustdb.c:2711
 #, fuzzy
 msgid "Too many preference items"
 msgstr "Troppi elementi di preferenza"
 
-#: g10/trustdb.c:2888
+#: g10/trustdb.c:2857
 #, fuzzy
 msgid "duplicated certificate - deleted"
 msgstr "Certificato doppio - cancellato"
 
-#: g10/trustdb.c:2922
+#: g10/trustdb.c:2891
 #, fuzzy
 msgid "Hmmm, public key lost?"
 msgstr "chiave pubblica perduta"
 
-#: g10/trustdb.c:2932 g10/trustdb.c:3015
+#: g10/trustdb.c:2900 g10/trustdb.c:2983
 msgid "Invalid certificate revocation"
 msgstr "Certificato di revoca non valido"
 
-#: g10/trustdb.c:2933 g10/trustdb.c:3016
+#: g10/trustdb.c:2901 g10/trustdb.c:2984
 msgid "Invalid certificate"
 msgstr "Certificato non valido"
 
-#: g10/trustdb.c:2948
+#: g10/trustdb.c:2916
 #, c-format
 msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
 msgstr ""
 
-#: g10/trustdb.c:2962
+#: g10/trustdb.c:2930
 #, fuzzy, c-format
 msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr "Il rec di %lu[%d] nella hintlist di %lu non punta a un record dir\n"
 
 #. that should never happen
-#: g10/trustdb.c:3215
+#: g10/trustdb.c:3190
 #, fuzzy, c-format
 msgid "insert_trust_record: keyblock not found: %s\n"
 msgstr "chiave %08lX: chiave segreta non trovata: %s\n"
 
-#: g10/trustdb.c:3233
+#: g10/trustdb.c:3215
 msgid "did not use primary key for insert_trust_record()\n"
 msgstr ""
 
-#: g10/ringedit.c:314
+#: g10/ringedit.c:316
 #, fuzzy, c-format
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/ringedit.c:320 g10/ringedit.c:1315
+#: g10/ringedit.c:322 g10/ringedit.c:1330
 #, fuzzy, c-format
 msgid "%s: keyring created\n"
 msgstr "%s: creato un nuovo file delle opzioni\n"
 
-#: g10/ringedit.c:1492
+#: g10/ringedit.c:1507
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr ""
 
-#: g10/ringedit.c:1493
+#: g10/ringedit.c:1508
 #, fuzzy, c-format
 msgid "%s is the unchanged one\n"
 msgstr "chiavi segrete non cambiate %lu\n"
 
-#: g10/ringedit.c:1494
+#: g10/ringedit.c:1509
 #, c-format
 msgid "%s is the new one\n"
 msgstr ""
 
-#: g10/ringedit.c:1495
+#: g10/ringedit.c:1510
 msgid "Please fix this possible security flaw\n"
 msgstr ""
 
@@ -3065,12 +3082,12 @@ msgstr "Sovrascrivo (y/N)? "
 msgid "writing to stdout\n"
 msgstr "scrivo su stdout\n"
 
-#: g10/openfile.c:145
+#: g10/openfile.c:147
 #, c-format
 msgid "assuming signed data in `%s'\n"
 msgstr "presumo che i dati firmati siano in `%s'\n"
 
-#: g10/openfile.c:192
+#: g10/openfile.c:197
 #, c-format
 msgid "%s: new options file created\n"
 msgstr "%s: creato un nuovo file delle opzioni\n"
index 11352ff..4ed977c 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg-0.9.2\n"
-"POT-Creation-Date: 1999-02-19 15:31+0100\n"
+"POT-Creation-Date: 1999-03-08 19:50+0100\n"
 "PO-Revision-Date: 1999-01-26 01:30+01:00\n"
 "Last-Translator: Janusz A. Urbanowicz <alex@bofh.net.pl>\n"
 "Language-Team: Polish <pl@li.org>\n"
@@ -22,15 +22,15 @@ msgstr ""
 "g10/seckey-cert.c g10/sig-check.c g10/sign\\.c g10/trustdb.c g10/verify.c "
 "g10/status.c g10/pubkey-enc.c\n"
 
-#: util/secmem.c:77
+#: util/secmem.c:76
 msgid "Warning: using insecure memory!\n"
 msgstr "Ostrze¿enie: u¿ywana pamiêæ nie jest pamiêci± bezpieczn±!\n"
 
-#: util/secmem.c:250
+#: util/secmem.c:249
 msgid "operation is not possible without initialized secure memory\n"
 msgstr ""
 
-#: util/secmem.c:251
+#: util/secmem.c:250
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
@@ -260,7 +260,7 @@ msgstr ""
 "JAKIEKOLWIEK DANE GENEROWANE PRZEZ TEN PROGRAM NIE NADAJ¡ SIÊ DO \n"
 "NORMALNEGO U¯YTKU I NIE ZAPEWNIAJ¡ BEZPIECZEÑSTWA!!\n"
 
-#: cipher/rndlinux.c:118
+#: cipher/rndlinux.c:114
 #, c-format
 msgid ""
 "\n"
@@ -447,7 +447,10 @@ msgstr "mniej komunikat
 msgid "force v3 signatures"
 msgstr "wymuszenie trzeciej wersji formatu podpisów"
 
-#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:235
+msgid "do not make any changes"
+msgstr ""
+
 #: g10/g10.c:236
 msgid "batch mode: never ask"
 msgstr "tryb wsadowy: ¿adnych pytañ"
@@ -634,122 +637,122 @@ msgstr "plik opcji '%s': %s\n"
 msgid "reading options from `%s'\n"
 msgstr "odczyt opcji z '%s'\n"
 
-#: g10/g10.c:796
+#: g10/g10.c:797
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s nie jest poprawn± nazw± zestawu znaków\n"
 
-#: g10/g10.c:836 g10/g10.c:848
+#: g10/g10.c:837 g10/g10.c:849
 msgid "selected cipher algorithm is invalid\n"
 msgstr "wybrany algorytm szyfruj±cy jest niepoprawny\n"
 
-#: g10/g10.c:842 g10/g10.c:854
+#: g10/g10.c:843 g10/g10.c:855
 msgid "selected digest algorithm is invalid\n"
 msgstr "wybrany algorytm geenracji skrótów wiadomo¶ci jest niepoprawny\n"
 
-#: g10/g10.c:857
+#: g10/g10.c:858
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "ustawienie algortytmu kompresji musi pochodziæ z zakresu %d..%d\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:860
 msgid "completes-needed must be greater than 0\n"
 msgstr "warto¶æ completes-needed musi byæ wiêksza od 0\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:862
 msgid "marginals-needed must be greater than 1\n"
 msgstr "warto¶æ marginals-needed musi byæ wiêksza od 1\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:864
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "warto¶æ max-cert-depth musi mie¶ciæ siê w zakresie od 1 do 255\n"
 
-#: g10/g10.c:866
+#: g10/g10.c:867
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "UWAGA: prosty tryb S2K (0) jest stanowczo odradzany\n"
 
-#: g10/g10.c:870
+#: g10/g10.c:871
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "Niepoprawny tryb S2K; musi mieæ warto¶æ 0, 1 lub 3\n"
 
-#: g10/g10.c:947
+#: g10/g10.c:948
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "Inicjowanie Bazy Zaufania nie powiod³o siê: %s\n"
 
-#: g10/g10.c:953
+#: g10/g10.c:954
 msgid "--store [filename]"
 msgstr "--store [plik]"
 
-#: g10/g10.c:961
+#: g10/g10.c:962
 msgid "--symmetric [filename]"
 msgstr "--symmetric [plik]"
 
-#: g10/g10.c:969
+#: g10/g10.c:970
 msgid "--encrypt [filename]"
 msgstr "--encrypt [plik]"
 
-#: g10/g10.c:982
+#: g10/g10.c:983
 msgid "--sign [filename]"
 msgstr "--sign [plik]"
 
-#: g10/g10.c:995
+#: g10/g10.c:996
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [plik]"
 
-#: g10/g10.c:1009
+#: g10/g10.c:1010
 msgid "--clearsign [filename]"
 msgstr "--clearsign [plik]\""
 
-#: g10/g10.c:1021
+#: g10/g10.c:1022
 msgid "--decrypt [filename]"
 msgstr "--decrypt [plik]"
 
-#: g10/g10.c:1030
+#: g10/g10.c:1031
 msgid "--edit-key username [commands]"
 msgstr "--edit-key nazwa u¿ytkownika [polecenia]"
 
-#: g10/g10.c:1046
+#: g10/g10.c:1047
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nazwa u¿ytkownika"
 
-#: g10/g10.c:1049
+#: g10/g10.c:1050
 msgid "--delete-key username"
 msgstr "--delete-key nazwa u¿ytkownika"
 
-#: g10/encode.c:216 g10/g10.c:1072 g10/sign.c:311
+#: g10/encode.c:222 g10/g10.c:1073 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "nie mogê otworzyæ %s: %s\n"
 
-#: g10/g10.c:1083
+#: g10/g10.c:1084
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [identyfikator] [zbiór kluczy]"
 
-#: g10/g10.c:1144
+#: g10/g10.c:1145
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "Usuniêcie opakowania ASCII nie powiod³o siê: %s\n"
 
-#: g10/g10.c:1152
+#: g10/g10.c:1153
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "Opakowywanie ASCII nie powiod³o siê: %s\n"
 
-#: g10/g10.c:1218
+#: g10/g10.c:1219
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "niew³a¶ciwy algorytm skrótu '%s'\n"
 
-#: g10/g10.c:1297
+#: g10/g10.c:1298
 msgid "[filename]"
 msgstr "[nazwa pliku]"
 
-#: g10/g10.c:1301
+#: g10/g10.c:1302
 msgid "Go ahead and type your message ...\n"
 msgstr "Wpisz tutaj swoj± wiadomo¶æ ...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1304 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1305 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "nie mogê otworzyæ '%s'\n"
@@ -829,7 +832,7 @@ msgstr ""
 "znak kodowania quoted-printable w opakowaniu ASCII - prawdopodobnie\n"
 "przek³amanie wprowadzone przez program transportowy poczty\n"
 
-#: g10/pkclist.c:138
+#: g10/pkclist.c:136
 #, c-format
 msgid ""
 "No trust value assigned to %lu:\n"
@@ -838,7 +841,7 @@ msgstr ""
 "Brak warto¶ci zaufania dla %lu:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:148
+#: g10/pkclist.c:146
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -861,28 +864,28 @@ msgstr ""
 " 4 = W pe³ni mu ufam.\n"
 " i = potrzebujê wiêcej informacji\n"
 
-#: g10/pkclist.c:157
+#: g10/pkclist.c:155
 msgid " m = back to the main menu\n"
 msgstr " p = powrót do g³ównego menu\n"
 
-#: g10/pkclist.c:159
+#: g10/pkclist.c:157
 msgid " q = quit\n"
 msgstr "w = wyj¶cie\n"
 
 #. a string with valid answers
-#: g10/pkclist.c:164
+#: g10/pkclist.c:162
 msgid "sSmMqQ"
 msgstr "iIpPwW"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:166
 msgid "Your decision? "
 msgstr "Twoja decyzja? "
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:186
 msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr "Certyfikaty prowadz±ce do ostatecznie zaufanego klucza:\n"
 
-#: g10/pkclist.c:223
+#: g10/pkclist.c:221
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -892,7 +895,7 @@ msgstr ""
 "Sprawd¼my czy mo¿na przypisaæ brakuj±ce warto¶ci zaufania.\n"
 "\n"
 
-#: g10/pkclist.c:261
+#: g10/pkclist.c:260
 msgid ""
 "No path leading to one of our keys found.\n"
 "\n"
@@ -900,7 +903,7 @@ msgstr ""
 "Brak ¶cie¿ki prowadz±cej do którego¶ z naszych kluczy.\n"
 "\n"
 
-#: g10/pkclist.c:263
+#: g10/pkclist.c:262
 msgid ""
 "No certificates with undefined trust found.\n"
 "\n"
@@ -908,7 +911,7 @@ msgstr ""
 "Brak certyfikatów o niezdefiniowanym poziomie zaufania.\n"
 "\n"
 
-#: g10/pkclist.c:265
+#: g10/pkclist.c:264
 msgid ""
 "No trust values changed.\n"
 "\n"
@@ -916,31 +919,31 @@ msgstr ""
 "Parametry zaufania nie zosta³y zmienione.\n"
 "\n"
 
-#: g10/pkclist.c:280
+#: g10/pkclist.c:279
 #, c-format
 msgid "key %08lX: key has been revoked!\n"
 msgstr "klucz %08lX: klucz zosta³ uniewa¿niony!\n"
 
-#: g10/pkclist.c:286 g10/pkclist.c:381
+#: g10/pkclist.c:285 g10/pkclist.c:397
 msgid "Use this key anyway? "
 msgstr "U¿yæ tego klucza pomimo to? "
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:309
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX: data wa¿no¶ci klucza up³ynê³a\n"
 
-#: g10/pkclist.c:314
+#: g10/pkclist.c:315
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr "%08lX: brak informacji aby obliczyæ prawdopodobieñstwo zaufania\n"
 
-#: g10/pkclist.c:332
+#: g10/pkclist.c:333
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX: OSTRZE¯ENIE: Nie ufamy temu kluczowi!\n"
 
-#: g10/pkclist.c:338
+#: g10/pkclist.c:339
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -949,16 +952,16 @@ msgstr ""
 "%08lX: Nie ma pewno¶æi ¿e ten klucz faktycznie nale¿y do odoby podaj±cej\n"
 "siê za jego w³a¶ciciela, ale jest akceptowalny.\n"
 
-#: g10/pkclist.c:344
+#: g10/pkclist.c:345
 msgid "This key probably belongs to the owner\n"
 msgstr ""
 "Ten klucz prawdopodobnie nale¿y do osoby podaj±cej siê za jego w³a¶ciciela.\n"
 
-#: g10/pkclist.c:349
+#: g10/pkclist.c:350
 msgid "This key belongs to us\n"
 msgstr "Ten klucz nale¿y do nas\n"
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:392
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -969,58 +972,58 @@ msgstr ""
 "w³a¶ciciela. Je¶li nie masz co do tego ¿adnych w±tpliwo¶ci i *naprawdê*\n"
 "wiesz co robisz mo¿esz odpowiedzieæ \"tak\" na nastêpne pytanie.\n"
 
-#: g10/pkclist.c:385
+#: g10/pkclist.c:405
 msgid "WARNING: Using untrusted key!\n"
 msgstr "OSTRZE¯ENIE: u¿ywany jest klucz nie obdarzony zaufaniem!\n"
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:441
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "OSTRZE¯ENIE: Ten klucz zosta³ uniewa¿niony przez w³a¶ciciela!\n"
 
-#: g10/pkclist.c:422
+#: g10/pkclist.c:442
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         To mo¿e oznaczaæ ¿e podpis jest fa³szerstwem.\n"
 
-#: g10/pkclist.c:443
+#: g10/pkclist.c:463
 msgid "Note: This key has expired!\n"
 msgstr "Uwaga: Data wa¿no¶ci tego klucza up³ynê³a!\n"
 
-#: g10/pkclist.c:450
+#: g10/pkclist.c:470
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr "OSTRZE¯ENIE: Ten klucz nie jest po¶wiadczony zaufanym podpisem!\n"
 
-#: g10/pkclist.c:452
+#: g10/pkclist.c:472
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 "          Nic nie wskazuje na to ¿e ten podpis z³o¿y³ w³a¶ciciel klucza.\n"
 
-#: g10/pkclist.c:468
+#: g10/pkclist.c:488
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "OSTRZE¯ENIE: Nie ufamy temu kluczowi!\n"
 
-#: g10/pkclist.c:469
+#: g10/pkclist.c:489
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         Ten podpis prawdopodobnie jest FA£SZERSTWEM.\n"
 
-#: g10/pkclist.c:476
+#: g10/pkclist.c:496
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "OSTRZE¯ENIE: Ten klucz nie jest po¶wiadczony wystarczaj±co zaufanymi "
 "podpisami!\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:499
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 "         Nie ma pewno¶ci ¿e ten podpis zosta³ z³o¿nony przez w³a¶ciciela.\n"
 
-#: g10/pkclist.c:532 g10/pkclist.c:545 g10/pkclist.c:607 g10/pkclist.c:635
+#: g10/pkclist.c:552 g10/pkclist.c:565 g10/pkclist.c:628 g10/pkclist.c:656
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: pominiêty: %s\n"
 
-#: g10/pkclist.c:554
+#: g10/pkclist.c:574
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1028,20 +1031,20 @@ msgstr ""
 "Nie poda³e¶ identyfikatora u¿ytkownika (user ID). \n"
 "Mo¿na to zrobiæ za pomoc± opcji \"-r\".\n"
 
-#: g10/pkclist.c:559
+#: g10/pkclist.c:579
 msgid "Enter the user ID: "
 msgstr "Wprowad¼ identyfikator u¿ytkownika (user ID): "
 
-#: g10/pkclist.c:570
+#: g10/pkclist.c:590
 msgid "No such user ID.\n"
 msgstr "Brak takiego identyfikatora u¿ytkownika.\n"
 
-#: g10/pkclist.c:615
+#: g10/pkclist.c:636
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: b³±d podczas sprawdzania klucza: %s\n"
 
-#: g10/pkclist.c:641
+#: g10/pkclist.c:662
 msgid "no valid addressees\n"
 msgstr "brak poprawnych adresów\n"
 
@@ -1192,7 +1195,7 @@ msgstr "Data wa
 msgid "Is this correct (y/n)? "
 msgstr "Dane poprawne (t/n)? "
 
-#: g10/keygen.c:582
+#: g10/keygen.c:583
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1208,23 +1211,23 @@ msgstr ""
 "    \"Tadeusz ¯eleñski (Boy) <tzb@provider.com.pl>\"\n"
 "\n"
 
-#: g10/keygen.c:593
+#: g10/keygen.c:594
 msgid "Real name: "
 msgstr "Imiê i nazwisko: "
 
-#: g10/keygen.c:597
+#: g10/keygen.c:598
 msgid "Invalid character in name\n"
 msgstr "Niew³a¶ciwy znak w imieniu lub nazwisku\n"
 
-#: g10/keygen.c:599
+#: g10/keygen.c:600
 msgid "Name may not start with a digit\n"
 msgstr "Imiê lub nazwisko nie mo¿e zaczynaæ siê od cyfry\n"
 
-#: g10/keygen.c:601
+#: g10/keygen.c:602
 msgid "Name must be at least 5 characters long\n"
 msgstr "Imiê i nazwisko musz± mieæ conajmniej 5 znaków d³ugo¶ci.\n"
 
-#: g10/keygen.c:609
+#: g10/keygen.c:610
 msgid "Email address: "
 msgstr "Adres poczty elektronicznej: "
 
@@ -1240,7 +1243,12 @@ msgstr "Komentarz: "
 msgid "Invalid character in comment\n"
 msgstr "Niew³a¶ciwy znak w komentarzu\n"
 
-#: g10/keygen.c:655
+#: g10/keygen.c:657
+#, c-format
+msgid "You are using the `%s' character set.\n"
+msgstr ""
+
+#: g10/keygen.c:663
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1251,31 +1259,31 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:658
+#: g10/keygen.c:666
 msgid "NnCcEeOoQq"
 msgstr "IiKkEeDdWw"
 
-#: g10/keygen.c:668
+#: g10/keygen.c:676
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr ""
 "Zmieniæ (I)miê/nazwisko, (K)omentarz, adres (E)mail, \n"
 "przej¶æ (D)alej czy (W)yj¶æ z programu ? "
 
-#: g10/keygen.c:720
+#: g10/keygen.c:728
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
 msgstr ""
 "Musisz podaæ wyra¿enie przej¶ciowe (has³o) aby ochroniæ swój klucz tajny.\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:728
+#: g10/keyedit.c:389 g10/keygen.c:736
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr ""
 "Powtórzone wyra¿enie przej¶ciowe nie zgadza siê z podanym w pierwszej "
 "próbie;\n"
 "spróbuj jeszcze raz.\n"
 
-#: g10/keygen.c:734
+#: g10/keygen.c:742
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1287,7 +1295,7 @@ msgstr ""
 "i opcji \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:755
+#: g10/keygen.c:763
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1302,33 +1310,33 @@ msgstr ""
 "entropii\n"
 "do zasilenia generatora liczb losowych.\n"
 
-#: g10/keygen.c:825
+#: g10/keygen.c:833
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "Generacjê klucza mo¿na wykonywaæ tylko w trybie interaktywnym\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:841
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "Para kluczy dla DSA bêdzie mia³a 1024 bity d³ugo¶ci.\n"
 
-#: g10/keygen.c:839
+#: g10/keygen.c:847
 msgid "Key generation cancelled.\n"
 msgstr "Procedura generacji klucza zosta³a anulowana.\n"
 
-#: g10/keygen.c:849
+#: g10/keygen.c:857
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "zapisujê certyfikat publiczny w '%s'\n"
 
-#: g10/keygen.c:850
+#: g10/keygen.c:858
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "zapisujê certyfikat prywatny w '%s'\n"
 
-#: g10/keygen.c:927
+#: g10/keygen.c:935
 msgid "public and secret key created and signed.\n"
 msgstr "Prywatny i publiczny klucz zosta³ stworzony i podpisany.\n"
 
-#: g10/keygen.c:929
+#: g10/keygen.c:937
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--edit-key\" to generate a secondary key for this purpose.\n"
@@ -1336,12 +1344,12 @@ msgstr ""
 "Ten klucz nie mo¿e byæ wykorzystany do szyfrowania. Komend± \"--edit-key\" \n"
 "mo¿na dodaæ do niego podklucz u¿ywany do szyfrowania.\n"
 
-#: g10/keygen.c:943 g10/keygen.c:1042
+#: g10/keygen.c:951 g10/keygen.c:1050
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Generacja klucza nie powiod³a siê: %s\n"
 
-#: g10/keygen.c:987 g10/sig-check.c:172 g10/sign.c:52
+#: g10/keygen.c:995 g10/sig-check.c:209 g10/sign.c:52
 #, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1349,7 +1357,7 @@ msgstr ""
 "klucz zosta³ stworzony %lu sekundê w przysz³o¶ci (zaburzenia\n"
 "czasoprzestrzeni, lub ¼le ustawiony zegar systemowy)\n"
 
-#: g10/keygen.c:989 g10/sig-check.c:174 g10/sign.c:54
+#: g10/keygen.c:997 g10/sig-check.c:211 g10/sign.c:54
 #, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1357,11 +1365,11 @@ msgstr ""
 "klucz zosta³ stworzony %lu sekund w przysz³o¶ci (zaburzenia\n"
 "czasoprzestrzeni, lub ¼le ustawiony zegar systemowy)\n"
 
-#: g10/keygen.c:1020
+#: g10/keygen.c:1028
 msgid "Really create? "
 msgstr "Na pewno generowaæ? "
 
-#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:169 g10/tdbio.c:467
+#: g10/encode.c:88 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
 #: g10/tdbio.c:527
 #, c-format
 msgid "%s: can't open: %s\n"
@@ -1372,17 +1380,17 @@ msgstr "%s: nie mog
 msgid "error creating passphrase: %s\n"
 msgstr "b³±d podczs tworzenia wyra¿enia przej¶ciowego (has³a): %s\n"
 
-#: g10/encode.c:155 g10/encode.c:269
+#: g10/encode.c:161 g10/encode.c:275
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: OSTRZE¯ENIE: plik jest pusty\n"
 
-#: g10/encode.c:222
+#: g10/encode.c:228
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "odczyt z '%s'\n"
 
-#: g10/encode.c:397
+#: g10/encode.c:403
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s/%s zaszyfrowany dla: %s\n"
@@ -1414,12 +1422,12 @@ msgstr "zbyt wiele wpis
 msgid "too many entries in unk cache - disabled\n"
 msgstr "zbyt wiele wpisów w buforze nieznanych kluczy - wy³±czony\n"
 
-#: g10/getkey.c:1496 g10/getkey.c:1552
+#: g10/getkey.c:1502 g10/getkey.c:1558
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr "u¿ywany jest podklucz %08lX zamiast klucza g³ównego %08lX\n"
 
-#: g10/import.c:116 g10/trustdb.c:1318
+#: g10/import.c:116 g10/trustdb.c:1228
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "nie mo¿na otworzyæ pliku: %s\n"
@@ -1429,12 +1437,12 @@ msgstr "nie mo
 msgid "skipping block of type %d\n"
 msgstr "pomijam blok typu %d\n"
 
-#: g10/import.c:167 g10/trustdb.c:1635 g10/trustdb.c:1704
+#: g10/import.c:167 g10/trustdb.c:1564 g10/trustdb.c:1637
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr "%lu kluczy przetworzonych do tej chwili\n"
 
-#: g10/import.c:172 g10/trustdb.c:1394
+#: g10/import.c:172 g10/trustdb.c:1304
 #, c-format
 msgid "read error: %s\n"
 msgstr "b³±d odczytu: %s\n"
@@ -1517,7 +1525,7 @@ msgstr "klucz %08lX: brak klucza publicznego: %s\n"
 msgid "no default public keyring\n"
 msgstr "brak domy¶lnego zbioru kluczy publicznych\n"
 
-#: g10/import.c:374 g10/openfile.c:113 g10/sign.c:215 g10/sign.c:601
+#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "zapis do '%s'\n"
@@ -2093,43 +2101,47 @@ msgstr "Brak odpowiadaj
 msgid "No user id with index %d\n"
 msgstr "Brak identyfikatora u¿ytkownika o numerze %d.\n"
 
-#: g10/keyedit.c:1371
+#: g10/keyedit.c:1372
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Brak podklucza o indeksie %d\n"
 
-#: g10/mainproc.c:199
+#: g10/mainproc.c:202
 msgid "public key encrypted data: good DEK\n"
 msgstr "dane zaszyfrowane kluczem publicznym: poprawny klucz sesyjny\n"
 
-#: g10/mainproc.c:202
+#. fixme: defer this message until we have parsed all packets of
+#. * this type - do this by building a list of keys with their stati
+#. * and store it with the conetxt.  do_proc_packets can then use
+#. * this list to display some information
+#: g10/mainproc.c:209
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "b³±d odszyfrowywania kluczem publicznym: %s\n"
 
-#: g10/mainproc.c:229
+#: g10/mainproc.c:236
 msgid "decryption okay\n"
 msgstr "odszyfrowane poprawnie\n"
 
-#: g10/mainproc.c:232
+#: g10/mainproc.c:239
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "b³±d odszyfrowywania: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:256
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "UWAGA: nadawca zaznaczy³ ¿e wiadomo¶æ nie powinna byæ zapisywana\n"
 
-#: g10/mainproc.c:251
+#: g10/mainproc.c:258
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "pierwotna nazwa pliku='%.*s'\n"
 
-#: g10/mainproc.c:831
+#: g10/mainproc.c:839
 msgid "signature verification suppressed\n"
 msgstr "wymuszono pominiêcie sprawdzenia podpisu\n"
 
-#: g10/mainproc.c:837
+#: g10/mainproc.c:845
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr ""
@@ -2137,29 +2149,29 @@ msgstr ""
 "z u¿yciem klucza o identyfikatorze %08lX\n"
 
 #. just in case that we have no userid
-#: g10/mainproc.c:863 g10/mainproc.c:874
+#: g10/mainproc.c:871 g10/mainproc.c:882
 msgid "BAD signature from \""
 msgstr "NIEPOPRAWNY podpis z³o¿ony przez \""
 
-#: g10/mainproc.c:864 g10/mainproc.c:875
+#: g10/mainproc.c:872 g10/mainproc.c:883
 msgid "Good signature from \""
 msgstr "Poprawny podpis z³o¿ony przez \""
 
-#: g10/mainproc.c:866
+#: g10/mainproc.c:874
 #, fuzzy
 msgid "                aka \""
 msgstr "         do³±czono do zbioru: %lu"
 
-#: g10/mainproc.c:908
+#: g10/mainproc.c:916
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Nie mogê sprawdziæ podpisu: %s\n"
 
-#: g10/mainproc.c:981
+#: g10/mainproc.c:989
 msgid "old style (PGP 2.x) signature\n"
 msgstr "podpis starego typu (PGP 2.x)\n"
 
-#: g10/mainproc.c:986
+#: g10/mainproc.c:994
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "wykryto niepoprawny pakiet pierwotny w proc_tree()\n"
 
@@ -2280,29 +2292,29 @@ msgstr ""
 "Ostrze¿enie: Wykryto klucz s³aby algorytmu - nale¿y ponownie zmieniæ \n"
 "wyra¿enie przej¶ciowe (has³o).\n"
 
-#: g10/sig-check.c:155
+#: g10/sig-check.c:192
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "Klucz algorytmu ElGamala wygenerowany przez PGP - podpisy nim sk³adane\n"
 "nie zapewniaj± bezpieczeñstwa!\n"
 
-#: g10/sig-check.c:163
+#: g10/sig-check.c:200
 #, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "klucz publiczny jest o %lu sekund m³odszy od podpisu\n"
 
-#: g10/sig-check.c:164
+#: g10/sig-check.c:201
 #, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "klucz publiczny jest o %lu sekund m³odszy od podpisu\n"
 
-#: g10/sig-check.c:180
+#: g10/sig-check.c:217
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "UWAGA: klucz podpisuj±cy przekroczy³ datê wa¿no¶ci %s\n"
 
-#: g10/sig-check.c:237
+#: g10/sig-check.c:274
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 "przyjêto niewa¿no¶æ podpisu z powonu ustawienia nieznanego bitu krytycznego\n"
@@ -2312,7 +2324,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "%s podpis z³o¿ony przez: %s\n"
 
-#: g10/sign.c:210 g10/sign.c:596
+#: g10/sign.c:210 g10/sign.c:493
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "nie mogê stworzyæ %s: %s\n"
@@ -2326,11 +2338,16 @@ msgstr "podpis:"
 msgid "WARNING: `%s' is an empty file\n"
 msgstr "OSTRZE¯ENIE: plik '%s' jest pusty\n"
 
-#: g10/textfilter.c:199
+#: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
 msgstr "nie mogê obs³u¿yæ linii tekstu d³u¿szej ni¿ %d znaków\n"
 
+#: g10/textfilter.c:189
+#, fuzzy, c-format
+msgid "input line longer than %d characters\n"
+msgstr "b³±d opakowania: linia d³u¿sza ni¿ %d znaków\n"
+
 #: g10/tdbio.c:117 g10/tdbio.c:1448
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
@@ -2350,12 +2367,12 @@ msgstr "zbyt du
 msgid "%s: can't access: %s\n"
 msgstr "%s: dostêp niemo¿liwy: %s\n"
 
-#: g10/ringedit.c:294 g10/tdbio.c:444
+#: g10/ringedit.c:296 g10/tdbio.c:444
 #, c-format
 msgid "%s: can't create directory: %s\n"
 msgstr "%s: nie mogê utworzyæ katalogu: %s\n"
 
-#: g10/ringedit.c:300 g10/tdbio.c:447
+#: g10/ringedit.c:302 g10/tdbio.c:447
 #, c-format
 msgid "%s: directory created\n"
 msgstr "%s: katalog utworzony\n"
@@ -2365,7 +2382,7 @@ msgstr "%s: katalog utworzony\n"
 msgid "%s: directory does not exist!\n"
 msgstr "%s: katalog nie istnieje!\n"
 
-#: g10/openfile.c:109 g10/openfile.c:176 g10/ringedit.c:1310 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: nie mogê utworzyæ: %s\n"
@@ -2461,166 +2478,166 @@ msgstr "%s: zerowanie rekordu nie powiod
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s: dopisanie rekordu nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:144
+#: g10/trustdb.c:165
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "Baza zaufania jest uszkodzona; proszê uruchomiæ \"gpgm --fix-trust-db\".\n"
 
-#: g10/trustdb.c:157
+#: g10/trustdb.c:178
 #, c-format
 msgid "trust record %lu, req type %d: read failed: %s\n"
 msgstr "wpis zaufania %lu, typ zapytania %d: odczyt nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:172
+#: g10/trustdb.c:193
 #, c-format
 msgid "trust record %lu, type %d: write failed: %s\n"
 msgstr "wpis zaufania %lu, typ zapytania %d: zapis nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:186
+#: g10/trustdb.c:207
 #, c-format
 msgid "trust record %lu: delete failed: %s\n"
 msgstr "wpis zaufania %lu: usuniêcie nie powiod³o siê %s\n"
 
-#: g10/trustdb.c:200
+#: g10/trustdb.c:221
 #, c-format
 msgid "trustdb: sync failed: %s\n"
 msgstr "baza zaufania: synchronizacja nie powiod³a siê %s\n"
 
-#: g10/trustdb.c:329
+#: g10/trustdb.c:351
 #, c-format
 msgid "error reading dir record for LID %lu: %s\n"
 msgstr "b³±d odczytu wpisu katalogowego dla LID %lu: %s\n"
 
-#: g10/trustdb.c:336
+#: g10/trustdb.c:358
 #, c-format
 msgid "lid %lu: expected dir record, got type %d\n"
 msgstr "lid %lu: oczekiwany wpis katalogowy, napotkano typ %d\n"
 
-#: g10/trustdb.c:341
+#: g10/trustdb.c:363
 #, c-format
 msgid "no primary key for LID %lu\n"
 msgstr "brak klucza g³ównego dla LID %lu\n"
 
-#: g10/trustdb.c:346
+#: g10/trustdb.c:368
 #, c-format
 msgid "error reading primary key for LID %lu: %s\n"
 msgstr "b³±d odczytu g³ównego klucza dla LID %lu: %s\n"
 
-#: g10/trustdb.c:422
+#: g10/trustdb.c:445
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "powi±zany rekord podpisu %lu ma niew³a¶ciwego w³a¶ciciela\n"
 
-#: g10/trustdb.c:465
+#: g10/trustdb.c:488
 #, c-format
 msgid "'%s' is not a valid long keyID\n"
 msgstr "'%s\" nie jest w³a¶ciwym identyfikatorem klucza\n"
 
-#: g10/trustdb.c:500
+#: g10/trustdb.c:523
 #, c-format
 msgid "key %08lX: no public key for trusted key - skipped\n"
 msgstr ""
 "klucz %08lX: brak klucza publicznego dla klucza zaufanego - pominiêty\n"
 
-#: g10/trustdb.c:509 g10/trustdb.c:567
+#: g10/trustdb.c:532 g10/trustdb.c:590
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "klucz %08lX: wpisanie do bazy zaufania niemo¿liwe\n"
 
-#: g10/trustdb.c:514 g10/trustdb.c:573
+#: g10/trustdb.c:537 g10/trustdb.c:596
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "klucz %08lX: wyszukanie zapisu nie powiod³o siê\n"
 
-#: g10/trustdb.c:519 g10/trustdb.c:582
+#: g10/trustdb.c:542 g10/trustdb.c:605
 #, c-format
 msgid "key %08lX: already in trusted key table\n"
 msgstr "klucz %08lX: ju¿ znajduje siê w tablicy kluczy zaufanych\n"
 
-#: g10/trustdb.c:522 g10/trustdb.c:585
+#: g10/trustdb.c:545 g10/trustdb.c:608
 #, c-format
 msgid "key %08lX: accepted as trusted key.\n"
 msgstr "Klucz %08lX: zaakceptowany jako klucz zaufany.\n"
 
-#: g10/trustdb.c:538
+#: g10/trustdb.c:561
 #, c-format
 msgid "NOTE: secret key %08lX is NOT protected.\n"
 msgstr "UWAGA: klucz tajny %08lX NIE jest chroniony.\n"
 
-#: g10/trustdb.c:550
+#: g10/trustdb.c:573
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "klucz %08lX: klucz tajny bez klucza jawnego - pominiêty\n"
 
-#: g10/trustdb.c:557
+#: g10/trustdb.c:580
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr "klucz %08lX: klucz tajny nie pasuje do klucza jawnego\n"
 
-#: g10/trustdb.c:593
+#: g10/trustdb.c:616
 #, c-format
 msgid "enumerate secret keys failed: %s\n"
 msgstr "wyliczenie kluczy tajnych nie powiod³o siê %s\n"
 
-#: g10/trustdb.c:776
+#: g10/trustdb.c:770
 #, c-format
 msgid "lid %lu: read dir record failed: %s\n"
 msgstr "lid %lu: odczyt wpisu katalogowego nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:785
+#: g10/trustdb.c:779
 #, c-format
 msgid "lid %lu: read key record failed: %s\n"
 msgstr "lid %lu: odczyt wpisu klucza nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:795
+#: g10/trustdb.c:789
 #, c-format
 msgid "lid %lu: read uid record failed: %s\n"
 msgstr "lid %lu: odczyt wpisu z identyfikatorem nie powiód³ siê; %s\n"
 
-#: g10/trustdb.c:804
+#: g10/trustdb.c:798
 #, c-format
 msgid "lid %lu: read pref record failed: %s\n"
 msgstr "lid %lu: odczyt wpisu ustawieñ nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:814
+#: g10/trustdb.c:808
 #, c-format
 msgid "lid %lu: read sig record failed: %s\n"
 msgstr "lid %lu: odczyt wpisu o podpisach nie powiód³ siê: %s\n"
 
-#: g10/trustdb.c:1151
+#: g10/trustdb.c:1037
 msgid "Ooops, no keys\n"
 msgstr "Oops, brak kluczy\n"
 
-#: g10/trustdb.c:1155
+#: g10/trustdb.c:1041
 msgid "Ooops, no user ids\n"
 msgstr "Oops, brak identyfikatorów u¿ytkowników\n"
 
-#: g10/trustdb.c:1226 g10/trustdb.c:1244
+#: g10/trustdb.c:1134 g10/trustdb.c:1152
 #, c-format
 msgid "user '%s' read problem: %s\n"
 msgstr "u¿ytkownik '%s' b³±d przy odczycie: %s\n"
 
-#: g10/trustdb.c:1229 g10/trustdb.c:1247
+#: g10/trustdb.c:1137 g10/trustdb.c:1155
 #, c-format
 msgid "user '%s' list problem: %s\n"
 msgstr "u¿ytkownik '%s' b³±d listy: %s\n"
 
-#: g10/trustdb.c:1237 g10/trustdb.c:1485
+#: g10/trustdb.c:1145 g10/trustdb.c:1447
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "u¿ytkownik '%s' nie odnaleziony: %s\n"
 
-#: g10/trustdb.c:1239 g10/trustdb.c:1487
+#: g10/trustdb.c:1147 g10/trustdb.c:1449
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "problem podczas szukania '%s' w bazie zaufania: %s\n"
 
-#: g10/trustdb.c:1242
+#: g10/trustdb.c:1150
 #, c-format
 msgid "user '%s' not in trustdb\n"
 msgstr "brak u¿ytkownika '%s' w bazie zaufania\n"
 
-#: g10/trustdb.c:1277
+#: g10/trustdb.c:1186
 #, c-format
 msgid ""
 "# List of assigned trustvalues, created %s\n"
@@ -2629,205 +2646,205 @@ msgstr ""
 "# Lista przypisanych warto¶ci zaufania, stworzona %s\n"
 "# (u¿yj \"gpgm --import-ownertrust\" aby j± przywróciæ)\n"
 
-#: g10/trustdb.c:1283
+#: g10/trustdb.c:1192
 msgid "directory record w/o primary key\n"
 msgstr "wpis katalogowy bez klucza g³ównego\n"
 
-#: g10/trustdb.c:1290
+#: g10/trustdb.c:1199
 #, c-format
 msgid "error reading key record: %s\n"
 msgstr "b³±d odczytu rekordu podpisu: %s\n"
 
-#: g10/trustdb.c:1330
+#: g10/trustdb.c:1240
 msgid "line too long\n"
 msgstr "linia za d³uga\n"
 
-#: g10/trustdb.c:1338
+#: g10/trustdb.c:1248
 msgid "error: missing colon\n"
 msgstr "b³±d: brak dwukropka\n"
 
-#: g10/trustdb.c:1343
+#: g10/trustdb.c:1253
 msgid "error: invalid fingerprint\n"
 msgstr "b³±d: niew³a¶ciwy odcisk klucza\n"
 
-#: g10/trustdb.c:1347
+#: g10/trustdb.c:1257
 msgid "error: no ownertrust value\n"
 msgstr "b³±d: brak warto¶æi zaufania w³a¶ciciela\n"
 
-#: g10/trustdb.c:1372
+#: g10/trustdb.c:1282
 msgid "key not in trustdb, searching ring.\n"
 msgstr "brak klucza w bazie zaufania, przeszukiwany jest zbiór kluczy\n"
 
-#: g10/trustdb.c:1375
+#: g10/trustdb.c:1285
 #, c-format
 msgid "key not in ring: %s\n"
 msgstr "klucza nie ma w zbiorze: %s\n"
 
-#: g10/trustdb.c:1379
+#: g10/trustdb.c:1289
 msgid "Oops: key is now in trustdb???\n"
 msgstr "Oops: klucz ju¿ jest w bazie zaufania???\n"
 
 #. update the ownertrust
-#: g10/trustdb.c:1384
+#: g10/trustdb.c:1294
 #, c-format
 msgid "insert trust record failed: %s\n"
 msgstr "wstawienie wpisu zaufania nie powiod³o siê: %s\n"
 
 #. error
-#: g10/trustdb.c:1390
+#: g10/trustdb.c:1300
 #, c-format
 msgid "error finding dir record: %s\n"
 msgstr "b³±d podczas poszukiwania wpisu katalogowego: %s\n"
 
-#: g10/trustdb.c:1490
+#: g10/trustdb.c:1452
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "brak u¿ytkownika '%s' w bazie zaufania - dodano\n"
 
-#: g10/trustdb.c:1493
+#: g10/trustdb.c:1455
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "umieszczenie '%s' w Bazie Zaufania nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1565
+#: g10/trustdb.c:1494
 #, c-format
 msgid "%s: keyblock read problem: %s\n"
 msgstr "%s: problem przy odczycie bloku klucza: %s\n"
 
-#: g10/trustdb.c:1579
+#: g10/trustdb.c:1508
 #, c-format
 msgid "%s: update failed: %s\n"
 msgstr "%s: zapis zmian nie powiod³ siê: %s\n"
 
-#: g10/trustdb.c:1582
+#: g10/trustdb.c:1511
 #, c-format
 msgid "%s: updated\n"
 msgstr "%s: uaktualniony\n"
 
-#: g10/trustdb.c:1584
+#: g10/trustdb.c:1513
 #, c-format
 msgid "%s: okay\n"
 msgstr "%s: OK\n"
 
-#: g10/trustdb.c:1599
+#: g10/trustdb.c:1528
 #, c-format
 msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr "lid %lu: wpis katalogowy bez bloku klucza - pominiêty\n"
 
-#: g10/trustdb.c:1612
+#: g10/trustdb.c:1541
 #, c-format
 msgid "lid %lu: keyblock not found: %s\n"
 msgstr "lid %lu: blok klucza nie zosta³ odnaleziony: %s\n"
 
-#: g10/trustdb.c:1621 g10/trustdb.c:1690
+#: g10/trustdb.c:1550 g10/trustdb.c:1623
 #, c-format
 msgid "lid %lu: update failed: %s\n"
 msgstr "lid %lu: naniesienie poprawek nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1627 g10/trustdb.c:1696
+#: g10/trustdb.c:1556 g10/trustdb.c:1629
 #, c-format
 msgid "lid %lu: updated\n"
 msgstr "lid %lu: uaktualniony\n"
 
-#: g10/trustdb.c:1631 g10/trustdb.c:1700
+#: g10/trustdb.c:1560 g10/trustdb.c:1633
 #, c-format
 msgid "lid %lu: okay\n"
 msgstr "lid %lu: OK\n"
 
-#: g10/trustdb.c:1638 g10/trustdb.c:1706
+#: g10/trustdb.c:1567 g10/trustdb.c:1639
 #, c-format
 msgid "%lu keys processed\n"
 msgstr "%lu kluczy przetworzonych\n"
 
-#: g10/trustdb.c:1640
+#: g10/trustdb.c:1569
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr "\t%lu kluczy pominiêtych\n"
 
-#: g10/trustdb.c:1642 g10/trustdb.c:1708
+#: g10/trustdb.c:1571 g10/trustdb.c:1641
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr "\t%lu kluczy z b³êdami\n"
 
-#: g10/trustdb.c:1644 g10/trustdb.c:1710
+#: g10/trustdb.c:1573 g10/trustdb.c:1643
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr "\t%lu kluczy uaktualnionych\n"
 
-#: g10/trustdb.c:1674
+#: g10/trustdb.c:1607
 #, c-format
 msgid "lid ?: insert failed: %s\n"
 msgstr "lid ?: wpisanie nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1679
+#: g10/trustdb.c:1612
 #, c-format
 msgid "lid %lu: insert failed: %s\n"
 msgstr "lid %lu: wpisanie nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1685
+#: g10/trustdb.c:1618
 #, c-format
 msgid "lid %lu: inserted\n"
 msgstr "lid %lu: wpisany\n"
 
-#: g10/trustdb.c:1712
+#: g10/trustdb.c:1645
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr "        %lu kluczy wpisanych\n"
 
-#: g10/trustdb.c:1715
+#: g10/trustdb.c:1648
 #, c-format
 msgid "enumerate keyblocks failed: %s\n"
 msgstr "wyliczenie bloków kluczy nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1760
+#: g10/trustdb.c:1694
 #, c-format
 msgid "check_trust: search dir record failed: %s\n"
 msgstr "check_trust: poszukiwanie wpisu katalogowego nie powiod³o siê: %s\n"
 
-#: g10/trustdb.c:1767
+#: g10/trustdb.c:1701
 #, c-format
 msgid "key