[Winpt-commits] r214 - in trunk: . Gnupg Include Po Src

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Sun May 14 20:40:45 CEST 2006


Author: twoaday
Date: 2006-05-14 20:40:36 +0200 (Sun, 14 May 2006)
New Revision: 214

Removed:
   trunk/keyserver.conf
Modified:
   trunk/FAQ
   trunk/Gnupg/ChangeLog
   trunk/Gnupg/parse-packet.c
   trunk/Include/wptGPG.h
   trunk/Include/wptKeyCache.h
   trunk/Include/wptKeyserver.h
   trunk/Include/wptUtil.h
   trunk/Makefile.am
   trunk/NEWS
   trunk/Po/de.po
   trunk/Po/fr.po
   trunk/Po/jp.po
   trunk/Src/ChangeLog
   trunk/Src/WinPT-en.rc
   trunk/Src/wptClipDecryptDlg.cpp
   trunk/Src/wptFileManager.cpp
   trunk/Src/wptFileManagerDlg.cpp
   trunk/Src/wptGPG.cpp
   trunk/Src/wptGPGME.cpp
   trunk/Src/wptGPGUtil.cpp
   trunk/Src/wptHTTP.cpp
   trunk/Src/wptKeyCache.cpp
   trunk/Src/wptKeyManager.cpp
   trunk/Src/wptKeyManagerDlg.cpp
   trunk/Src/wptKeylist.cpp
   trunk/Src/wptKeyserver.cpp
   trunk/Src/wptKeyserverSearchDlg.cpp
   trunk/Src/wptMainProc.cpp
   trunk/Src/wptPassphraseCB.cpp
   trunk/Src/wptUtil.cpp
   trunk/THANKS
   trunk/TODO
   trunk/configure.ac
Log:
2006-05-14  Timo Schulz  <ts at g10code.de>
                                                                                
        * wptKeyCache.cpp (gpg_keycache_update_attr): Parse
        preferred keyserver URL.
        * wptHTTP.cpp (extractHostInfo): Fix segv.
        * wptGPGUtil.cpp (gpg_find_key_subpacket): Ignore default
        gpg.conf.
        * wptKeyserverSearchDlg.cpp (search_hkp_keys): Do not
        assume an existing user id.
        * wptPassphraseCB.cpp (passphrase_cb): Automatic cancel
        if no passphrase is available.

(for complete list of changes, see Src/ChangeLog)

About to release 0.12.1



Modified: trunk/FAQ
===================================================================
--- trunk/FAQ	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/FAQ	2006-05-14 18:40:36 UTC (rev 214)
@@ -51,21 +51,21 @@
 2.1
 Q:  Where can I download WinPT?
       
-A:  WinPT can be downloaded from the WinPT.org website in the Download section.
+A:  WinPT can be downloaded from the WinPT.org website or
+    via http://wald.intevation.org (section: Files)
              
 2.2
 Q:  Where can I get more information?
         
 A:  There is always more info to be had at the WinPT.org website. You can
     also get more information from the winpt-users mailing list. To subsribe
-    to this list send an email to majordomo at lcsweb.net with the words 
-    "subscribe winpt-users" in the body of the message (no  quotes).
+    to this list visit wald.intevation.org (section: Lists).
           
 2.3
 Q:  Does WinPT require anything else to work?
           
 A:  WinPT requires that you have installed the Gnu Privacy Guard (GnuPG)
-    encryption engine version 1.05 or greater, for Win32. (r)
+    encryption engine version 1.4.2 or greater, for Win32. (r)
           
 3. Usage
 

Modified: trunk/Gnupg/ChangeLog
===================================================================
--- trunk/Gnupg/ChangeLog	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Gnupg/ChangeLog	2006-05-14 18:40:36 UTC (rev 214)
@@ -1,3 +1,7 @@
+2006-05-11  Timo Schulz  <ts at g10code.com>
+
+	* parse-packet.c (parse): Do not exist in case of errors.
+	
 2006-01-07  Timo Schulz  <ts at g10code.com>
 
 	* parse-packet.c (cp_subpacketarea): Remove unused function.

Modified: trunk/Gnupg/parse-packet.c
===================================================================
--- trunk/Gnupg/parse-packet.c	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Gnupg/parse-packet.c	2006-05-14 18:40:36 UTC (rev 214)
@@ -743,8 +743,9 @@
         /* with a some probability this is caused by a problem in the
          * the uncompressing layer - in some error cases it just loops
          * and spits out 0xff bytes. */
-        printf ("%s: garbled packet detected\n", gpg_iobuf_where(inp) );
-	exit (2);
+        /*printf ("%s: garbled packet detected\n", gpg_iobuf_where(inp));*/
+	rc = G10ERR_INVALID_PACKET;
+	goto leave;
     }
     
     if( out && pkttype	) {

Modified: trunk/Include/wptGPG.h
===================================================================
--- trunk/Include/wptGPG.h	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Include/wptGPG.h	2006-05-14 18:40:36 UTC (rev 214)
@@ -171,6 +171,7 @@
 int gpg_encrypt_symmetric (void);
 const char *get_gpg_sigstat (gpgme_sigsum_t sum);
 int check_ultimate_trusted_key (void);
+bool secret_key_available (void);
 
 /*-- wptGPGParser.cpp --*/
 /* find */
@@ -204,6 +205,7 @@
 void set_gpg_passphrase_cb (passphrase_cb_s *cb, gpgme_ctx_t ctx,
 			    int cmd, HWND hwnd, const char *title);
 void release_gpg_passphrase_cb (passphrase_cb_s *cb);
+void release_gpg_recipients (gpgme_recipient_t *recipients);
 
 char * request_passphrase (const char *title, int flags, int *ret_cancel);
 char * request_passphrase2 (const char *title, int flags, int *ret_cancel);

Modified: trunk/Include/wptKeyCache.h
===================================================================
--- trunk/Include/wptKeyCache.h	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Include/wptKeyCache.h	2006-05-14 18:40:36 UTC (rev 214)
@@ -74,6 +74,7 @@
     } attrib;
     unsigned char *sym_prefs;/* symmetric cipher preferences. */
     char *pref_keyserver;   /* if != NULL preferred keyserver. */
+    unsigned short pref_keyserver_port;
     char *card_type;	    /* if != NULL key stored on smart card. */
     struct native_uid_s *uids;
     gpg_desig_rev_t rev;	/* if != NULL list of desig revokers. */

Modified: trunk/Include/wptKeyserver.h
===================================================================
--- trunk/Include/wptKeyserver.h	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Include/wptKeyserver.h	2006-05-14 18:40:36 UTC (rev 214)
@@ -80,14 +80,25 @@
 extern WORD default_keyserver_port;
 extern keyserver_proxy_s proxy;
 
-struct keyserver_key {
-    int	    bits;	    /* length of the key. */
-    char    keyid[8+1];	    /* keyid of the key. */
-    char    date[10+1];	    /* date of creation. */
-    char    uid[384];	    /* primary user-id. */
+
+struct keyserver_uid_s {
+    struct keyserver_uid_s *next;
+    long creation;
+    long expires;
+    char *uid;
 };
 
+struct keyserver_key_s {
+    int	   algo;		    /* pubkey algorithm. */
+    int	   bits;		    /* length of the key. */
+    char   *keyid;		    /* keyid of the key. */
+    long   creation;		    /* creation date. */
+    long   expires;
+    struct keyserver_uid_s *uids;   /* list ofuser-ids. */
+    const struct keyserver_uid_s *main_uid;
+};
 
+
 /*-- wptSOCKS.cpp --*/
 int socks_handshake (keyserver_proxy_t ctx, int conn_fd,
 		     const char *hostname, WORD port);
@@ -116,9 +127,10 @@
 int kserver_recvkey (const char *hostname, WORD port, 
 		     const char *keyid, char **r_key, int *r_keylen);
 int kserver_search_begin (const char *hostname, WORD port, 
-			  const char *pattern, int *conn_fd);
-int kserver_search_next (int conn_fd, keyserver_key *key);
+			  const char *pattern, int *conn_fd, int *nkeys);
+int kserver_search_next (int conn_fd, keyserver_key_s **r_key);
 void kserver_search_end (int conn_fd);
+void kserver_release_key (keyserver_key_s *key);
 
 /*-- Finger/LDAP Protocol --*/
 int  ldap_recvkey (const char *hostname, const char *keyid, 

Modified: trunk/Include/wptUtil.h
===================================================================
--- trunk/Include/wptUtil.h	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Include/wptUtil.h	2006-05-14 18:40:36 UTC (rev 214)
@@ -5,6 +5,6 @@
 char* strsep (char **stringp, const char *delim);
 const char *stristr (const char *buf, const char *sub);
 int check_email_address (const char *email);
+char* substr (const char *str, unsigned int begin, unsigned int end);
 
-
 #endif

Modified: trunk/Makefile.am
===================================================================
--- trunk/Makefile.am	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Makefile.am	2006-05-14 18:40:36 UTC (rev 214)
@@ -18,7 +18,7 @@
 	                    --with-gpgme-prefix=@W32ROOT@ 
 
 
-EXTRA_DIST = autogen.sh README.SVN keyserver.conf
+EXTRA_DIST = autogen.sh README.SVN
 
 SUBDIRS = Po Gnupg PTD Src Include icons m4
 

Modified: trunk/NEWS
===================================================================
--- trunk/NEWS	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/NEWS	2006-05-14 18:40:36 UTC (rev 214)
@@ -813,3 +813,12 @@
 * Minor bug fixes and usability issues for the Key Manager.
 
 [Updated languages: de, jp]
+
+(0.12.1)
+* Fix problem with power-point files and the File Manager
+* Be more liberal on default key entries.
+* Show all recipients in the File Manager decryption dialog.
+* Improved keyserver searching code.
+* Fix problems when no secret key is available (File+Key Manager).
+* A lot of cleanups all over the place
+* Fix a re-introduced problem in the HTTP code.

Modified: trunk/Po/de.po
===================================================================
--- trunk/Po/de.po	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Po/de.po	2006-05-14 18:40:36 UTC (rev 214)
@@ -12,9 +12,9 @@
 # BUG: GetOpenFileName needs \0\0. gettext does not support it.
 msgid ""
 msgstr ""
-"Project-Id-Version: WinPT 0.11.13\n"
+"Project-Id-Version: WinPT 0.12.1\n"
 "Report-Msgid-Bugs-To: winpt at freakmail.de\n"
-"POT-Creation-Date: 2006-05-09 18:57+0200\n"
+"POT-Creation-Date: 2006-05-14 11:31+0200\n"
 "PO-Revision-Date: 2005-12-28 16:10+0100\n"
 "Last-Translator: Timo Schulz <ts at g10code.de>\n"
 "Language-Team: DE <twoaday at freakmail.de>\n"
@@ -30,9 +30,9 @@
 #: Src/WinPT.cpp:471 Src/WinPT.cpp:478 Src/WinPT.cpp:519 Src/WinPT.cpp:547
 #: Src/WinPT.cpp:556 Src/WinPT.cpp:560 Src/WinPT.cpp:577 Src/WinPT.cpp:645
 #: Src/WinPT.cpp:658 Src/WinPT.cpp:705 Src/WinPT.cpp:735 Src/WinPT.cpp:753
-#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:903
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:925 Src/wptGPG.cpp:936
-#: Src/wptMainProc.cpp:361 Src/wptMainProc.cpp:537
+#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:943 Src/wptGPG.cpp:954
+#: Src/wptMainProc.cpp:351 Src/wptMainProc.cpp:527
 msgid "WinPT Error"
 msgstr "WinPT Fehler"
 
@@ -58,7 +58,7 @@
 msgstr "Konnte WinPT-Verzeichnis nicht erstellen"
 
 #: Src/WinPT.cpp:305 Src/WinPT.cpp:322 Src/WinPT.cpp:333
-#: Src/wptKeyManagerDlg.cpp:961 Src/wptKeyserver.cpp:573
+#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyserver.cpp:585
 #: Src/wptKeyserverDlg.cpp:68 Src/wptKeyserverDlg.cpp:70
 #: Src/wptKeyserverDlg.cpp:187 Src/wptKeyserverDlg.cpp:195
 #: Src/wptKeyserverDlg.cpp:211 Src/wptKeyserverDlg.cpp:352
@@ -73,7 +73,7 @@
 
 #: Src/WinPT.cpp:321
 msgid "Failed to copy the keyserver.conf"
-msgstr "Das Kopieren der keyserver.conf ist fehlgeschlagen"
+msgstr "Kopieren der keyserver.conf ist fehlgeschlagen"
 
 # c:\oss\winpt-gpgme\src\WinPT.cpp:245
 #: Src/WinPT.cpp:470
@@ -110,8 +110,8 @@
 "Could not find the GPG binary (gpg.exe).\n"
 "Do you want to start the GPG preferences to correct  this problem?"
 msgstr ""
-"Kann die GPG.EXE nicht lokalisieren. Möchten Sie die GPG-Einstellungen "
-"öffnen um das Problem zu beheben?"
+"Die Datei gpg.exe konnte nicht gefnden werden.\n"
+"Möchten Sie die GPG-Einstellungen öffnen um das Problem zu beheben?"
 
 # c:\oss\winpt-gpgme\src\WinPT.cpp:339
 #: Src/WinPT.cpp:569
@@ -129,8 +129,8 @@
 # c:\oss\winpt-gpgme\src\WinPT.cpp:376
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:426
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:711
-#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:493
-#: Src/wptFileManagerDlg.cpp:818
+#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:512
+#: Src/wptFileManagerDlg.cpp:819
 msgid "Wipe Free Space"
 msgstr "Freien Speicher Löschen"
 
@@ -185,8 +185,8 @@
 msgstr ""
 "Die Datei AUTHORS enthält eine Liste aller Co-Autoren und aller Beitragenden"
 
-#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1752
-#: Src/wptMainProc.cpp:586
+#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1751
+#: Src/wptMainProc.cpp:576
 msgid "About WinPT"
 msgstr "Über WinPT"
 
@@ -236,11 +236,11 @@
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:700
 #: Src/wptAboutDlgs.cpp:115 Src/wptKeyEditDlgs.cpp:2143
-#: Src/wptKeyManagerDlg.cpp:967
+#: Src/wptKeyManagerDlg.cpp:964
 msgid "&Help"
 msgstr "&Hilfe"
 
-#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:414
+#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:404
 msgid "Card Manager"
 msgstr "Kartenmanager"
 
@@ -264,7 +264,7 @@
 #: Src/wptCardDlg.cpp:696 Src/wptCardDlg.cpp:699 Src/wptCardDlg.cpp:724
 #: Src/wptCardDlg.cpp:726 Src/wptCardDlg.cpp:731 Src/wptCardDlg.cpp:736
 #: Src/wptCardDlg.cpp:800 Src/wptCardDlg.cpp:815 Src/wptCardDlg.cpp:818
-#: Src/wptMainProc.cpp:301
+#: Src/wptMainProc.cpp:291
 msgid "Card Edit"
 msgstr "Karten-Editor"
 
@@ -274,7 +274,7 @@
 
 #: Src/wptCardDlg.cpp:344
 msgid "Only alphabetic characters are allowed."
-msgstr "Nur alphanumerische Zeichen zulässig."
+msgstr "Nur alphanumerische sind Zeichen zulässig."
 
 #: Src/wptCardDlg.cpp:351
 msgid "Invalid URL."
@@ -353,7 +353,7 @@
 msgid "Make off-card backup of encryption key"
 msgstr "Externes Backup des Verschlüsselungs-Schlüssel"
 
-#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1648
+#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1647
 msgid "Card Key Generation"
 msgstr "Karten-Schlüsselerzeugung"
 
@@ -445,21 +445,32 @@
 "Bitte die OpenPGP-SmartCard einlegen\n"
 "OK zum Fortfahren oder Abbrechen"
 
-#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:187
+#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:190
 #: Src/wptFileManager.cpp:1228 Src/wptKeyRevokersDlg.cpp:128
 #: Src/wptKeyRevokersDlg.cpp:175 Src/wptVerifyList.cpp:176
 #: Src/wptVerifyList.cpp:232
 msgid "user ID not found"
 msgstr "Benutzerkennung nicht gefunden"
 
-#: Src/wptClipDecryptDlg.cpp:116 Src/wptClipDecryptDlg.cpp:129
-#: Src/wptClipDecryptDlg.cpp:137 Src/wptClipDecryptDlg.cpp:144
-#: Src/wptClipDecryptDlg.cpp:146 Src/wptFileManager.cpp:1302
-#: Src/wptFileManager.cpp:1349
+#: Src/wptClipDecryptDlg.cpp:112 Src/wptClipVerifyDlg.cpp:176
+#: Src/wptClipVerifyDlg.cpp:189 Src/wptClipVerifyDlg.cpp:202
+#: Src/wptClipVerifyDlg.cpp:209 Src/wptClipVerifyDlg.cpp:241
+#: Src/wptClipVerifyDlg.cpp:252 Src/wptFileManager.cpp:1596
+#: Src/wptFileManager.cpp:1649 Src/wptFileManagerDlg.cpp:576
+#: Src/wptFileVerifyDlg.cpp:81 Src/wptFileVerifyDlg.cpp:149
+#: Src/wptMainProc.cpp:182 Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260
+#: Src/wptMainProc.cpp:268 Src/wptMainProc.cpp:415
+msgid "Verify"
+msgstr "Überprüfen"
+
+#: Src/wptClipDecryptDlg.cpp:119 Src/wptClipDecryptDlg.cpp:132
+#: Src/wptClipDecryptDlg.cpp:140 Src/wptClipDecryptDlg.cpp:147
+#: Src/wptClipDecryptDlg.cpp:149 Src/wptFileManager.cpp:1303
+#: Src/wptFileManager.cpp:1354
 msgid "Decryption"
 msgstr "Entschlüsselung"
 
-#: Src/wptClipDecryptDlg.cpp:130 Src/wptFileManager.cpp:1350
+#: Src/wptClipDecryptDlg.cpp:133 Src/wptFileManager.cpp:1355
 #, c-format
 msgid ""
 "Encrypted with %s key, ID %s.%s\n"
@@ -468,18 +479,18 @@
 "Verschlüsselt mit %s Schlüssel, ID %s.%s\n"
 "Entschlüsselung fehlgeschlagen: geheimer Schlüssel nicht verfügbar."
 
-#: Src/wptClipDecryptDlg.cpp:137
+#: Src/wptClipDecryptDlg.cpp:140
 #, c-format
 msgid "Unsupported algorithm: %s"
 msgstr "Unbekannter Algorithmus: %s"
 
 # c:\oss\winpt-gpgme\src\wptClipDecryptDlg.cpp:137
-#: Src/wptClipDecryptDlg.cpp:143
+#: Src/wptClipDecryptDlg.cpp:146
 msgid "Broken OpenPGP message (maybe: quoted printable character in armor)."
 msgstr ""
 "Ungültige OpenPGP Nachricht  (vielleicht: \"quoted printable\" im Armorteil)."
 
-#: Src/wptClipDecryptDlg.cpp:151
+#: Src/wptClipDecryptDlg.cpp:154
 msgid ""
 "WARNING: encrypted message has been manipulated!\n"
 "\n"
@@ -492,40 +503,40 @@
 "Es ist möglich, dass die Daten beschädigt worden aber es ist ebenfalls "
 "möglich das dies ein Teil eines Attacke ist."
 
-#: Src/wptClipDecryptDlg.cpp:156
+#: Src/wptClipDecryptDlg.cpp:159
 msgid "*** IMPORTANT ***"
 msgstr "*** WICHTIG ***"
 
-#: Src/wptClipDecryptDlg.cpp:159 Src/wptClipEncryptDlg.cpp:213
+#: Src/wptClipDecryptDlg.cpp:162 Src/wptClipEncryptDlg.cpp:213
 #: Src/wptClipSignDlg.cpp:121 Src/wptClipSignDlg.cpp:265
 #: Src/wptClipSignEncDlg.cpp:197 Src/wptKeyManager.cpp:286
-#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:951 Src/wptSymEnc.cpp:91
+#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:955 Src/wptSymEnc.cpp:91
 msgid "GnuPG Status: Finished"
 msgstr "GnuPG-Status: Abgeschlossen"
 
-#: Src/wptClipDecryptDlg.cpp:174
+#: Src/wptClipDecryptDlg.cpp:177
 msgid "Signature Status: Created with a fully trusted key"
 msgstr "Signatur Status: Erstellt mit einem vertraunswürdigen Schlüssel"
 
-#: Src/wptClipDecryptDlg.cpp:176
+#: Src/wptClipDecryptDlg.cpp:179
 msgid "Signature Status: Created with a marginal trusted key"
 msgstr ""
 "Signatur Status: Erstellt mit einem teilweise vertrauenswürdigen Schlüssel"
 
-#: Src/wptClipDecryptDlg.cpp:179
+#: Src/wptClipDecryptDlg.cpp:182
 msgid "Signature Status: Created with an UNTRUSTED key"
 msgstr "Signatur Status: Erstellt mit einem NICHT vertrauenswürdigen Schlüssel"
 
-#: Src/wptClipDecryptDlg.cpp:182
+#: Src/wptClipDecryptDlg.cpp:185
 msgid "Signature Status: Created with an undefined trusted key"
 msgstr ""
 "Signatur Status: Erstellt mit einem Schlüssel ohne definiertes Vertrauen"
 
-#: Src/wptClipDecryptDlg.cpp:189
+#: Src/wptClipDecryptDlg.cpp:192
 msgid "WinPT Verify"
 msgstr "WinPT Verifikation"
 
-#: Src/wptClipDecryptDlg.cpp:190
+#: Src/wptClipDecryptDlg.cpp:193
 #, c-format
 msgid ""
 "%s\n"
@@ -543,7 +554,7 @@
 #: Src/wptClipEditDlg.cpp:167 Src/wptClipEditDlg.cpp:242
 #: Src/wptClipEditDlg.cpp:247 Src/wptFileManagerDlg.cpp:211
 #: Src/wptMainProc.cpp:162 Src/wptMainProc.cpp:230 Src/wptMainProc.cpp:273
-#: Src/wptMainProc.cpp:437 Src/wptMainProc.cpp:518 Src/wptMainProc.cpp:523
+#: Src/wptMainProc.cpp:427 Src/wptMainProc.cpp:508 Src/wptMainProc.cpp:513
 msgid "Clipboard"
 msgstr "Zwischenablage"
 
@@ -573,7 +584,7 @@
 "Vorhandene Datei überschreiben?"
 
 #: Src/wptClipEditDlg.cpp:194 Src/wptMainProc.cpp:172 Src/wptMainProc.cpp:238
-#: Src/wptMainProc.cpp:580
+#: Src/wptMainProc.cpp:570
 msgid "Clipboard Editor"
 msgstr "Zwischenablagen-Editor"
 
@@ -630,7 +641,7 @@
 #: Src/wptKeyEditDlgs.cpp:516 Src/wptKeyEditDlgs.cpp:651
 #: Src/wptKeyEditOwnertrustDlg.cpp:67 Src/wptKeygenDlg.cpp:380
 #: Src/wptKeygenDlg.cpp:538 Src/wptKeyRevokeDlg.cpp:81
-#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:61
+#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:62
 #: Src/wptKeysignDlg.cpp:285 Src/wptPassphraseCB.cpp:93
 #: Src/wptPassphraseDlg.cpp:69 Src/wptPINDlg.cpp:55
 #: Src/wptPreferencesDlg.cpp:132 Src/wptTextInputDlg.cpp:84
@@ -662,7 +673,7 @@
 #: Src/wptClipSignDlg.cpp:230 Src/wptClipSignDlg.cpp:249
 #: Src/wptClipSignDlg.cpp:260 Src/wptClipSignEncDlg.cpp:166
 #: Src/wptClipSignEncDlg.cpp:176 Src/wptFileManager.cpp:1080
-#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1406
+#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1418
 #: Src/wptMainProc.cpp:156 Src/wptMainProc.cpp:218
 msgid "Signing"
 msgstr "Signieren"
@@ -695,7 +706,7 @@
 msgid "Signing key:"
 msgstr "Signierer Schlüssel:"
 
-#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1203
+#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1202
 msgid "No key was selected."
 msgstr "Kein Schlüssel ausgewählt."
 
@@ -708,17 +719,6 @@
 msgid "PKA: Verified signer's address is '%s'"
 msgstr "PKA: Überprüfte Adresse des Unterzeichners ist '%s'"
 
-#: Src/wptClipVerifyDlg.cpp:176 Src/wptClipVerifyDlg.cpp:189
-#: Src/wptClipVerifyDlg.cpp:202 Src/wptClipVerifyDlg.cpp:209
-#: Src/wptClipVerifyDlg.cpp:241 Src/wptClipVerifyDlg.cpp:252
-#: Src/wptFileManager.cpp:1584 Src/wptFileManager.cpp:1637
-#: Src/wptFileManagerDlg.cpp:557 Src/wptFileVerifyDlg.cpp:81
-#: Src/wptFileVerifyDlg.cpp:149 Src/wptMainProc.cpp:182
-#: Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260 Src/wptMainProc.cpp:268
-#: Src/wptMainProc.cpp:425
-msgid "Verify"
-msgstr "Überprüfen"
-
 #: Src/wptClipVerifyDlg.cpp:203
 #, c-format
 msgid ""
@@ -792,7 +792,7 @@
 #: Src/wptKeyEditDlgs.cpp:2079 Src/wptKeyEditDlgs.cpp:2120
 #: Src/wptKeyEditDlgs.cpp:2133 Src/wptKeyEditDlgs.cpp:2147
 #: Src/wptKeyEditDlgs.cpp:2176 Src/wptKeyEditDlgs.cpp:2181
-#: Src/wptKeyManagerDlg.cpp:995 Src/wptKeyManagerDlg.cpp:1776
+#: Src/wptKeyManagerDlg.cpp:992 Src/wptKeyManagerDlg.cpp:1775
 msgid "Key Edit"
 msgstr "Schlüssel bearbeiten"
 
@@ -1005,11 +1005,11 @@
 #: Src/wptFileManager.cpp:134 Src/wptFileManager.cpp:173
 #: Src/wptFileManager.cpp:298 Src/wptFileManager.cpp:662
 #: Src/wptFileManager.cpp:807 Src/wptFileManager.cpp:922
-#: Src/wptFileManager.cpp:1491 Src/wptFileManager.cpp:1518
-#: Src/wptFileManager.cpp:1537 Src/wptFileManager.cpp:1788
-#: Src/wptFileManager.cpp:1850 Src/wptFileManagerDlg.cpp:503
-#: Src/wptFileManagerDlg.cpp:622 Src/wptFileStatDlg.cpp:152
-#: Src/wptMainProc.cpp:412 Src/wptMDSumDlg.cpp:181
+#: Src/wptFileManager.cpp:1503 Src/wptFileManager.cpp:1530
+#: Src/wptFileManager.cpp:1549 Src/wptFileManager.cpp:1800
+#: Src/wptFileManager.cpp:1862 Src/wptFileManagerDlg.cpp:522
+#: Src/wptFileManagerDlg.cpp:623 Src/wptFileStatDlg.cpp:152
+#: Src/wptMainProc.cpp:402 Src/wptMDSumDlg.cpp:181
 msgid "File Manager"
 msgstr "Dateimanager"
 
@@ -1086,19 +1086,19 @@
 msgid "Could not get default secret key."
 msgstr "Konnte den geheimen Standardschlüssel nicht finden."
 
-#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1442
-#: Src/wptFileManagerDlg.cpp:555 Src/wptMainProc.cpp:200
-#: Src/wptMainProc.cpp:422 Src/wptMainProc.cpp:429
+#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1454
+#: Src/wptFileManagerDlg.cpp:574 Src/wptMainProc.cpp:200
+#: Src/wptMainProc.cpp:412 Src/wptMainProc.cpp:419
 msgid "Sign"
 msgstr "Signieren"
 
-#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:553
-#: Src/wptMainProc.cpp:421 Src/wptMainProc.cpp:426
+#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:572
+#: Src/wptMainProc.cpp:411 Src/wptMainProc.cpp:416
 msgid "Encrypt"
 msgstr "Verschlüsseln"
 
 #: Src/wptFileManager.cpp:1150 Src/wptFileManager.cpp:1183
-#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:420
+#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:410
 msgid "Symmetric"
 msgstr "Symmetrisch"
 
@@ -1129,20 +1129,20 @@
 msgid "Decrypt Verify"
 msgstr "Entschlüsseln/Überprüfen"
 
-#: Src/wptFileManager.cpp:1311
+#: Src/wptFileManager.cpp:1312
 msgid "Choose Filename for Output"
 msgstr "Wählen Sie einen Namen für die Ausgabedatei"
 
-#: Src/wptFileManager.cpp:1320
+#: Src/wptFileManager.cpp:1321
 msgid "Please enter filename for plaintext file"
 msgstr "Wählen Sie einen Namen für die Klartext-Datei"
 
-#: Src/wptFileManager.cpp:1358 Src/wptFileManager.cpp:1370
-#: Src/wptFileManagerDlg.cpp:554
+#: Src/wptFileManager.cpp:1363 Src/wptFileManager.cpp:1382
+#: Src/wptFileManagerDlg.cpp:573
 msgid "Decrypt"
 msgstr "Entschlüsseln"
 
-#: Src/wptFileManager.cpp:1364
+#: Src/wptFileManager.cpp:1369
 #, c-format
 msgid ""
 "Decryption failed.\n"
@@ -1151,7 +1151,7 @@
 "Entshlüsselung fehlgeschlagen.\n"
 "%s: existiert nicht."
 
-#: Src/wptFileManager.cpp:1371
+#: Src/wptFileManager.cpp:1383
 #, c-format
 msgid ""
 "The original file name is '%s'.\n"
@@ -1162,32 +1162,32 @@
 "\n"
 "Wollen Sie diesen anstatt von '%s' benutzen?"
 
-#: Src/wptFileManager.cpp:1419
+#: Src/wptFileManager.cpp:1431
 msgid "Enter filename for signed file"
 msgstr "Wählen Sie einen Namen für die signierte Datei"
 
-#: Src/wptFileManager.cpp:1517
+#: Src/wptFileManager.cpp:1529
 msgid "Could not find detached signature in the clipboard."
 msgstr "Konnte abgetrennte Signatur in der Zwischenablage nicht finden."
 
 # c:\oss\winpt-gpgme\src\wptFileManager.cpp:1362
-#: Src/wptFileManager.cpp:1537
+#: Src/wptFileManager.cpp:1549
 msgid "No files to check."
 msgstr "Keine Datei(en) zu pruefen."
 
-#: Src/wptFileManager.cpp:1554
+#: Src/wptFileManager.cpp:1566
 msgid "Select Data File"
 msgstr "Bitte Datendatei auswählen"
 
-#: Src/wptFileManager.cpp:1556
+#: Src/wptFileManager.cpp:1568
 msgid "Selected Output File"
 msgstr "Bitte Ausgabedatei auswählen"
 
-#: Src/wptFileManager.cpp:1584
+#: Src/wptFileManager.cpp:1596
 msgid "Invalid file name. Exit"
 msgstr "Ungültiger Dateiname. Abbruch"
 
-#: Src/wptFileManager.cpp:1682 Src/wptFileManager.cpp:1693
+#: Src/wptFileManager.cpp:1694 Src/wptFileManager.cpp:1705
 #: Src/wptFileManagerDlg.cpp:243 Src/wptImportList.cpp:404
 #: Src/wptImportList.cpp:410 Src/wptImportList.cpp:420
 #: Src/wptImportList.cpp:428 Src/wptImportList.cpp:437
@@ -1196,7 +1196,7 @@
 msgid "Import"
 msgstr "Importieren"
 
-#: Src/wptFileManager.cpp:1690
+#: Src/wptFileManager.cpp:1702
 msgid ""
 "Key without a self signature was dectected!\n"
 "(This key is NOT usable for encryption, etc)\n"
@@ -1208,58 +1208,58 @@
 "\n"
 "Kann diese(n) Schlüssel nicht importieren!"
 
-#: Src/wptFileManager.cpp:1716 Src/wptKeyManager.cpp:264
+#: Src/wptFileManager.cpp:1728 Src/wptKeyManager.cpp:264
 #: Src/wptKeyManager.cpp:307 Src/wptKeyManager.cpp:342
 msgid "No key was selected for export."
 msgstr "Kein Schlüssel zum Exportieren ausgewählt."
 
-#: Src/wptFileManager.cpp:1716 Src/wptFileManager.cpp:1739
+#: Src/wptFileManager.cpp:1728 Src/wptFileManager.cpp:1751
 #: Src/wptKeyserverDlg.cpp:90
 msgid "Export"
 msgstr "Exportieren"
 
-#: Src/wptFileManager.cpp:1724 Src/wptKeyManagerDlg.cpp:1712
-#: Src/wptKeyManagerDlg.cpp:1744
+#: Src/wptFileManager.cpp:1736 Src/wptKeyManagerDlg.cpp:1711
+#: Src/wptKeyManagerDlg.cpp:1743
 msgid "Choose Name for Key File"
 msgstr "Den Namen der Schlüsseldatei wählen"
 
-#: Src/wptFileManager.cpp:1743 Src/wptKeyEditDlgs.cpp:1060
+#: Src/wptFileManager.cpp:1755 Src/wptKeyEditDlgs.cpp:1060
 #: Src/wptKeyEditDlgs.cpp:1333 Src/wptKeyEditDlgs.cpp:1406
 #: Src/wptKeyserverDlg.cpp:102
 msgid "GnuPG status"
 msgstr "GnuPG Status"
 
-#: Src/wptFileManager.cpp:1743
+#: Src/wptFileManager.cpp:1755
 #, c-format
 msgid "Finished (Output: %s)"
 msgstr "Fertig (Ausgabe: %s)"
 
-#: Src/wptFileManager.cpp:1789
+#: Src/wptFileManager.cpp:1801
 #, c-format
 msgid "%s: no valid OpenPGP data found."
 msgstr "%s: keine gültigen OpenPGP-Daten gefunden."
 
-#: Src/wptFileManager.cpp:1849
+#: Src/wptFileManager.cpp:1861
 msgid "Encrypting into a ZIP archive makes sense with multiple files"
 msgstr "Verschlüsseln in eine ZIP-Datei macht nur mit mehreren Dateien Sinn"
 
-#: Src/wptFileManager.cpp:1854
+#: Src/wptFileManager.cpp:1866
 msgid "Choose File Name for Output"
 msgstr "Wählen Sie einen Namen für die Ausgabedatei"
 
-#: Src/wptFileManager.cpp:1924
+#: Src/wptFileManager.cpp:1936
 msgid "Choose a Name for the Archive"
 msgstr "Wählen Sie den Namen für das Archiv"
 
-#: Src/wptFileManager.cpp:1927
+#: Src/wptFileManager.cpp:1939
 msgid "Invalid archive name. Exit."
 msgstr "Ungültiger Archivename. Abbruch."
 
-#: Src/wptFileManager.cpp:1927 Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1939 Src/wptFileManager.cpp:1946
 msgid "Encrypt Directory"
 msgstr "Verzeichnis verschlüsseln"
 
-#: Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1946
 msgid "Could not create zip archive."
 msgstr "Konnte ZIP-Datei nicht erstellen."
 
@@ -1284,7 +1284,7 @@
 msgstr "&Schlüssel zum Signieren"
 
 #: Src/wptFileManagerDlg.cpp:82 Src/wptFileManagerDlg.cpp:285
-#: Src/wptKeyManagerDlg.cpp:959
+#: Src/wptKeyManagerDlg.cpp:956
 msgid "Options"
 msgstr "Optionen"
 
@@ -1307,8 +1307,8 @@
 msgid "%s contain(s) %d key(s)."
 msgstr "%s enthält %d Schlüssel."
 
-#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:472
-#: Src/wptKeyManagerDlg.cpp:932 Src/wptOwnertrustDlg.cpp:98
+#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:491
+#: Src/wptKeyManagerDlg.cpp:929 Src/wptOwnertrustDlg.cpp:98
 msgid "File"
 msgstr "Datei"
 
@@ -1347,11 +1347,11 @@
 #: Src/wptFileManagerDlg.cpp:331 Src/wptKeyEditDlgs.cpp:1305
 #: Src/wptKeyEditDlgs.cpp:1356 Src/wptKeyEditDlgs.cpp:1432
 #: Src/wptKeyManager.cpp:683 Src/wptKeyManager.cpp:784
-#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1520
-#: Src/wptKeyManagerDlg.cpp:1536 Src/wptKeyManagerDlg.cpp:1564
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1519
+#: Src/wptKeyManagerDlg.cpp:1535 Src/wptKeyManagerDlg.cpp:1563
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1701 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyserverSearchDlg.cpp:127
 msgid "Please select a key."
 msgstr "Bitte wählen Sie einen Schlüssel aus."
 
@@ -1364,141 +1364,141 @@
 msgid "%d Object(s) marked"
 msgstr "%d Objekt(e) markiert"
 
-#: Src/wptFileManagerDlg.cpp:470 Src/wptMainProc.cpp:550
+#: Src/wptFileManagerDlg.cpp:489 Src/wptMainProc.cpp:540
 msgid "File Manager (use drag & drop to add files)"
 msgstr "Dateimanager (Drag & Drop möglich)"
 
-#: Src/wptFileManagerDlg.cpp:473 Src/wptKeyManagerDlg.cpp:933
-#: Src/wptKeyManagerDlg.cpp:938 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptFileManagerDlg.cpp:492 Src/wptKeyManagerDlg.cpp:930
+#: Src/wptKeyManagerDlg.cpp:935 Src/wptKeyManagerDlg.cpp:946
 msgid "Edit"
 msgstr "Bearbeiten"
 
-#: Src/wptFileManagerDlg.cpp:474 Src/wptKeyManagerDlg.cpp:934
+#: Src/wptFileManagerDlg.cpp:493 Src/wptKeyManagerDlg.cpp:931
 msgid "View"
 msgstr "Ansicht"
 
-#: Src/wptFileManagerDlg.cpp:475
+#: Src/wptFileManagerDlg.cpp:494
 msgid "&Open..."
 msgstr "Ö&ffnen.."
 
-#: Src/wptFileManagerDlg.cpp:476
+#: Src/wptFileManagerDlg.cpp:495
 msgid "&Encrypt"
 msgstr "&Verschlüsseln"
 
-#: Src/wptFileManagerDlg.cpp:477 Src/wptFileManagerDlg.cpp:552
+#: Src/wptFileManagerDlg.cpp:496 Src/wptFileManagerDlg.cpp:571
 msgid "Encrypt into ZIP"
 msgstr "Verschlüsseln in ZIP"
 
-#: Src/wptFileManagerDlg.cpp:478
+#: Src/wptFileManagerDlg.cpp:497
 msgid "&Decrypt"
 msgstr "&Entschlüsseln"
 
-#: Src/wptFileManagerDlg.cpp:479 Src/wptKeyManagerDlg.cpp:950
-#: Src/wptKeyManagerDlg.cpp:998
+#: Src/wptFileManagerDlg.cpp:498 Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:995
 msgid "&Sign"
 msgstr "&Signieren"
 
-#: Src/wptFileManagerDlg.cpp:480 Src/wptFileManagerDlg.cpp:556
-#: Src/wptMainProc.cpp:423 Src/wptMainProc.cpp:427
+#: Src/wptFileManagerDlg.cpp:499 Src/wptFileManagerDlg.cpp:575
+#: Src/wptMainProc.cpp:413 Src/wptMainProc.cpp:417
 msgid "Sign && Encrypt"
 msgstr "Signieren && Verschlüsseln"
 
-#: Src/wptFileManagerDlg.cpp:481
+#: Src/wptFileManagerDlg.cpp:500
 msgid "&Verify"
 msgstr "Über&prüfen"
 
-#: Src/wptFileManagerDlg.cpp:482
+#: Src/wptFileManagerDlg.cpp:501
 msgid "S&ymmetric"
 msgstr "S&ymmetrisch"
 
-#: Src/wptFileManagerDlg.cpp:483
+#: Src/wptFileManagerDlg.cpp:502
 msgid "&Import"
 msgstr "&Importieren"
 
-#: Src/wptFileManagerDlg.cpp:484
+#: Src/wptFileManagerDlg.cpp:503
 msgid "E&xport"
 msgstr "E&xportieren"
 
-#: Src/wptFileManagerDlg.cpp:485 Src/wptMainProc.cpp:419
+#: Src/wptFileManagerDlg.cpp:504 Src/wptMainProc.cpp:409
 msgid "Exit"
 msgstr "Beenden"
 
-#: Src/wptFileManagerDlg.cpp:486
+#: Src/wptFileManagerDlg.cpp:505
 msgid "&Reset"
 msgstr "&Reset"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:421
-#: Src/wptFileManagerDlg.cpp:487
+#: Src/wptFileManagerDlg.cpp:506
 msgid "Always on Top"
 msgstr "Immer im Vordergrund"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:422
-#: Src/wptFileManagerDlg.cpp:488
+#: Src/wptFileManagerDlg.cpp:507
 msgid "&Paste"
 msgstr "&Einfügen"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:423
-#: Src/wptFileManagerDlg.cpp:489
+#: Src/wptFileManagerDlg.cpp:508
 msgid "&Select All"
 msgstr "Alles &markieren"
 
-#: Src/wptFileManagerDlg.cpp:490
+#: Src/wptFileManagerDlg.cpp:509
 msgid "&Preferences"
 msgstr "&Einstellungen"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:478
-#: Src/wptFileManagerDlg.cpp:491 Src/wptFileManagerDlg.cpp:559
+#: Src/wptFileManagerDlg.cpp:510 Src/wptFileManagerDlg.cpp:578
 msgid "Send as Mail"
 msgstr "Als Mail versenden"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:425
-#: Src/wptFileManagerDlg.cpp:492
+#: Src/wptFileManagerDlg.cpp:511
 msgid "&List Packets"
 msgstr "Pakete an&zeigen"
 
-#: Src/wptFileManagerDlg.cpp:494
+#: Src/wptFileManagerDlg.cpp:513
 msgid "&Wipe"
 msgstr "&Löschen"
 
-#: Src/wptFileManagerDlg.cpp:558
+#: Src/wptFileManagerDlg.cpp:577
 msgid "Wipe"
 msgstr "Löschen"
 
-#: Src/wptFileManagerDlg.cpp:560
+#: Src/wptFileManagerDlg.cpp:579
 msgid "List Packets"
 msgstr "Pakete anzeigen"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:429
-#: Src/wptFileManagerDlg.cpp:606
+#: Src/wptFileManagerDlg.cpp:607
 msgid "&Calc Digest"
 msgstr "Digest &berechnen"
 
-#: Src/wptFileManagerDlg.cpp:621
+#: Src/wptFileManagerDlg.cpp:622
 msgid "This command requires admin privileges.\n"
 msgstr "Dieses Kommando benötigt Adminrechte.\n"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:671
-#: Src/wptFileManagerDlg.cpp:770
+#: Src/wptFileManagerDlg.cpp:771
 msgid "Are you sure you want to secure delete these files?"
 msgstr "Sollen diese Dateien wirklich sicher gelöscht werden?"
 
-#: Src/wptFileManagerDlg.cpp:771 Src/wptMainProc.cpp:100
+#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:100
 msgid "&Yes"
 msgstr "&Ja"
 
-#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:101
+#: Src/wptFileManagerDlg.cpp:773 Src/wptMainProc.cpp:101
 msgid "&No"
 msgstr "&Nein"
 
-#: Src/wptFileManagerDlg.cpp:815
+#: Src/wptFileManagerDlg.cpp:816
 msgid "Operation Status: Error"
 msgstr "Prozess-Status: Fehler"
 
-#: Src/wptFileManagerDlg.cpp:816
+#: Src/wptFileManagerDlg.cpp:817
 msgid "Operation Status: Done."
 msgstr "Prozess-Status: Fertig."
 
-#: Src/wptFileManagerDlg.cpp:859
+#: Src/wptFileManagerDlg.cpp:860
 #, c-format
 msgid ""
 "Total Capacity: %12sk\n"
@@ -1554,7 +1554,7 @@
 msgstr "WinPT Erster Start"
 
 # c:\oss\winpt-gpgme\src\wptGPG.cpp:728
-#: Src/wptGPG.cpp:821
+#: Src/wptGPG.cpp:839
 msgid ""
 "The selected keyring has the read-only file\n"
 "attribute. In this state you do not have write\n"
@@ -1564,19 +1564,19 @@
 "In diesem Zustand kann nichts gespeichert werden\n"
 "Wollen Sie das Attribut zurücksetzen?"
 
-#: Src/wptGPG.cpp:824
+#: Src/wptGPG.cpp:842
 msgid "GPG Information"
 msgstr "GPG Information"
 
-#: Src/wptGPG.cpp:828
+#: Src/wptGPG.cpp:846
 msgid "Could not reset read-only state."
 msgstr "Konnte den Nur-Lesen Zustand nicht zurücksetzen."
 
-#: Src/wptGPG.cpp:829 Src/wptGPG.cpp:1110 Src/wptGPG.cpp:1119
+#: Src/wptGPG.cpp:847 Src/wptGPG.cpp:1128 Src/wptGPG.cpp:1137
 msgid "GPG Error"
 msgstr "GPG Fehler"
 
-#: Src/wptGPG.cpp:841
+#: Src/wptGPG.cpp:859
 msgid ""
 "You do not have file access to modify the contents of\n"
 "one or both of the selected keyrings.\n"
@@ -1590,23 +1590,23 @@
 "Die Schlüsselbunde sind im Nur-Lesen-Modus, was meistens der Fall ist, \n"
 "wenn ein anderes Programm auf die Schlüsselbunde zugreift.\n"
 
-#: Src/wptGPG.cpp:846
+#: Src/wptGPG.cpp:864
 msgid "GPG Warning"
 msgstr "GPG Warnung"
 
-#: Src/wptGPG.cpp:870 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
+#: Src/wptGPG.cpp:888 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
 #: Src/wptGPGPrefsDlg.cpp:228 Src/wptGPGPrefsDlg.cpp:234
 #: Src/wptGPGPrefsDlg.cpp:239 Src/wptGPGPrefsDlg.cpp:244
 #: Src/wptGPGPrefsDlg.cpp:250 Src/wptGPGPrefsDlg.cpp:264
-#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:960
-#: Src/wptMainProc.cpp:439 Src/wptPreferencesDlg.cpp:215
+#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:957
+#: Src/wptMainProc.cpp:429 Src/wptPreferencesDlg.cpp:215
 #: Src/wptPreferencesDlg.cpp:260 Src/wptPreferencesDlg.cpp:272
 #: Src/wptPreferencesDlg.cpp:284 Src/wptPreferencesDlg.cpp:315
 #: Src/wptRegistry.cpp:591
 msgid "Preferences"
 msgstr "Einstellungen"
 
-#: Src/wptGPG.cpp:871
+#: Src/wptGPG.cpp:889
 #, c-format
 msgid ""
 "%s does not exit.\n"
@@ -1615,41 +1615,41 @@
 "%s existiert nicht.\n"
 "Möchten Sie dieses Verzeichnis erstellen?"
 
-#: Src/wptGPG.cpp:899
+#: Src/wptGPG.cpp:917
 msgid "Please choose your Public Keyring"
 msgstr "Bitte wählen Sie Ihren öffentlichen Schlüsselbund."
 
-#: Src/wptGPG.cpp:902 Src/wptGPG.cpp:924
+#: Src/wptGPG.cpp:920 Src/wptGPG.cpp:942
 msgid "No keyring was chosen. Exit."
 msgstr "Kein Schlüsselbund ausgewählt. Abbruch."
 
-#: Src/wptGPG.cpp:909
+#: Src/wptGPG.cpp:927
 msgid "Overwrite old public keyring?"
 msgstr "Alten öff. Schlüsselbund überschreiben?"
 
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:936
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:954
 msgid "Could not copy file."
 msgstr "Datei konnte nicht kopiert werden"
 
-#: Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:939
 msgid "Please choose your Secret Keyring"
 msgstr "Bitte wählen Sie Ihren geheimen Schlüsselbund"
 
-#: Src/wptGPG.cpp:930
+#: Src/wptGPG.cpp:948
 msgid "Overwrite old secret keyring?"
 msgstr "Alten geheimen Schlüsselbund überschreiben?"
 
-#: Src/wptGPG.cpp:980 Src/wptGPG.cpp:1069 Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:998 Src/wptGPG.cpp:1087 Src/wptGPG.cpp:1100
 msgid "Backup"
 msgstr "Sicherung"
 
-#: Src/wptGPG.cpp:980
+#: Src/wptGPG.cpp:998
 #, c-format
 msgid "Backup keyring \"%s\" failed"
 msgstr "Schlüsselbundsicherung \"%s\" fehlgeschlagen"
 
 # c:\oss\winpt-gpgme\src\wptGPG.cpp:1021
-#: Src/wptGPG.cpp:1070
+#: Src/wptGPG.cpp:1088
 #, c-format
 msgid ""
 "The backup drive '%s' does not seems to accessable.\n"
@@ -1658,12 +1658,12 @@
 "Kann auf das Backup-Laufwerk '%s' nicht zugreifen.\n"
 "Bitte aktivieren/überprüfen sie das Laufwerk um Fortzufahren."
 
-#: Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:1100
 #, c-format
 msgid "Invalid backup mode %d"
 msgstr "Ungültiger Sicherungsmethode %d"
 
-#: Src/wptGPG.cpp:1109
+#: Src/wptGPG.cpp:1127
 msgid "No GPG error description available."
 msgstr "Keine Fehlerbeschreibung von GPG verfügbar."
 
@@ -1737,8 +1737,8 @@
 "Aktuelle Daten gehen verloren\n"
 "Sind Sie sicher?"
 
-#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1674
-#: Src/wptMainProc.cpp:598
+#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1673
+#: Src/wptMainProc.cpp:588
 msgid "GnuPG Preferences"
 msgstr "GnuPG-Einstellungen"
 
@@ -1832,23 +1832,23 @@
 #: Src/wptKeyManager.cpp:731 Src/wptKeyManager.cpp:757
 #: Src/wptKeyManager.cpp:784 Src/wptKeyManager.cpp:789
 #: Src/wptKeyManager.cpp:813 Src/wptKeyManager.cpp:818
-#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:888
-#: Src/wptKeyManager.cpp:893 Src/wptKeyManager.cpp:949
-#: Src/wptKeyManager.cpp:979 Src/wptKeyManager.cpp:1066
-#: Src/wptKeyManagerDlg.cpp:1182 Src/wptKeyManagerDlg.cpp:1195
-#: Src/wptKeyManagerDlg.cpp:1205 Src/wptKeyManagerDlg.cpp:1499
-#: Src/wptKeyManagerDlg.cpp:1521 Src/wptKeyManagerDlg.cpp:1536
-#: Src/wptKeyManagerDlg.cpp:1546 Src/wptKeyManagerDlg.cpp:1554
-#: Src/wptKeyManagerDlg.cpp:1564 Src/wptKeyManagerDlg.cpp:1570
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1612 Src/wptKeyManagerDlg.cpp:1644
-#: Src/wptKeyManagerDlg.cpp:1703 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyManagerDlg.cpp:1726 Src/wptKeyManagerDlg.cpp:1731
-#: Src/wptKeyManagerDlg.cpp:1802 Src/wptKeyManagerDlg.cpp:1807
-#: Src/wptKeyManagerDlg.cpp:1940 Src/wptKeysigDlg.cpp:93
+#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:897 Src/wptKeyManager.cpp:953
+#: Src/wptKeyManager.cpp:983 Src/wptKeyManager.cpp:1070
+#: Src/wptKeyManagerDlg.cpp:1179 Src/wptKeyManagerDlg.cpp:1192
+#: Src/wptKeyManagerDlg.cpp:1202 Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1520 Src/wptKeyManagerDlg.cpp:1535
+#: Src/wptKeyManagerDlg.cpp:1545 Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1563 Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1611 Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyManagerDlg.cpp:1725 Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1801 Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1939 Src/wptKeysigDlg.cpp:93
 #: Src/wptKeysigDlg.cpp:105 Src/wptKeysigDlg.cpp:314 Src/wptKeysigDlg.cpp:387
-#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:413
-#: Src/wptMainProc.cpp:561 Src/wptMainProc.cpp:569
+#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:403
+#: Src/wptMainProc.cpp:551 Src/wptMainProc.cpp:559
 msgid "Key Manager"
 msgstr "Schlüsselverwaltung"
 
@@ -1952,34 +1952,34 @@
 msgstr "Ungültige Benutzerkennung"
 
 #: Src/wptImportList.cpp:345 Src/wptKeylist.cpp:576 Src/wptKeylist.cpp:584
-#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyManagerDlg.cpp:946
-#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:53
+#: Src/wptKeyManagerDlg.cpp:874 Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyserverSearchDlg.cpp:54 Src/wptSigList.cpp:53
 #: Src/wptVerifyList.cpp:112
 msgid "User ID"
 msgstr "Benutzerkennung"
 
 #: Src/wptImportList.cpp:346 Src/wptKeylist.cpp:578 Src/wptKeylist.cpp:587
-#: Src/wptKeyManagerDlg.cpp:880 Src/wptKeyserverSearchDlg.cpp:50
+#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyserverSearchDlg.cpp:50
 msgid "Size"
 msgstr "Größe"
 
 #: Src/wptImportList.cpp:347 Src/wptKeyEditDlgs.cpp:1077
-#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:878
-#: Src/wptKeyManagerDlg.cpp:969 Src/wptKeyRevokersDlg.cpp:58
-#: Src/wptKeyserverSearchDlg.cpp:51 Src/wptSigList.cpp:57
+#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:875
+#: Src/wptKeyManagerDlg.cpp:966 Src/wptKeyRevokersDlg.cpp:58
+#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:57
 #: Src/wptVerifyList.cpp:111
 msgid "Key ID"
 msgstr "Schlüssel-ID"
 
 #: Src/wptImportList.cpp:348 Src/wptKeyEditDlgs.cpp:1078
 #: Src/wptKeyEditDlgs.cpp:1174 Src/wptKeylist.cpp:591
-#: Src/wptKeyManagerDlg.cpp:884 Src/wptKeyManagerDlg.cpp:972
-#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:56
+#: Src/wptKeyManagerDlg.cpp:881 Src/wptKeyManagerDlg.cpp:969
+#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:56
 msgid "Creation"
 msgstr "Erstellung"
 
 #: Src/wptImportList.cpp:349 Src/wptKeylist.cpp:586
-#: Src/wptKeyManagerDlg.cpp:879 Src/wptKeyManagerDlg.cpp:971
+#: Src/wptKeyManagerDlg.cpp:876 Src/wptKeyManagerDlg.cpp:968
 msgid "Type"
 msgstr "Typ"
 
@@ -1993,7 +1993,7 @@
 "und deshalb ein CRC Fehler auftrat."
 
 # c:\oss\winpt-gpgme\src\wptKeyCache.cpp:479
-#: Src/wptKeyCache.cpp:748
+#: Src/wptKeyCache.cpp:750
 msgid "Load GPG Keyrings..."
 msgstr "Lade GPG Schlüsselbunde..."
 
@@ -2209,7 +2209,7 @@
 #: Src/wptKeyEditDlgs.cpp:910 Src/wptKeyEditDlgs.cpp:942
 #: Src/wptKeyEditDlgs.cpp:1022 Src/wptKeyEditDlgs.cpp:1352
 #: Src/wptKeyEditDlgs.cpp:1427 Src/wptKeyEditDlgs.cpp:1489
-#: Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1552
 msgid "There is no secret key available!"
 msgstr "Kein geheimer Schlüssel vorhanden!"
 
@@ -2262,7 +2262,7 @@
 msgid "Passphrase successfully changed."
 msgstr "Passwort erfolgreich geändert."
 
-#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:885
+#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:882
 msgid "Description"
 msgstr "Beschreibung"
 
@@ -2275,7 +2275,7 @@
 msgstr "Kein(e) Unterschlüssel gefunden."
 
 #: Src/wptKeyEditDlgs.cpp:1171 Src/wptKeylist.cpp:580 Src/wptKeylist.cpp:589
-#: Src/wptKeyManagerDlg.cpp:882
+#: Src/wptKeyManagerDlg.cpp:879
 msgid "Validity"
 msgstr "Gültigkeit"
 
@@ -2544,7 +2544,7 @@
 
 #: Src/wptKeyEditDlgs.cpp:2144
 msgid "&Revoke..."
-msgstr "Widerrufen..."
+msgstr "&Widerrufen..."
 
 #: Src/wptKeyEditDlgs.cpp:2176
 msgid "Please select a command."
@@ -2589,8 +2589,8 @@
 msgstr "Bitte wählen Sie einen Eintrag."
 
 #: Src/wptKeyEditOwnertrustDlg.cpp:88 Src/wptKeyEditOwnertrustDlg.cpp:95
-#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:940
-#: Src/wptKeyManagerDlg.cpp:1768 Src/wptKeyPropsDlg.cpp:293
+#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:937
+#: Src/wptKeyManagerDlg.cpp:1767 Src/wptKeyPropsDlg.cpp:293
 #: Src/wptOwnertrustDlg.cpp:97 Src/wptOwnertrustDlg.cpp:121
 #: Src/wptOwnertrustDlg.cpp:133
 msgid "Ownertrust"
@@ -2613,7 +2613,7 @@
 #: Src/wptKeygenDlg.cpp:418 Src/wptKeygenDlg.cpp:423 Src/wptKeygenDlg.cpp:430
 #: Src/wptKeygenDlg.cpp:438 Src/wptKeygenDlg.cpp:452 Src/wptKeygenDlg.cpp:461
 #: Src/wptKeygenDlg.cpp:485 Src/wptKeygenDlg.cpp:581
-#: Src/wptKeyManagerDlg.cpp:1635 Src/wptPassphraseDlg.cpp:109
+#: Src/wptKeyManagerDlg.cpp:1634 Src/wptPassphraseDlg.cpp:109
 msgid "Key Generation"
 msgstr "Schlüsselerzeugung"
 
@@ -2771,7 +2771,7 @@
 
 #: Src/wptKeygenDlg.cpp:537 Src/wptKeygenDlg.cpp:559 Src/wptKeygenDlg.cpp:564
 #: Src/wptKeygenDlg.cpp:571 Src/wptKeygenDlg.cpp:577 Src/wptKeygenDlg.cpp:600
-#: Src/wptKeyManagerDlg.cpp:1658
+#: Src/wptKeyManagerDlg.cpp:1657
 msgid "Key Generation Wizard"
 msgstr "Schlüsselerzeugungs-Assistent"
 
@@ -2864,21 +2864,21 @@
 msgid "key pair"
 msgstr "Schlüsselpaar"
 
-#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:881
-#: Src/wptKeyManagerDlg.cpp:970
+#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:878
+#: Src/wptKeyManagerDlg.cpp:967
 msgid "Cipher"
 msgstr "Cipher"
 
-#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:883
+#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:880
 #: Src/wptVerifyList.cpp:110
 msgid "Trust"
 msgstr "Vertrauen"
 
-#: Src/wptKeylist.cpp:762 Src/wptPassphraseCB.cpp:124
+#: Src/wptKeylist.cpp:761 Src/wptPassphraseCB.cpp:124
 msgid "Invalid User ID"
 msgstr "Ungültige Benutzerkennung"
 
-#: Src/wptKeylist.cpp:1030
+#: Src/wptKeylist.cpp:1029
 #, c-format
 msgid ""
 "It is NOT certain that the key belongs to the person\n"
@@ -2893,11 +2893,11 @@
 "\n"
 "\"%s\" trotzdem benutzen?"
 
-#: Src/wptKeylist.cpp:1038 Src/wptKeylist.cpp:1100
+#: Src/wptKeylist.cpp:1037 Src/wptKeylist.cpp:1099
 msgid "Recipients"
 msgstr "Empfänger"
 
-#: Src/wptKeylist.cpp:1101
+#: Src/wptKeylist.cpp:1100
 #, c-format
 msgid ""
 "KeyID %s.\n"
@@ -2906,7 +2906,7 @@
 "Schlüssel ID %s.\n"
 "Wollen Sie wirklich einen widerrufenen Schlüssel exportieren?"
 
-#: Src/wptKeylist.cpp:1203
+#: Src/wptKeylist.cpp:1202
 msgid "Secret Key List"
 msgstr "Liste der geheimen Schlüssel"
 
@@ -3048,46 +3048,46 @@
 msgid "Please only select one key."
 msgstr "Bitte nur einen Schlüssel auswählen."
 
-#: Src/wptKeyManager.cpp:887
+#: Src/wptKeyManager.cpp:891
 msgid "Do you really want to refresh all keys in the keyring?"
 msgstr "Wirklich alle Schlüssel im Schlüsselbund neu laden?"
 
-#: Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:896
 msgid "Could not connect to keyserver, abort procedure."
 msgstr ""
 "Verbindung zum Keyserver fehlgeschlagen; Die Prozedur wird abgebrochen."
 
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search"
 msgstr "Suchen"
 
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search for:"
 msgstr "Suche nach:"
 
 # c:\oss\winpt-gpgme\src\wptKeyManager.cpp:896
-#: Src/wptKeyManager.cpp:974
+#: Src/wptKeyManager.cpp:978
 #, c-format
 msgid "String pattern \"%s\" not found."
 msgstr "Zeichenkette \"%s\" nicht gefunden."
 
-#: Src/wptKeyManager.cpp:1043 Src/wptKeyRevokeDlg.cpp:87
+#: Src/wptKeyManager.cpp:1047 Src/wptKeyRevokeDlg.cpp:87
 msgid "0. No reason specified"
 msgstr "0. Kein Grund angeben"
 
-#: Src/wptKeyManager.cpp:1044 Src/wptKeyRevokeDlg.cpp:88
+#: Src/wptKeyManager.cpp:1048 Src/wptKeyRevokeDlg.cpp:88
 msgid "1. Key has been compromised"
 msgstr "1. Der Schlüssel ist nicht mehr sicher"
 
-#: Src/wptKeyManager.cpp:1045 Src/wptKeyRevokeDlg.cpp:89
+#: Src/wptKeyManager.cpp:1049 Src/wptKeyRevokeDlg.cpp:89
 msgid "2. Key is superseded"
 msgstr "2. Der Schlüssel ist veraltet"
 
-#: Src/wptKeyManager.cpp:1046 Src/wptKeyRevokeDlg.cpp:90
+#: Src/wptKeyManager.cpp:1050 Src/wptKeyRevokeDlg.cpp:90
 msgid "3. Key is no longer used"
 msgstr "3. Der Schlüssel wird nicht mehr benutzt"
 
-#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:990
+#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:987
 msgid "Paste Key from Clipboard"
 msgstr "Schlüssel aus Ablage einfügen"
 
@@ -3112,192 +3112,192 @@
 msgid "%d keys"
 msgstr "%d Schlüssel"
 
-#: Src/wptKeyManagerDlg.cpp:935
+#: Src/wptKeyManagerDlg.cpp:932
 msgid "Key"
 msgstr "Schlüssel"
 
-#: Src/wptKeyManagerDlg.cpp:936 Src/wptKeyManagerDlg.cpp:1220
+#: Src/wptKeyManagerDlg.cpp:933 Src/wptKeyManagerDlg.cpp:1217
 msgid "Groups"
 msgstr "Gruppen"
 
 # c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:478
-#: Src/wptKeyManagerDlg.cpp:939
+#: Src/wptKeyManagerDlg.cpp:936
 msgid "Send Mail..."
 msgstr "E-Mail versenden..."
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:685
-#: Src/wptKeyManagerDlg.cpp:941
+#: Src/wptKeyManagerDlg.cpp:938
 msgid "&Copy\tCtrl+C"
 msgstr "&Kopieren\tCtrl+C"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:686
-#: Src/wptKeyManagerDlg.cpp:942
+#: Src/wptKeyManagerDlg.cpp:939
 msgid "&Paste\tCtrl+V"
 msgstr "&Einfügen\tCtrl+V"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:687
-#: Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyManagerDlg.cpp:940
 msgid "Search...\tCtrl+F"
 msgstr "Suchen...\tCtrl+F"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:688
-#: Src/wptKeyManagerDlg.cpp:944
+#: Src/wptKeyManagerDlg.cpp:941
 msgid "Select All\tCtrl+A"
 msgstr "Alles markieren\tCtrl+A"
 
-#: Src/wptKeyManagerDlg.cpp:945
+#: Src/wptKeyManagerDlg.cpp:942
 msgid "&Quit"
 msgstr "&Beenden"
 
-#: Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:944
 msgid "&Expert"
 msgstr "&Experte"
 
-#: Src/wptKeyManagerDlg.cpp:948
+#: Src/wptKeyManagerDlg.cpp:945
 msgid "&Normal"
 msgstr "&Normal"
 
-#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:952
-#: Src/wptKeyManagerDlg.cpp:996
+#: Src/wptKeyManagerDlg.cpp:948 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptKeyManagerDlg.cpp:993
 msgid "&Delete"
 msgstr "&Löschen"
 
-#: Src/wptKeyManagerDlg.cpp:953 Src/wptKeyManagerDlg.cpp:997
+#: Src/wptKeyManagerDlg.cpp:950 Src/wptKeyManagerDlg.cpp:994
 msgid "&Revoke Cert"
 msgstr "Widerruf Zertifikat"
 
-#: Src/wptKeyManagerDlg.cpp:954 Src/wptKeyManagerDlg.cpp:993
+#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:990
 msgid "&List Signatures"
 msgstr "Signaturen anzeigen"
 
-#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:1575
+#: Src/wptKeyManagerDlg.cpp:952 Src/wptKeyManagerDlg.cpp:1574
 #: Src/wptKeyTrustPathDlg.cpp:130
 msgid "List Trust Path"
 msgstr "Zeige Vertrauenspfad"
 
-#: Src/wptKeyManagerDlg.cpp:956
+#: Src/wptKeyManagerDlg.cpp:953
 msgid "&Export..."
 msgstr "&Exportieren..."
 
-#: Src/wptKeyManagerDlg.cpp:957
+#: Src/wptKeyManagerDlg.cpp:954
 msgid "&Import..."
 msgstr "&Importieren..."
 
-#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyManagerDlg.cpp:994
+#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:991
 #: Src/wptKeysigDlg.cpp:425
 msgid "&Properties"
 msgstr "&Eigenschaften"
 
-#: Src/wptKeyManagerDlg.cpp:962
+#: Src/wptKeyManagerDlg.cpp:959
 msgid "E&xport Secret Key"
 msgstr "E&xportiere geheimen Schlüssel"
 
-#: Src/wptKeyManagerDlg.cpp:963
+#: Src/wptKeyManagerDlg.cpp:960
 msgid "Re&load Key Cache"
 msgstr "Erneuere Sch&lüsselcache"
 
-#: Src/wptKeyManagerDlg.cpp:964
+#: Src/wptKeyManagerDlg.cpp:961
 msgid "R&everify Signatures"
 msgstr "Signaturen erneut prüfen"
 
-#: Src/wptKeyManagerDlg.cpp:965
+#: Src/wptKeyManagerDlg.cpp:962
 msgid "Refresh &Keys (Keyserver)"
 msgstr "Vom Schlüsselserver aktualisieren"
 
-#: Src/wptKeyManagerDlg.cpp:966 Src/wptTextInputDlg.cpp:49
+#: Src/wptKeyManagerDlg.cpp:963 Src/wptTextInputDlg.cpp:49
 msgid "Info"
 msgstr "Über"
 
-#: Src/wptKeyManagerDlg.cpp:985
+#: Src/wptKeyManagerDlg.cpp:982
 msgid "Copy User ID to Clipboard"
 msgstr "Kopiere Benutzerkennung in Ablage"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:886
-#: Src/wptKeyManagerDlg.cpp:986
+#: Src/wptKeyManagerDlg.cpp:983
 msgid "Copy Key ID to Clipboard"
 msgstr "Kopiere Schlüssel ID in Ablage"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:887
-#: Src/wptKeyManagerDlg.cpp:987
+#: Src/wptKeyManagerDlg.cpp:984
 msgid "Copy Fingerprint to Clipboard"
 msgstr "Kopiere Fingerprint in Ablage"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:888
-#: Src/wptKeyManagerDlg.cpp:988
+#: Src/wptKeyManagerDlg.cpp:985
 msgid "Copy Key Info to Clipboard"
 msgstr "Kopiere Schlüssel Info in Ablage"
 
-#: Src/wptKeyManagerDlg.cpp:989
+#: Src/wptKeyManagerDlg.cpp:986
 msgid "Copy Key to Clipboard"
 msgstr "Kopiere Schlüssel in Ablage"
 
-#: Src/wptKeyManagerDlg.cpp:991
+#: Src/wptKeyManagerDlg.cpp:988
 msgid "Refresh from Keyserver"
 msgstr "Vom Schlüsselserver aktualisieren"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:884
-#: Src/wptKeyManagerDlg.cpp:992
+#: Src/wptKeyManagerDlg.cpp:989
 msgid "Set Implicit &Trust"
 msgstr "Setze impliziertes Vertrauen"
 
-#: Src/wptKeyManagerDlg.cpp:999
+#: Src/wptKeyManagerDlg.cpp:996
 msgid "&Enable"
 msgstr "&Aktivieren"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:892
-#: Src/wptKeyManagerDlg.cpp:1000
+#: Src/wptKeyManagerDlg.cpp:997
 msgid "&Disable"
 msgstr "&Deaktivieren"
 
-#: Src/wptKeyManagerDlg.cpp:1001
+#: Src/wptKeyManagerDlg.cpp:998
 msgid "Re&fresh from Keyserver"
 msgstr "Vom Schlüsselserver aktualisieren"
 
-#: Src/wptKeyManagerDlg.cpp:1002
+#: Src/wptKeyManagerDlg.cpp:999
 msgid "Set preferred Keyserver URL"
 msgstr "Setze bevorzugte Keyserver URL"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:900
-#: Src/wptKeyManagerDlg.cpp:1003
+#: Src/wptKeyManagerDlg.cpp:1000
 msgid "Send Key to Mail Recipient"
 msgstr "Sende Schlüssel an Mailempfänger"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:904
-#: Src/wptKeyManagerDlg.cpp:1004
+#: Src/wptKeyManagerDlg.cpp:1001
 msgid "Set as Default Key"
 msgstr "Setze als Default Key"
 
-#: Src/wptKeyManagerDlg.cpp:1006
+#: Src/wptKeyManagerDlg.cpp:1003
 msgid "Key..."
 msgstr "Schlüssel..."
 
-#: Src/wptKeyManagerDlg.cpp:1007
+#: Src/wptKeyManagerDlg.cpp:1004
 msgid "User ID..."
 msgstr "Benutzerkennung..."
 
-#: Src/wptKeyManagerDlg.cpp:1008
+#: Src/wptKeyManagerDlg.cpp:1005
 msgid "Photo ID..."
 msgstr "Photo ID..."
 
-#: Src/wptKeyManagerDlg.cpp:1009
+#: Src/wptKeyManagerDlg.cpp:1006
 msgid "Revoker..."
 msgstr "Widerrufer..."
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:706
-#: Src/wptKeyManagerDlg.cpp:1012
+#: Src/wptKeyManagerDlg.cpp:1009
 msgid "Key Attributes"
 msgstr "Schlüsselattribute"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:707
-#: Src/wptKeyManagerDlg.cpp:1013
+#: Src/wptKeyManagerDlg.cpp:1010
 msgid "Add"
 msgstr "Hinzufügen"
 
-#: Src/wptKeyManagerDlg.cpp:1014
+#: Src/wptKeyManagerDlg.cpp:1011
 msgid "Send to Keyserver"
 msgstr "Sende an Keyserver"
 
-#: Src/wptKeyManagerDlg.cpp:1193
+#: Src/wptKeyManagerDlg.cpp:1190
 msgid ""
 "No ultimately trusted key found.\n"
 "Please set at least one secret key to ultimate trust."
@@ -3305,98 +3305,98 @@
 "Keinen explizit vertrauenswürdigen Schlüssel gefunden.\n"
 "Bitte setzten Sie zumindest einen geheimen Schlüssel auf absolutes Vertrauen."
 
-#: Src/wptKeyManagerDlg.cpp:1204
+#: Src/wptKeyManagerDlg.cpp:1201
 msgid "Could not set keylist window procedure."
 msgstr "Konnte \"keylist window procedure\" nicht setzen."
 
-#: Src/wptKeyManagerDlg.cpp:1221
+#: Src/wptKeyManagerDlg.cpp:1218
 msgid "&Show"
 msgstr "&Anzeigen"
 
-#: Src/wptKeyManagerDlg.cpp:1222
+#: Src/wptKeyManagerDlg.cpp:1219
 msgid "&New..."
 msgstr "&Neu..."
 
 # c:\oss\winpt-gpgme\src\wptFirstRunDlg.cpp:42
-#: Src/wptKeyManagerDlg.cpp:1327
+#: Src/wptKeyManagerDlg.cpp:1324
 msgid "Generate new key pair"
 msgstr "Neues Schlüsselpaar erzeugen"
 
-#: Src/wptKeyManagerDlg.cpp:1331
+#: Src/wptKeyManagerDlg.cpp:1328
 msgid "Search for a specific key"
 msgstr "Suche nach einem bestimmten Schlüssel"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:842
-#: Src/wptKeyManagerDlg.cpp:1335
+#: Src/wptKeyManagerDlg.cpp:1332
 msgid "Delete key from keyring"
 msgstr "Schlüssel aus Keyring löschen"
 
-#: Src/wptKeyManagerDlg.cpp:1339
+#: Src/wptKeyManagerDlg.cpp:1336
 msgid "Show key properties"
 msgstr "Schlüsseleigenschaften anzeigen"
 
-#: Src/wptKeyManagerDlg.cpp:1343
+#: Src/wptKeyManagerDlg.cpp:1340
 msgid "Sign key"
 msgstr "Signiere Schlüssel"
 
-#: Src/wptKeyManagerDlg.cpp:1347
+#: Src/wptKeyManagerDlg.cpp:1344
 msgid "Copy key to clipboard"
 msgstr "Kopiere Schlüssel in Ablage"
 
-#: Src/wptKeyManagerDlg.cpp:1351
+#: Src/wptKeyManagerDlg.cpp:1348
 msgid "Paste key from clipboard"
 msgstr "Schlüssel aus Ablage einfügen"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:854
-#: Src/wptKeyManagerDlg.cpp:1355
+#: Src/wptKeyManagerDlg.cpp:1352
 msgid "Import key to keyring"
 msgstr "In Schlüsselbund importieren"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:858
-#: Src/wptKeyManagerDlg.cpp:1359
+#: Src/wptKeyManagerDlg.cpp:1356
 msgid "Export key to a file"
 msgstr "Schlüssel in Datei exportieren"
 
 # c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:499
-#: Src/wptKeyManagerDlg.cpp:1486
+#: Src/wptKeyManagerDlg.cpp:1485
 msgid "New"
 msgstr "Neu"
 
-#: Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1497
 msgid "Could not access public keyring"
 msgstr "Konnte nicht auf öffentlichen Schlüsselbund zugreifen"
 
-#: Src/wptKeyManagerDlg.cpp:1529 Src/wptKeysignDlg.cpp:259
+#: Src/wptKeyManagerDlg.cpp:1528 Src/wptKeysignDlg.cpp:259
 #: Src/wptKeysignDlg.cpp:274 Src/wptKeysignDlg.cpp:354
 #: Src/wptKeysignDlg.cpp:369 Src/wptKeysignDlg.cpp:386
 #: Src/wptKeysignDlg.cpp:391 Src/wptKeysignDlg.cpp:393
 msgid "Key Signing"
 msgstr "Schlüsselsignierung"
 
-#: Src/wptKeyManagerDlg.cpp:1545
+#: Src/wptKeyManagerDlg.cpp:1544
 msgid "Key already revoked!"
 msgstr "Schlüssel ist bereits widerrufen!"
 
-#: Src/wptKeyManagerDlg.cpp:1559 Src/wptKeyRevokeDlg.cpp:70
+#: Src/wptKeyManagerDlg.cpp:1558 Src/wptKeyRevokeDlg.cpp:70
 #: Src/wptKeyRevokeDlg.cpp:80 Src/wptKeyRevokeDlg.cpp:169
 #: Src/wptKeyRevokeDlg.cpp:174 Src/wptKeyRevokeDlg.cpp:182
 #: Src/wptKeyRevokeDlg.cpp:191 Src/wptKeyRevokeDlg.cpp:196
 msgid "Key Revocation Cert"
 msgstr "Schlüsselwiderruf Zertifikat"
 
-#: Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1568
 msgid "It does not make any sense with a key pair!"
 msgstr "Diese Aktion macht keinen Sinn mit einem Schlüsselpaar!"
 
-#: Src/wptKeyManagerDlg.cpp:1586
+#: Src/wptKeyManagerDlg.cpp:1585
 msgid "Key Signature List"
 msgstr "Schlüssel-Signatur-Liste"
 
-#: Src/wptKeyManagerDlg.cpp:1603 Src/wptKeyPropsDlg.cpp:289
+#: Src/wptKeyManagerDlg.cpp:1602 Src/wptKeyPropsDlg.cpp:289
 msgid "Key Properties"
 msgstr "Schlüsseleigenschaften"
 
-#: Src/wptKeyManagerDlg.cpp:1613
+#: Src/wptKeyManagerDlg.cpp:1612
 msgid ""
 "This is only useful when the keyring has been modified (sign a key...).\n"
 "Do you really want to reload the keycache?"
@@ -3405,27 +3405,27 @@
 "Signierung etc.)\n"
 "Möchten Sie den Zwischenspeicher reinitialisieren?"
 
-#: Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1642
 msgid "Smart Card support is not available."
 msgstr "SmartCard-Unterstützung ist nicht verfügbar."
 
-#: Src/wptKeyManagerDlg.cpp:1666 Src/wptKeyserverDlg.cpp:568
+#: Src/wptKeyManagerDlg.cpp:1665 Src/wptKeyserverDlg.cpp:568
 msgid "Keyserver Access"
 msgstr "Schlüsselserver-Zugriff"
 
-#: Src/wptKeyManagerDlg.cpp:1683
+#: Src/wptKeyManagerDlg.cpp:1682
 msgid "GnuPG Options"
 msgstr "GnuPG Optionen"
 
-#: Src/wptKeyManagerDlg.cpp:1725
+#: Src/wptKeyManagerDlg.cpp:1724
 msgid "There is no corresponding secret key for this key."
 msgstr "Für diesen Schlüssel ist kein geheimer Schlüssel vorhanden."
 
-#: Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1729
 msgid "You can only export one secret key."
 msgstr "Sie können nur einen geheimen Schlüssel exportieren."
 
-#: Src/wptKeyManagerDlg.cpp:1735
+#: Src/wptKeyManagerDlg.cpp:1734
 msgid ""
 "This operation will export your *SECRET* key!\n"
 "\n"
@@ -3443,15 +3443,15 @@
 "\n"
 "Wirklich den Schlüssel exportieren?"
 
-#: Src/wptKeyManagerDlg.cpp:1740
+#: Src/wptKeyManagerDlg.cpp:1739
 msgid "WARNING"
 msgstr "WARNUNG"
 
-#: Src/wptKeyManagerDlg.cpp:1801
+#: Src/wptKeyManagerDlg.cpp:1800
 msgid "No key was selected, select all by default."
 msgstr "Kein Schlüssel ausgewählt, es wurden alle ausgewählt."
 
-#: Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1805
 msgid "Keyserver refresh finished."
 msgstr "Erneuerung von Keyserver abgeschlossen."
 
@@ -3582,7 +3582,8 @@
 msgid "Revocation certificate generated."
 msgstr "Widerrufzertifikat wurde erstellt."
 
-#: Src/wptKeyRevokersDlg.cpp:59 Src/wptSigList.cpp:59
+#: Src/wptKeyRevokersDlg.cpp:59 Src/wptKeyserverSearchDlg.cpp:51
+#: Src/wptSigList.cpp:59
 msgid "Algorithm"
 msgstr "Algorithmus"
 
@@ -3599,39 +3600,39 @@
 msgid "Do you want to retrieve %s via the default keyserver?"
 msgstr "Wollen Sie '0x%s' wirklich vom Standard-Schlüsselserver empfangen?"
 
-#: Src/wptKeyserver.cpp:363
+#: Src/wptKeyserver.cpp:377
 msgid "Network unreachable"
 msgstr "Netzwerk unerreichbar"
 
-#: Src/wptKeyserver.cpp:366
+#: Src/wptKeyserver.cpp:380
 msgid "Host unreachable"
 msgstr "Rechner unerreichbar"
 
-#: Src/wptKeyserver.cpp:369
+#: Src/wptKeyserver.cpp:383
 msgid "Could not resolve host name"
 msgstr "Konnte Rechnernamen nicht auflösen"
 
-#: Src/wptKeyserver.cpp:372
+#: Src/wptKeyserver.cpp:386
 msgid "Connection refused"
 msgstr "Verbindung abgelehnt"
 
-#: Src/wptKeyserver.cpp:376
+#: Src/wptKeyserver.cpp:390
 msgid "Connection timeout"
 msgstr "Verbindung Time-Out"
 
-#: Src/wptKeyserver.cpp:380
+#: Src/wptKeyserver.cpp:394
 msgid "Connection resetted by peer"
 msgstr "Verbindung wurde zurückgesetzt"
 
-#: Src/wptKeyserver.cpp:383
+#: Src/wptKeyserver.cpp:397
 msgid "Socket has been shutdown"
 msgstr "Socket wurde runtergefahren"
 
-#: Src/wptKeyserver.cpp:572
+#: Src/wptKeyserver.cpp:584
 msgid "Could not save keyserver.conf file"
 msgstr "Konnte keyserver.conf Datei nicht speichern"
 
-#: Src/wptKeyserver.cpp:617
+#: Src/wptKeyserver.cpp:629
 msgid ""
 "Invalid proxy configuration.You need to set a user and a passwordto use "
 "proxy authentication!"
@@ -3639,11 +3640,11 @@
 "Ungültige Proxy-Konfiguration. Sie müssen einen Benutzernamen und ein "
 "Passwort setzen, um Proxy-Authentifizierung nutzen zu können!"
 
-#: Src/wptKeyserver.cpp:620
+#: Src/wptKeyserver.cpp:632
 msgid "Proxy Error"
 msgstr "Proxyfehler"
 
-#: Src/wptKeyserver.cpp:644
+#: Src/wptKeyserver.cpp:656
 msgid ""
 "All entries of this file must have a valid prefix.\n"
 "Currently HKP/HTTP, LDAP and FINGER are supported.\n"
@@ -3651,16 +3652,16 @@
 "Alle Eintraäge in dieser Datei müssen über einen gültigen Präfix verfügen.\n"
 "Aktuell werden HKP/HTTP, LDAP and FINGER unterstützt.\n"
 
-#: Src/wptKeyserver.cpp:646
+#: Src/wptKeyserver.cpp:658
 msgid "Keyserver Error"
 msgstr "Schlüsselserver-Fehler"
 
 # c:\oss\winpt-gpgme\src\wptKeyserver.cpp:548
-#: Src/wptKeyserver.cpp:670
+#: Src/wptKeyserver.cpp:680
 msgid "The keyserver limit is exceeded"
 msgstr "Das Limit der Keyserver wurde erreicht"
 
-#: Src/wptKeyserver.cpp:671
+#: Src/wptKeyserver.cpp:681
 msgid "Keyserver Warning"
 msgstr "Keyserver Warnung"
 
@@ -3770,7 +3771,7 @@
 msgid "Invalid port, valid numbers are < 65535"
 msgstr "Ungültiger Port, gültige Nummern sind < 65535"
 
-#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:60
+#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:61
 msgid "&Receive"
 msgstr "&Empfangen"
 
@@ -3834,16 +3835,16 @@
 msgid "Only email addresses or keyids are allowed."
 msgstr "Es sind nur E-Mail-Adressen oder Schlüssel-IDs zulässig"
 
-#: Src/wptKeyserverSearchDlg.cpp:63
+#: Src/wptKeyserverSearchDlg.cpp:64
 #, c-format
 msgid "Connect to '%s' to search for \"%s\""
 msgstr "Verbinde mit '%s', um nach \"%s\" zu suchen"
 
-#: Src/wptKeyserverSearchDlg.cpp:66
+#: Src/wptKeyserverSearchDlg.cpp:67
 msgid "Keyserver Searching"
 msgstr "Schlüsselserver-Suche"
 
-#: Src/wptKeyserverSearchDlg.cpp:87 Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyserverSearchDlg.cpp:90 Src/wptKeyserverSearchDlg.cpp:127
 msgid "Keyserver Search"
 msgstr "Schlüsselserver-Suche"
 
@@ -4035,7 +4036,7 @@
 msgstr "&Photo anzeigen"
 
 # c:\oss\winpt-gpgme\src\wptKeygenDlg.cpp:391
-#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:94
+#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:96
 #: Src/wptPassphraseCB.cpp:102 Src/wptPassphraseDlg.cpp:68
 #: Src/wptPINDlg.cpp:54
 msgid "&Hide Typing"
@@ -4082,42 +4083,42 @@
 msgid "Unknown OpenPGP type."
 msgstr "Unbekannter OpenPGP-Typ."
 
-#: Src/wptMainProc.cpp:360
+#: Src/wptMainProc.cpp:350
 msgid "Could not set current window mode hooks."
 msgstr "Konnte \"Current Window\" Hooks nicht setzen."
 
-#: Src/wptMainProc.cpp:417
+#: Src/wptMainProc.cpp:407
 msgid "Edit Clipboard"
 msgstr "Zwischenablage bearbeiten"
 
-#: Src/wptMainProc.cpp:418
+#: Src/wptMainProc.cpp:408
 msgid "About..."
 msgstr "Über..."
 
-#: Src/wptMainProc.cpp:424 Src/wptMainProc.cpp:428
+#: Src/wptMainProc.cpp:414 Src/wptMainProc.cpp:418
 msgid "Decrypt/Verify"
 msgstr "Entschlüsseln/Überprüfen"
 
 # c:\oss\winpt-gpgme\src\wptMainProc.cpp:414
-#: Src/wptMainProc.cpp:438
+#: Src/wptMainProc.cpp:428
 msgid "Current Window"
 msgstr "Aktuelles Fenster"
 
-#: Src/wptMainProc.cpp:494
+#: Src/wptMainProc.cpp:484
 msgid "Remove all passphrases from cache?"
 msgstr "Alle Passwörter aus Zwischenspeicher entfernen?"
 
-#: Src/wptMainProc.cpp:495 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
+#: Src/wptMainProc.cpp:485 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
 msgid "WinPT"
 msgstr "WinPT"
 
-#: Src/wptMainProc.cpp:505
+#: Src/wptMainProc.cpp:495
 msgid "Could not access public keyring, exit WinPT?"
 msgstr ""
 "Auf den öffentlichen Schlüsselbund kann nicht zugegriffen werden.\n"
 "WinPT beenden?"
 
-#: Src/wptMainProc.cpp:538
+#: Src/wptMainProc.cpp:528
 #, c-format
 msgid ""
 "Make sure that the window contains text.\n"
@@ -4126,7 +4127,7 @@
 "Stellen Sie sicher, dass das Fenster Text enthält.\n"
 "%s."
 
-#: Src/wptMainProc.cpp:592 Src/wptPreferencesDlg.cpp:136
+#: Src/wptMainProc.cpp:582 Src/wptPreferencesDlg.cpp:136
 msgid "WinPT Preferences"
 msgstr "WinPT Einstellungen"
 

Modified: trunk/Po/fr.po
===================================================================
--- trunk/Po/fr.po	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Po/fr.po	2006-05-14 18:40:36 UTC (rev 214)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: WinPT 0.11.8\n"
 "Report-Msgid-Bugs-To: winpt at freakmail.de\n"
-"POT-Creation-Date: 2006-05-09 18:57+0200\n"
+"POT-Creation-Date: 2006-05-14 11:31+0200\n"
 "PO-Revision-Date: 2006-03-04 21:32+0100\n"
 "Last-Translator: Pascal Brochart <pbrochart at tuxfamily.org>\n"
 "Language-Team: FR <winpt-dev at wald.intevation.org>\n"
@@ -23,9 +23,9 @@
 #: Src/WinPT.cpp:471 Src/WinPT.cpp:478 Src/WinPT.cpp:519 Src/WinPT.cpp:547
 #: Src/WinPT.cpp:556 Src/WinPT.cpp:560 Src/WinPT.cpp:577 Src/WinPT.cpp:645
 #: Src/WinPT.cpp:658 Src/WinPT.cpp:705 Src/WinPT.cpp:735 Src/WinPT.cpp:753
-#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:903
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:925 Src/wptGPG.cpp:936
-#: Src/wptMainProc.cpp:361 Src/wptMainProc.cpp:537
+#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:943 Src/wptGPG.cpp:954
+#: Src/wptMainProc.cpp:351 Src/wptMainProc.cpp:527
 msgid "WinPT Error"
 msgstr "Erreur WinPT"
 
@@ -49,7 +49,7 @@
 msgstr "Impossible de créer le répertoire de WinPT"
 
 #: Src/WinPT.cpp:305 Src/WinPT.cpp:322 Src/WinPT.cpp:333
-#: Src/wptKeyManagerDlg.cpp:961 Src/wptKeyserver.cpp:573
+#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyserver.cpp:585
 #: Src/wptKeyserverDlg.cpp:68 Src/wptKeyserverDlg.cpp:70
 #: Src/wptKeyserverDlg.cpp:187 Src/wptKeyserverDlg.cpp:195
 #: Src/wptKeyserverDlg.cpp:211 Src/wptKeyserverDlg.cpp:352
@@ -104,8 +104,8 @@
 "Continue if you want that WinPT offers you more choices.\n"
 msgstr ""
 
-#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:493
-#: Src/wptFileManagerDlg.cpp:818
+#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:512
+#: Src/wptFileManagerDlg.cpp:819
 msgid "Wipe Free Space"
 msgstr ""
 
@@ -150,8 +150,8 @@
 msgid "The AUTHORS files contains a list of all contributors and co-authors."
 msgstr ""
 
-#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1752
-#: Src/wptMainProc.cpp:586
+#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1751
+#: Src/wptMainProc.cpp:576
 msgid "About WinPT"
 msgstr "A propos de WinPT"
 
@@ -191,11 +191,11 @@
 msgstr ""
 
 #: Src/wptAboutDlgs.cpp:115 Src/wptKeyEditDlgs.cpp:2143
-#: Src/wptKeyManagerDlg.cpp:967
+#: Src/wptKeyManagerDlg.cpp:964
 msgid "&Help"
 msgstr "&Aide"
 
-#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:414
+#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:404
 msgid "Card Manager"
 msgstr "Gestionnaire de carte"
 
@@ -219,7 +219,7 @@
 #: Src/wptCardDlg.cpp:696 Src/wptCardDlg.cpp:699 Src/wptCardDlg.cpp:724
 #: Src/wptCardDlg.cpp:726 Src/wptCardDlg.cpp:731 Src/wptCardDlg.cpp:736
 #: Src/wptCardDlg.cpp:800 Src/wptCardDlg.cpp:815 Src/wptCardDlg.cpp:818
-#: Src/wptMainProc.cpp:301
+#: Src/wptMainProc.cpp:291
 msgid "Card Edit"
 msgstr ""
 
@@ -302,7 +302,7 @@
 msgid "Make off-card backup of encryption key"
 msgstr ""
 
-#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1648
+#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1647
 msgid "Card Key Generation"
 msgstr ""
 
@@ -386,21 +386,32 @@
 "Press OK to continue or Cancel"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:187
+#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:190
 #: Src/wptFileManager.cpp:1228 Src/wptKeyRevokersDlg.cpp:128
 #: Src/wptKeyRevokersDlg.cpp:175 Src/wptVerifyList.cpp:176
 #: Src/wptVerifyList.cpp:232
 msgid "user ID not found"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:116 Src/wptClipDecryptDlg.cpp:129
-#: Src/wptClipDecryptDlg.cpp:137 Src/wptClipDecryptDlg.cpp:144
-#: Src/wptClipDecryptDlg.cpp:146 Src/wptFileManager.cpp:1302
-#: Src/wptFileManager.cpp:1349
+#: Src/wptClipDecryptDlg.cpp:112 Src/wptClipVerifyDlg.cpp:176
+#: Src/wptClipVerifyDlg.cpp:189 Src/wptClipVerifyDlg.cpp:202
+#: Src/wptClipVerifyDlg.cpp:209 Src/wptClipVerifyDlg.cpp:241
+#: Src/wptClipVerifyDlg.cpp:252 Src/wptFileManager.cpp:1596
+#: Src/wptFileManager.cpp:1649 Src/wptFileManagerDlg.cpp:576
+#: Src/wptFileVerifyDlg.cpp:81 Src/wptFileVerifyDlg.cpp:149
+#: Src/wptMainProc.cpp:182 Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260
+#: Src/wptMainProc.cpp:268 Src/wptMainProc.cpp:415
+msgid "Verify"
+msgstr "Vérifier"
+
+#: Src/wptClipDecryptDlg.cpp:119 Src/wptClipDecryptDlg.cpp:132
+#: Src/wptClipDecryptDlg.cpp:140 Src/wptClipDecryptDlg.cpp:147
+#: Src/wptClipDecryptDlg.cpp:149 Src/wptFileManager.cpp:1303
+#: Src/wptFileManager.cpp:1354
 msgid "Decryption"
 msgstr "Déchiffrement"
 
-#: Src/wptClipDecryptDlg.cpp:130 Src/wptFileManager.cpp:1350
+#: Src/wptClipDecryptDlg.cpp:133 Src/wptFileManager.cpp:1355
 #, c-format
 msgid ""
 "Encrypted with %s key, ID %s.%s\n"
@@ -409,16 +420,16 @@
 "Chiffré avec la clé %s, ID %s.%s\n"
 "Le déchiffrement a échoué: La clé secrète n'est pas disponible."
 
-#: Src/wptClipDecryptDlg.cpp:137
+#: Src/wptClipDecryptDlg.cpp:140
 #, c-format
 msgid "Unsupported algorithm: %s"
 msgstr "L'algorithme n'est pas supporté: %s"
 
-#: Src/wptClipDecryptDlg.cpp:143
+#: Src/wptClipDecryptDlg.cpp:146
 msgid "Broken OpenPGP message (maybe: quoted printable character in armor)."
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:151
+#: Src/wptClipDecryptDlg.cpp:154
 msgid ""
 "WARNING: encrypted message has been manipulated!\n"
 "\n"
@@ -427,38 +438,38 @@
 "but it might be also possible that this is part of an attack."
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:156
+#: Src/wptClipDecryptDlg.cpp:159
 msgid "*** IMPORTANT ***"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:159 Src/wptClipEncryptDlg.cpp:213
+#: Src/wptClipDecryptDlg.cpp:162 Src/wptClipEncryptDlg.cpp:213
 #: Src/wptClipSignDlg.cpp:121 Src/wptClipSignDlg.cpp:265
 #: Src/wptClipSignEncDlg.cpp:197 Src/wptKeyManager.cpp:286
-#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:951 Src/wptSymEnc.cpp:91
+#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:955 Src/wptSymEnc.cpp:91
 msgid "GnuPG Status: Finished"
 msgstr "Etat de GnuPG: Terminé"
 
-#: Src/wptClipDecryptDlg.cpp:174
+#: Src/wptClipDecryptDlg.cpp:177
 msgid "Signature Status: Created with a fully trusted key"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:176
+#: Src/wptClipDecryptDlg.cpp:179
 msgid "Signature Status: Created with a marginal trusted key"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:179
+#: Src/wptClipDecryptDlg.cpp:182
 msgid "Signature Status: Created with an UNTRUSTED key"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:182
+#: Src/wptClipDecryptDlg.cpp:185
 msgid "Signature Status: Created with an undefined trusted key"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:189
+#: Src/wptClipDecryptDlg.cpp:192
 msgid "WinPT Verify"
 msgstr ""
 
-#: Src/wptClipDecryptDlg.cpp:190
+#: Src/wptClipDecryptDlg.cpp:193
 #, c-format
 msgid ""
 "%s\n"
@@ -472,7 +483,7 @@
 #: Src/wptClipEditDlg.cpp:167 Src/wptClipEditDlg.cpp:242
 #: Src/wptClipEditDlg.cpp:247 Src/wptFileManagerDlg.cpp:211
 #: Src/wptMainProc.cpp:162 Src/wptMainProc.cpp:230 Src/wptMainProc.cpp:273
-#: Src/wptMainProc.cpp:437 Src/wptMainProc.cpp:518 Src/wptMainProc.cpp:523
+#: Src/wptMainProc.cpp:427 Src/wptMainProc.cpp:508 Src/wptMainProc.cpp:513
 msgid "Clipboard"
 msgstr "Presse papiers"
 
@@ -498,7 +509,7 @@
 msgstr ""
 
 #: Src/wptClipEditDlg.cpp:194 Src/wptMainProc.cpp:172 Src/wptMainProc.cpp:238
-#: Src/wptMainProc.cpp:580
+#: Src/wptMainProc.cpp:570
 msgid "Clipboard Editor"
 msgstr "Editeur de presse papiers"
 
@@ -554,7 +565,7 @@
 #: Src/wptKeyEditDlgs.cpp:516 Src/wptKeyEditDlgs.cpp:651
 #: Src/wptKeyEditOwnertrustDlg.cpp:67 Src/wptKeygenDlg.cpp:380
 #: Src/wptKeygenDlg.cpp:538 Src/wptKeyRevokeDlg.cpp:81
-#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:61
+#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:62
 #: Src/wptKeysignDlg.cpp:285 Src/wptPassphraseCB.cpp:93
 #: Src/wptPassphraseDlg.cpp:69 Src/wptPINDlg.cpp:55
 #: Src/wptPreferencesDlg.cpp:132 Src/wptTextInputDlg.cpp:84
@@ -585,7 +596,7 @@
 #: Src/wptClipSignDlg.cpp:230 Src/wptClipSignDlg.cpp:249
 #: Src/wptClipSignDlg.cpp:260 Src/wptClipSignEncDlg.cpp:166
 #: Src/wptClipSignEncDlg.cpp:176 Src/wptFileManager.cpp:1080
-#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1406
+#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1418
 #: Src/wptMainProc.cpp:156 Src/wptMainProc.cpp:218
 msgid "Signing"
 msgstr "Signer"
@@ -618,7 +629,7 @@
 msgid "Signing key:"
 msgstr ""
 
-#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1203
+#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1202
 msgid "No key was selected."
 msgstr "Aucune clé n'a été sélectionnée"
 
@@ -631,17 +642,6 @@
 msgid "PKA: Verified signer's address is '%s'"
 msgstr ""
 
-#: Src/wptClipVerifyDlg.cpp:176 Src/wptClipVerifyDlg.cpp:189
-#: Src/wptClipVerifyDlg.cpp:202 Src/wptClipVerifyDlg.cpp:209
-#: Src/wptClipVerifyDlg.cpp:241 Src/wptClipVerifyDlg.cpp:252
-#: Src/wptFileManager.cpp:1584 Src/wptFileManager.cpp:1637
-#: Src/wptFileManagerDlg.cpp:557 Src/wptFileVerifyDlg.cpp:81
-#: Src/wptFileVerifyDlg.cpp:149 Src/wptMainProc.cpp:182
-#: Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260 Src/wptMainProc.cpp:268
-#: Src/wptMainProc.cpp:425
-msgid "Verify"
-msgstr "Vérifier"
-
 #: Src/wptClipVerifyDlg.cpp:203
 #, c-format
 msgid ""
@@ -711,7 +711,7 @@
 #: Src/wptKeyEditDlgs.cpp:2079 Src/wptKeyEditDlgs.cpp:2120
 #: Src/wptKeyEditDlgs.cpp:2133 Src/wptKeyEditDlgs.cpp:2147
 #: Src/wptKeyEditDlgs.cpp:2176 Src/wptKeyEditDlgs.cpp:2181
-#: Src/wptKeyManagerDlg.cpp:995 Src/wptKeyManagerDlg.cpp:1776
+#: Src/wptKeyManagerDlg.cpp:992 Src/wptKeyManagerDlg.cpp:1775
 msgid "Key Edit"
 msgstr ""
 
@@ -922,11 +922,11 @@
 #: Src/wptFileManager.cpp:134 Src/wptFileManager.cpp:173
 #: Src/wptFileManager.cpp:298 Src/wptFileManager.cpp:662
 #: Src/wptFileManager.cpp:807 Src/wptFileManager.cpp:922
-#: Src/wptFileManager.cpp:1491 Src/wptFileManager.cpp:1518
-#: Src/wptFileManager.cpp:1537 Src/wptFileManager.cpp:1788
-#: Src/wptFileManager.cpp:1850 Src/wptFileManagerDlg.cpp:503
-#: Src/wptFileManagerDlg.cpp:622 Src/wptFileStatDlg.cpp:152
-#: Src/wptMainProc.cpp:412 Src/wptMDSumDlg.cpp:181
+#: Src/wptFileManager.cpp:1503 Src/wptFileManager.cpp:1530
+#: Src/wptFileManager.cpp:1549 Src/wptFileManager.cpp:1800
+#: Src/wptFileManager.cpp:1862 Src/wptFileManagerDlg.cpp:522
+#: Src/wptFileManagerDlg.cpp:623 Src/wptFileStatDlg.cpp:152
+#: Src/wptMainProc.cpp:402 Src/wptMDSumDlg.cpp:181
 msgid "File Manager"
 msgstr "Gestionnaire de fichier"
 
@@ -993,19 +993,19 @@
 msgid "Could not get default secret key."
 msgstr "Ne peut obtenir la clé secrète par défaut."
 
-#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1442
-#: Src/wptFileManagerDlg.cpp:555 Src/wptMainProc.cpp:200
-#: Src/wptMainProc.cpp:422 Src/wptMainProc.cpp:429
+#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1454
+#: Src/wptFileManagerDlg.cpp:574 Src/wptMainProc.cpp:200
+#: Src/wptMainProc.cpp:412 Src/wptMainProc.cpp:419
 msgid "Sign"
 msgstr "Signer"
 
-#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:553
-#: Src/wptMainProc.cpp:421 Src/wptMainProc.cpp:426
+#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:572
+#: Src/wptMainProc.cpp:411 Src/wptMainProc.cpp:416
 msgid "Encrypt"
 msgstr "Chiffrer"
 
 #: Src/wptFileManager.cpp:1150 Src/wptFileManager.cpp:1183
-#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:420
+#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:410
 msgid "Symmetric"
 msgstr "Symétrique"
 
@@ -1033,27 +1033,27 @@
 msgid "Decrypt Verify"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1311
+#: Src/wptFileManager.cpp:1312
 msgid "Choose Filename for Output"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1320
+#: Src/wptFileManager.cpp:1321
 msgid "Please enter filename for plaintext file"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1358 Src/wptFileManager.cpp:1370
-#: Src/wptFileManagerDlg.cpp:554
+#: Src/wptFileManager.cpp:1363 Src/wptFileManager.cpp:1382
+#: Src/wptFileManagerDlg.cpp:573
 msgid "Decrypt"
 msgstr "Déchiffrer"
 
-#: Src/wptFileManager.cpp:1364
+#: Src/wptFileManager.cpp:1369
 #, c-format
 msgid ""
 "Decryption failed.\n"
 "%s: does not exist."
 msgstr ""
 
-#: Src/wptFileManager.cpp:1371
+#: Src/wptFileManager.cpp:1383
 #, c-format
 msgid ""
 "The original file name is '%s'.\n"
@@ -1061,31 +1061,31 @@
 "Do you want to use this instead of '%s'?"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1419
+#: Src/wptFileManager.cpp:1431
 msgid "Enter filename for signed file"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1517
+#: Src/wptFileManager.cpp:1529
 msgid "Could not find detached signature in the clipboard."
 msgstr ""
 
-#: Src/wptFileManager.cpp:1537
+#: Src/wptFileManager.cpp:1549
 msgid "No files to check."
 msgstr "Aucun fichiers à vérifier."
 
-#: Src/wptFileManager.cpp:1554
+#: Src/wptFileManager.cpp:1566
 msgid "Select Data File"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1556
+#: Src/wptFileManager.cpp:1568
 msgid "Selected Output File"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1584
+#: Src/wptFileManager.cpp:1596
 msgid "Invalid file name. Exit"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1682 Src/wptFileManager.cpp:1693
+#: Src/wptFileManager.cpp:1694 Src/wptFileManager.cpp:1705
 #: Src/wptFileManagerDlg.cpp:243 Src/wptImportList.cpp:404
 #: Src/wptImportList.cpp:410 Src/wptImportList.cpp:420
 #: Src/wptImportList.cpp:428 Src/wptImportList.cpp:437
@@ -1094,7 +1094,7 @@
 msgid "Import"
 msgstr "Importer"
 
-#: Src/wptFileManager.cpp:1690
+#: Src/wptFileManager.cpp:1702
 msgid ""
 "Key without a self signature was dectected!\n"
 "(This key is NOT usable for encryption, etc)\n"
@@ -1102,58 +1102,58 @@
 "Cannot import these key(s)!"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1716 Src/wptKeyManager.cpp:264
+#: Src/wptFileManager.cpp:1728 Src/wptKeyManager.cpp:264
 #: Src/wptKeyManager.cpp:307 Src/wptKeyManager.cpp:342
 msgid "No key was selected for export."
 msgstr ""
 
-#: Src/wptFileManager.cpp:1716 Src/wptFileManager.cpp:1739
+#: Src/wptFileManager.cpp:1728 Src/wptFileManager.cpp:1751
 #: Src/wptKeyserverDlg.cpp:90
 msgid "Export"
 msgstr "Exporter"
 
-#: Src/wptFileManager.cpp:1724 Src/wptKeyManagerDlg.cpp:1712
-#: Src/wptKeyManagerDlg.cpp:1744
+#: Src/wptFileManager.cpp:1736 Src/wptKeyManagerDlg.cpp:1711
+#: Src/wptKeyManagerDlg.cpp:1743
 msgid "Choose Name for Key File"
 msgstr "Choisissez un nom de fichier pour la clé"
 
-#: Src/wptFileManager.cpp:1743 Src/wptKeyEditDlgs.cpp:1060
+#: Src/wptFileManager.cpp:1755 Src/wptKeyEditDlgs.cpp:1060
 #: Src/wptKeyEditDlgs.cpp:1333 Src/wptKeyEditDlgs.cpp:1406
 #: Src/wptKeyserverDlg.cpp:102
 msgid "GnuPG status"
 msgstr "Status de GnuPG"
 
-#: Src/wptFileManager.cpp:1743
+#: Src/wptFileManager.cpp:1755
 #, c-format
 msgid "Finished (Output: %s)"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1789
+#: Src/wptFileManager.cpp:1801
 #, c-format
 msgid "%s: no valid OpenPGP data found."
 msgstr ""
 
-#: Src/wptFileManager.cpp:1849
+#: Src/wptFileManager.cpp:1861
 msgid "Encrypting into a ZIP archive makes sense with multiple files"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1854
+#: Src/wptFileManager.cpp:1866
 msgid "Choose File Name for Output"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1924
+#: Src/wptFileManager.cpp:1936
 msgid "Choose a Name for the Archive"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1927
+#: Src/wptFileManager.cpp:1939
 msgid "Invalid archive name. Exit."
 msgstr ""
 
-#: Src/wptFileManager.cpp:1927 Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1939 Src/wptFileManager.cpp:1946
 msgid "Encrypt Directory"
 msgstr ""
 
-#: Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1946
 msgid "Could not create zip archive."
 msgstr ""
 
@@ -1178,7 +1178,7 @@
 msgstr ""
 
 #: Src/wptFileManagerDlg.cpp:82 Src/wptFileManagerDlg.cpp:285
-#: Src/wptKeyManagerDlg.cpp:959
+#: Src/wptKeyManagerDlg.cpp:956
 msgid "Options"
 msgstr ""
 
@@ -1201,8 +1201,8 @@
 msgid "%s contain(s) %d key(s)."
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:472
-#: Src/wptKeyManagerDlg.cpp:932 Src/wptOwnertrustDlg.cpp:98
+#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:491
+#: Src/wptKeyManagerDlg.cpp:929 Src/wptOwnertrustDlg.cpp:98
 msgid "File"
 msgstr "Fichier"
 
@@ -1237,11 +1237,11 @@
 #: Src/wptFileManagerDlg.cpp:331 Src/wptKeyEditDlgs.cpp:1305
 #: Src/wptKeyEditDlgs.cpp:1356 Src/wptKeyEditDlgs.cpp:1432
 #: Src/wptKeyManager.cpp:683 Src/wptKeyManager.cpp:784
-#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1520
-#: Src/wptKeyManagerDlg.cpp:1536 Src/wptKeyManagerDlg.cpp:1564
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1519
+#: Src/wptKeyManagerDlg.cpp:1535 Src/wptKeyManagerDlg.cpp:1563
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1701 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyserverSearchDlg.cpp:127
 msgid "Please select a key."
 msgstr "Sélectionner une clé."
 
@@ -1254,134 +1254,134 @@
 msgid "%d Object(s) marked"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:470 Src/wptMainProc.cpp:550
+#: Src/wptFileManagerDlg.cpp:489 Src/wptMainProc.cpp:540
 msgid "File Manager (use drag & drop to add files)"
 msgstr "Gestionnaire de fichier (utilisez le drag & drop)"
 
-#: Src/wptFileManagerDlg.cpp:473 Src/wptKeyManagerDlg.cpp:933
-#: Src/wptKeyManagerDlg.cpp:938 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptFileManagerDlg.cpp:492 Src/wptKeyManagerDlg.cpp:930
+#: Src/wptKeyManagerDlg.cpp:935 Src/wptKeyManagerDlg.cpp:946
 msgid "Edit"
 msgstr "Editer"
 
-#: Src/wptFileManagerDlg.cpp:474 Src/wptKeyManagerDlg.cpp:934
+#: Src/wptFileManagerDlg.cpp:493 Src/wptKeyManagerDlg.cpp:931
 msgid "View"
 msgstr "Voir"
 
-#: Src/wptFileManagerDlg.cpp:475
+#: Src/wptFileManagerDlg.cpp:494
 msgid "&Open..."
 msgstr "&Ouvrir"
 
-#: Src/wptFileManagerDlg.cpp:476
+#: Src/wptFileManagerDlg.cpp:495
 msgid "&Encrypt"
 msgstr "&Chiffrer"
 
-#: Src/wptFileManagerDlg.cpp:477 Src/wptFileManagerDlg.cpp:552
+#: Src/wptFileManagerDlg.cpp:496 Src/wptFileManagerDlg.cpp:571
 msgid "Encrypt into ZIP"
 msgstr "Chiffrer dans ZIP"
 
-#: Src/wptFileManagerDlg.cpp:478
+#: Src/wptFileManagerDlg.cpp:497
 msgid "&Decrypt"
 msgstr "&Déchiffrer"
 
-#: Src/wptFileManagerDlg.cpp:479 Src/wptKeyManagerDlg.cpp:950
-#: Src/wptKeyManagerDlg.cpp:998
+#: Src/wptFileManagerDlg.cpp:498 Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:995
 msgid "&Sign"
 msgstr "&Signer"
 
-#: Src/wptFileManagerDlg.cpp:480 Src/wptFileManagerDlg.cpp:556
-#: Src/wptMainProc.cpp:423 Src/wptMainProc.cpp:427
+#: Src/wptFileManagerDlg.cpp:499 Src/wptFileManagerDlg.cpp:575
+#: Src/wptMainProc.cpp:413 Src/wptMainProc.cpp:417
 msgid "Sign && Encrypt"
 msgstr "Signer && Chiffrer"
 
-#: Src/wptFileManagerDlg.cpp:481
+#: Src/wptFileManagerDlg.cpp:500
 msgid "&Verify"
 msgstr "&Vérifier"
 
-#: Src/wptFileManagerDlg.cpp:482
+#: Src/wptFileManagerDlg.cpp:501
 msgid "S&ymmetric"
 msgstr "S&ymétrique"
 
-#: Src/wptFileManagerDlg.cpp:483
+#: Src/wptFileManagerDlg.cpp:502
 msgid "&Import"
 msgstr "&Importer"
 
-#: Src/wptFileManagerDlg.cpp:484
+#: Src/wptFileManagerDlg.cpp:503
 msgid "E&xport"
 msgstr "Exporter"
 
-#: Src/wptFileManagerDlg.cpp:485 Src/wptMainProc.cpp:419
+#: Src/wptFileManagerDlg.cpp:504 Src/wptMainProc.cpp:409
 msgid "Exit"
 msgstr "Quitter"
 
-#: Src/wptFileManagerDlg.cpp:486
+#: Src/wptFileManagerDlg.cpp:505
 msgid "&Reset"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:487
+#: Src/wptFileManagerDlg.cpp:506
 msgid "Always on Top"
 msgstr "Toujours visible"
 
-#: Src/wptFileManagerDlg.cpp:488
+#: Src/wptFileManagerDlg.cpp:507
 msgid "&Paste"
 msgstr "&Coller"
 
-#: Src/wptFileManagerDlg.cpp:489
+#: Src/wptFileManagerDlg.cpp:508
 msgid "&Select All"
 msgstr "&Sélectionner tout"
 
-#: Src/wptFileManagerDlg.cpp:490
+#: Src/wptFileManagerDlg.cpp:509
 msgid "&Preferences"
 msgstr "&Préférences"
 
-#: Src/wptFileManagerDlg.cpp:491 Src/wptFileManagerDlg.cpp:559
+#: Src/wptFileManagerDlg.cpp:510 Src/wptFileManagerDlg.cpp:578
 msgid "Send as Mail"
 msgstr "Envoyer par Mail"
 
-#: Src/wptFileManagerDlg.cpp:492
+#: Src/wptFileManagerDlg.cpp:511
 msgid "&List Packets"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:494
+#: Src/wptFileManagerDlg.cpp:513
 msgid "&Wipe"
 msgstr "&Algorithme"
 
-#: Src/wptFileManagerDlg.cpp:558
+#: Src/wptFileManagerDlg.cpp:577
 msgid "Wipe"
 msgstr "Algorithme"
 
-#: Src/wptFileManagerDlg.cpp:560
+#: Src/wptFileManagerDlg.cpp:579
 msgid "List Packets"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:606
+#: Src/wptFileManagerDlg.cpp:607
 msgid "&Calc Digest"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:621
+#: Src/wptFileManagerDlg.cpp:622
 msgid "This command requires admin privileges.\n"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:770
+#: Src/wptFileManagerDlg.cpp:771
 msgid "Are you sure you want to secure delete these files?"
 msgstr ""
 
-#: Src/wptFileManagerDlg.cpp:771 Src/wptMainProc.cpp:100
+#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:100
 msgid "&Yes"
 msgstr "&Oui"
 
-#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:101
+#: Src/wptFileManagerDlg.cpp:773 Src/wptMainProc.cpp:101
 msgid "&No"
 msgstr "&Non"
 
-#: Src/wptFileManagerDlg.cpp:815
+#: Src/wptFileManagerDlg.cpp:816
 msgid "Operation Status: Error"
 msgstr "Statut de l'opération : Erreur"
 
-#: Src/wptFileManagerDlg.cpp:816
+#: Src/wptFileManagerDlg.cpp:817
 msgid "Operation Status: Done."
 msgstr "Statut de l'opération : Fait"
 
-#: Src/wptFileManagerDlg.cpp:859
+#: Src/wptFileManagerDlg.cpp:860
 #, c-format
 msgid ""
 "Total Capacity: %12sk\n"
@@ -1432,26 +1432,26 @@
 msgid "WinPT First Start"
 msgstr "Première exécution de WinPT"
 
-#: Src/wptGPG.cpp:821
+#: Src/wptGPG.cpp:839
 msgid ""
 "The selected keyring has the read-only file\n"
 "attribute. In this state you do not have write\n"
 "access. Do you want to remove the attribute?"
 msgstr ""
 
-#: Src/wptGPG.cpp:824
+#: Src/wptGPG.cpp:842
 msgid "GPG Information"
 msgstr ""
 
-#: Src/wptGPG.cpp:828
+#: Src/wptGPG.cpp:846
 msgid "Could not reset read-only state."
 msgstr ""
 
-#: Src/wptGPG.cpp:829 Src/wptGPG.cpp:1110 Src/wptGPG.cpp:1119
+#: Src/wptGPG.cpp:847 Src/wptGPG.cpp:1128 Src/wptGPG.cpp:1137
 msgid "GPG Error"
 msgstr "Erreur GPG"
 
-#: Src/wptGPG.cpp:841
+#: Src/wptGPG.cpp:859
 msgid ""
 "You do not have file access to modify the contents of\n"
 "one or both of the selected keyrings.\n"
@@ -1460,23 +1460,23 @@
 "caused by another program which already opened the files.\n"
 msgstr ""
 
-#: Src/wptGPG.cpp:846
+#: Src/wptGPG.cpp:864
 msgid "GPG Warning"
 msgstr ""
 
-#: Src/wptGPG.cpp:870 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
+#: Src/wptGPG.cpp:888 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
 #: Src/wptGPGPrefsDlg.cpp:228 Src/wptGPGPrefsDlg.cpp:234
 #: Src/wptGPGPrefsDlg.cpp:239 Src/wptGPGPrefsDlg.cpp:244
 #: Src/wptGPGPrefsDlg.cpp:250 Src/wptGPGPrefsDlg.cpp:264
-#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:960
-#: Src/wptMainProc.cpp:439 Src/wptPreferencesDlg.cpp:215
+#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:957
+#: Src/wptMainProc.cpp:429 Src/wptPreferencesDlg.cpp:215
 #: Src/wptPreferencesDlg.cpp:260 Src/wptPreferencesDlg.cpp:272
 #: Src/wptPreferencesDlg.cpp:284 Src/wptPreferencesDlg.cpp:315
 #: Src/wptRegistry.cpp:591
 msgid "Preferences"
 msgstr "Préférences"
 
-#: Src/wptGPG.cpp:871
+#: Src/wptGPG.cpp:889
 #, c-format
 msgid ""
 "%s does not exit.\n"
@@ -1485,54 +1485,54 @@
 "%s n'existe pas.\n"
 "Voulez-vous créer ce répertoire?"
 
-#: Src/wptGPG.cpp:899
+#: Src/wptGPG.cpp:917
 #, fuzzy
 msgid "Please choose your Public Keyring"
 msgstr "Veuillez choisir votre porte-clés public"
 
-#: Src/wptGPG.cpp:902 Src/wptGPG.cpp:924
+#: Src/wptGPG.cpp:920 Src/wptGPG.cpp:942
 msgid "No keyring was chosen. Exit."
 msgstr "Aucun porte-clés n'a été choisi. Sortie."
 
-#: Src/wptGPG.cpp:909
+#: Src/wptGPG.cpp:927
 msgid "Overwrite old public keyring?"
 msgstr ""
 
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:936
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:954
 msgid "Could not copy file."
 msgstr ""
 
-#: Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:939
 #, fuzzy
 msgid "Please choose your Secret Keyring"
 msgstr "Veuillez choisir votre porte-clés secret"
 
-#: Src/wptGPG.cpp:930
+#: Src/wptGPG.cpp:948
 msgid "Overwrite old secret keyring?"
 msgstr ""
 
-#: Src/wptGPG.cpp:980 Src/wptGPG.cpp:1069 Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:998 Src/wptGPG.cpp:1087 Src/wptGPG.cpp:1100
 msgid "Backup"
 msgstr ""
 
-#: Src/wptGPG.cpp:980
+#: Src/wptGPG.cpp:998
 #, c-format
 msgid "Backup keyring \"%s\" failed"
 msgstr ""
 
-#: Src/wptGPG.cpp:1070
+#: Src/wptGPG.cpp:1088
 #, c-format
 msgid ""
 "The backup drive '%s' does not seems to accessable.\n"
 "Please insert/check the drive to continue."
 msgstr ""
 
-#: Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:1100
 #, c-format
 msgid "Invalid backup mode %d"
 msgstr ""
 
-#: Src/wptGPG.cpp:1109
+#: Src/wptGPG.cpp:1127
 msgid "No GPG error description available."
 msgstr ""
 
@@ -1603,8 +1603,8 @@
 "Are you sure?"
 msgstr ""
 
-#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1674
-#: Src/wptMainProc.cpp:598
+#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1673
+#: Src/wptMainProc.cpp:588
 msgid "GnuPG Preferences"
 msgstr ""
 
@@ -1699,23 +1699,23 @@
 #: Src/wptKeyManager.cpp:731 Src/wptKeyManager.cpp:757
 #: Src/wptKeyManager.cpp:784 Src/wptKeyManager.cpp:789
 #: Src/wptKeyManager.cpp:813 Src/wptKeyManager.cpp:818
-#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:888
-#: Src/wptKeyManager.cpp:893 Src/wptKeyManager.cpp:949
-#: Src/wptKeyManager.cpp:979 Src/wptKeyManager.cpp:1066
-#: Src/wptKeyManagerDlg.cpp:1182 Src/wptKeyManagerDlg.cpp:1195
-#: Src/wptKeyManagerDlg.cpp:1205 Src/wptKeyManagerDlg.cpp:1499
-#: Src/wptKeyManagerDlg.cpp:1521 Src/wptKeyManagerDlg.cpp:1536
-#: Src/wptKeyManagerDlg.cpp:1546 Src/wptKeyManagerDlg.cpp:1554
-#: Src/wptKeyManagerDlg.cpp:1564 Src/wptKeyManagerDlg.cpp:1570
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1612 Src/wptKeyManagerDlg.cpp:1644
-#: Src/wptKeyManagerDlg.cpp:1703 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyManagerDlg.cpp:1726 Src/wptKeyManagerDlg.cpp:1731
-#: Src/wptKeyManagerDlg.cpp:1802 Src/wptKeyManagerDlg.cpp:1807
-#: Src/wptKeyManagerDlg.cpp:1940 Src/wptKeysigDlg.cpp:93
+#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:897 Src/wptKeyManager.cpp:953
+#: Src/wptKeyManager.cpp:983 Src/wptKeyManager.cpp:1070
+#: Src/wptKeyManagerDlg.cpp:1179 Src/wptKeyManagerDlg.cpp:1192
+#: Src/wptKeyManagerDlg.cpp:1202 Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1520 Src/wptKeyManagerDlg.cpp:1535
+#: Src/wptKeyManagerDlg.cpp:1545 Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1563 Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1611 Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyManagerDlg.cpp:1725 Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1801 Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1939 Src/wptKeysigDlg.cpp:93
 #: Src/wptKeysigDlg.cpp:105 Src/wptKeysigDlg.cpp:314 Src/wptKeysigDlg.cpp:387
-#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:413
-#: Src/wptMainProc.cpp:561 Src/wptMainProc.cpp:569
+#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:403
+#: Src/wptMainProc.cpp:551 Src/wptMainProc.cpp:559
 msgid "Key Manager"
 msgstr "Gestionnaire de clés"
 
@@ -1813,34 +1813,34 @@
 msgstr ""
 
 #: Src/wptImportList.cpp:345 Src/wptKeylist.cpp:576 Src/wptKeylist.cpp:584
-#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyManagerDlg.cpp:946
-#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:53
+#: Src/wptKeyManagerDlg.cpp:874 Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyserverSearchDlg.cpp:54 Src/wptSigList.cpp:53
 #: Src/wptVerifyList.cpp:112
 msgid "User ID"
 msgstr ""
 
 #: Src/wptImportList.cpp:346 Src/wptKeylist.cpp:578 Src/wptKeylist.cpp:587
-#: Src/wptKeyManagerDlg.cpp:880 Src/wptKeyserverSearchDlg.cpp:50
+#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyserverSearchDlg.cpp:50
 msgid "Size"
 msgstr "Taille"
 
 #: Src/wptImportList.cpp:347 Src/wptKeyEditDlgs.cpp:1077
-#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:878
-#: Src/wptKeyManagerDlg.cpp:969 Src/wptKeyRevokersDlg.cpp:58
-#: Src/wptKeyserverSearchDlg.cpp:51 Src/wptSigList.cpp:57
+#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:875
+#: Src/wptKeyManagerDlg.cpp:966 Src/wptKeyRevokersDlg.cpp:58
+#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:57
 #: Src/wptVerifyList.cpp:111
 msgid "Key ID"
 msgstr ""
 
 #: Src/wptImportList.cpp:348 Src/wptKeyEditDlgs.cpp:1078
 #: Src/wptKeyEditDlgs.cpp:1174 Src/wptKeylist.cpp:591
-#: Src/wptKeyManagerDlg.cpp:884 Src/wptKeyManagerDlg.cpp:972
-#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:56
+#: Src/wptKeyManagerDlg.cpp:881 Src/wptKeyManagerDlg.cpp:969
+#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:56
 msgid "Creation"
 msgstr "Création"
 
 #: Src/wptImportList.cpp:349 Src/wptKeylist.cpp:586
-#: Src/wptKeyManagerDlg.cpp:879 Src/wptKeyManagerDlg.cpp:971
+#: Src/wptKeyManagerDlg.cpp:876 Src/wptKeyManagerDlg.cpp:968
 msgid "Type"
 msgstr ""
 
@@ -1850,7 +1850,7 @@
 "and thus a CRC error occurs."
 msgstr ""
 
-#: Src/wptKeyCache.cpp:748
+#: Src/wptKeyCache.cpp:750
 msgid "Load GPG Keyrings..."
 msgstr ""
 
@@ -2051,7 +2051,7 @@
 #: Src/wptKeyEditDlgs.cpp:910 Src/wptKeyEditDlgs.cpp:942
 #: Src/wptKeyEditDlgs.cpp:1022 Src/wptKeyEditDlgs.cpp:1352
 #: Src/wptKeyEditDlgs.cpp:1427 Src/wptKeyEditDlgs.cpp:1489
-#: Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1552
 msgid "There is no secret key available!"
 msgstr ""
 
@@ -2100,7 +2100,7 @@
 msgid "Passphrase successfully changed."
 msgstr "Passphrase modifiée avec succès."
 
-#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:885
+#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:882
 msgid "Description"
 msgstr "Déscription"
 
@@ -2113,7 +2113,7 @@
 msgstr ""
 
 #: Src/wptKeyEditDlgs.cpp:1171 Src/wptKeylist.cpp:580 Src/wptKeylist.cpp:589
-#: Src/wptKeyManagerDlg.cpp:882
+#: Src/wptKeyManagerDlg.cpp:879
 msgid "Validity"
 msgstr "Validité"
 
@@ -2378,8 +2378,8 @@
 msgstr ""
 
 #: Src/wptKeyEditOwnertrustDlg.cpp:88 Src/wptKeyEditOwnertrustDlg.cpp:95
-#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:940
-#: Src/wptKeyManagerDlg.cpp:1768 Src/wptKeyPropsDlg.cpp:293
+#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:937
+#: Src/wptKeyManagerDlg.cpp:1767 Src/wptKeyPropsDlg.cpp:293
 #: Src/wptOwnertrustDlg.cpp:97 Src/wptOwnertrustDlg.cpp:121
 #: Src/wptOwnertrustDlg.cpp:133
 msgid "Ownertrust"
@@ -2402,7 +2402,7 @@
 #: Src/wptKeygenDlg.cpp:418 Src/wptKeygenDlg.cpp:423 Src/wptKeygenDlg.cpp:430
 #: Src/wptKeygenDlg.cpp:438 Src/wptKeygenDlg.cpp:452 Src/wptKeygenDlg.cpp:461
 #: Src/wptKeygenDlg.cpp:485 Src/wptKeygenDlg.cpp:581
-#: Src/wptKeyManagerDlg.cpp:1635 Src/wptPassphraseDlg.cpp:109
+#: Src/wptKeyManagerDlg.cpp:1634 Src/wptPassphraseDlg.cpp:109
 msgid "Key Generation"
 msgstr ""
 
@@ -2547,7 +2547,7 @@
 
 #: Src/wptKeygenDlg.cpp:537 Src/wptKeygenDlg.cpp:559 Src/wptKeygenDlg.cpp:564
 #: Src/wptKeygenDlg.cpp:571 Src/wptKeygenDlg.cpp:577 Src/wptKeygenDlg.cpp:600
-#: Src/wptKeyManagerDlg.cpp:1658
+#: Src/wptKeyManagerDlg.cpp:1657
 msgid "Key Generation Wizard"
 msgstr ""
 
@@ -2639,21 +2639,21 @@
 msgid "key pair"
 msgstr ""
 
-#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:881
-#: Src/wptKeyManagerDlg.cpp:970
+#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:878
+#: Src/wptKeyManagerDlg.cpp:967
 msgid "Cipher"
 msgstr ""
 
-#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:883
+#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:880
 #: Src/wptVerifyList.cpp:110
 msgid "Trust"
 msgstr "Confiance"
 
-#: Src/wptKeylist.cpp:762 Src/wptPassphraseCB.cpp:124
+#: Src/wptKeylist.cpp:761 Src/wptPassphraseCB.cpp:124
 msgid "Invalid User ID"
 msgstr ""
 
-#: Src/wptKeylist.cpp:1030
+#: Src/wptKeylist.cpp:1029
 #, c-format
 msgid ""
 "It is NOT certain that the key belongs to the person\n"
@@ -2663,18 +2663,18 @@
 "Use \"%s\" anyway?"
 msgstr ""
 
-#: Src/wptKeylist.cpp:1038 Src/wptKeylist.cpp:1100
+#: Src/wptKeylist.cpp:1037 Src/wptKeylist.cpp:1099
 msgid "Recipients"
 msgstr ""
 
-#: Src/wptKeylist.cpp:1101
+#: Src/wptKeylist.cpp:1100
 #, c-format
 msgid ""
 "KeyID %s.\n"
 "Do you really want to export a revoked key?"
 msgstr ""
 
-#: Src/wptKeylist.cpp:1203
+#: Src/wptKeylist.cpp:1202
 msgid "Secret Key List"
 msgstr ""
 
@@ -2794,44 +2794,44 @@
 msgid "Please only select one key."
 msgstr ""
 
-#: Src/wptKeyManager.cpp:887
+#: Src/wptKeyManager.cpp:891
 msgid "Do you really want to refresh all keys in the keyring?"
 msgstr ""
 
-#: Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:896
 msgid "Could not connect to keyserver, abort procedure."
 msgstr ""
 
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search"
 msgstr "Chercher"
 
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search for:"
 msgstr ""
 
-#: Src/wptKeyManager.cpp:974
+#: Src/wptKeyManager.cpp:978
 #, c-format
 msgid "String pattern \"%s\" not found."
 msgstr ""
 
-#: Src/wptKeyManager.cpp:1043 Src/wptKeyRevokeDlg.cpp:87
+#: Src/wptKeyManager.cpp:1047 Src/wptKeyRevokeDlg.cpp:87
 msgid "0. No reason specified"
 msgstr ""
 
-#: Src/wptKeyManager.cpp:1044 Src/wptKeyRevokeDlg.cpp:88
+#: Src/wptKeyManager.cpp:1048 Src/wptKeyRevokeDlg.cpp:88
 msgid "1. Key has been compromised"
 msgstr ""
 
-#: Src/wptKeyManager.cpp:1045 Src/wptKeyRevokeDlg.cpp:89
+#: Src/wptKeyManager.cpp:1049 Src/wptKeyRevokeDlg.cpp:89
 msgid "2. Key is superseded"
 msgstr ""
 
-#: Src/wptKeyManager.cpp:1046 Src/wptKeyRevokeDlg.cpp:90
+#: Src/wptKeyManager.cpp:1050 Src/wptKeyRevokeDlg.cpp:90
 msgid "3. Key is no longer used"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:990
+#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:987
 msgid "Paste Key from Clipboard"
 msgstr "Coller la clé du presse papiers"
 
@@ -2855,298 +2855,298 @@
 msgid "%d keys"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:935
+#: Src/wptKeyManagerDlg.cpp:932
 msgid "Key"
 msgstr "Clé"
 
-#: Src/wptKeyManagerDlg.cpp:936 Src/wptKeyManagerDlg.cpp:1220
+#: Src/wptKeyManagerDlg.cpp:933 Src/wptKeyManagerDlg.cpp:1217
 msgid "Groups"
 msgstr "Groupes"
 
-#: Src/wptKeyManagerDlg.cpp:939
+#: Src/wptKeyManagerDlg.cpp:936
 msgid "Send Mail..."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:941
+#: Src/wptKeyManagerDlg.cpp:938
 msgid "&Copy\tCtrl+C"
 msgstr "&Copier\tCtrl+C"
 
-#: Src/wptKeyManagerDlg.cpp:942
+#: Src/wptKeyManagerDlg.cpp:939
 msgid "&Paste\tCtrl+V"
 msgstr "&Coller\tCtrl+V"
 
-#: Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyManagerDlg.cpp:940
 msgid "Search...\tCtrl+F"
 msgstr "Chercher...\tCtrl+F"
 
-#: Src/wptKeyManagerDlg.cpp:944
+#: Src/wptKeyManagerDlg.cpp:941
 msgid "Select All\tCtrl+A"
 msgstr "Sélectionner tout\tCtrl+A"
 
-#: Src/wptKeyManagerDlg.cpp:945
+#: Src/wptKeyManagerDlg.cpp:942
 msgid "&Quit"
 msgstr "&Quitter"
 
-#: Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:944
 msgid "&Expert"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:948
+#: Src/wptKeyManagerDlg.cpp:945
 msgid "&Normal"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:952
-#: Src/wptKeyManagerDlg.cpp:996
+#: Src/wptKeyManagerDlg.cpp:948 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptKeyManagerDlg.cpp:993
 msgid "&Delete"
 msgstr "&Effacer"
 
-#: Src/wptKeyManagerDlg.cpp:953 Src/wptKeyManagerDlg.cpp:997
+#: Src/wptKeyManagerDlg.cpp:950 Src/wptKeyManagerDlg.cpp:994
 msgid "&Revoke Cert"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:954 Src/wptKeyManagerDlg.cpp:993
+#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:990
 msgid "&List Signatures"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:1575
+#: Src/wptKeyManagerDlg.cpp:952 Src/wptKeyManagerDlg.cpp:1574
 #: Src/wptKeyTrustPathDlg.cpp:130
 msgid "List Trust Path"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:956
+#: Src/wptKeyManagerDlg.cpp:953
 msgid "&Export..."
 msgstr "&Exporter..."
 
-#: Src/wptKeyManagerDlg.cpp:957
+#: Src/wptKeyManagerDlg.cpp:954
 msgid "&Import..."
 msgstr "&Importer..."
 
-#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyManagerDlg.cpp:994
+#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:991
 #: Src/wptKeysigDlg.cpp:425
 msgid "&Properties"
 msgstr "&Propriétés"
 
-#: Src/wptKeyManagerDlg.cpp:962
+#: Src/wptKeyManagerDlg.cpp:959
 msgid "E&xport Secret Key"
 msgstr "E&xporter la clé privée"
 
-#: Src/wptKeyManagerDlg.cpp:963
+#: Src/wptKeyManagerDlg.cpp:960
 msgid "Re&load Key Cache"
 msgstr "Re&charger le cache"
 
-#: Src/wptKeyManagerDlg.cpp:964
+#: Src/wptKeyManagerDlg.cpp:961
 msgid "R&everify Signatures"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:965
+#: Src/wptKeyManagerDlg.cpp:962
 msgid "Refresh &Keys (Keyserver)"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:966 Src/wptTextInputDlg.cpp:49
+#: Src/wptKeyManagerDlg.cpp:963 Src/wptTextInputDlg.cpp:49
 msgid "Info"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:985
+#: Src/wptKeyManagerDlg.cpp:982
 msgid "Copy User ID to Clipboard"
 msgstr "Copier l'ID de l'utilisateur dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:986
+#: Src/wptKeyManagerDlg.cpp:983
 msgid "Copy Key ID to Clipboard"
 msgstr "Copier l'ID de la clé dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:987
+#: Src/wptKeyManagerDlg.cpp:984
 msgid "Copy Fingerprint to Clipboard"
 msgstr "Copier l'empreinte dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:988
+#: Src/wptKeyManagerDlg.cpp:985
 msgid "Copy Key Info to Clipboard"
 msgstr "Copier l'info de la clé dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:989
+#: Src/wptKeyManagerDlg.cpp:986
 msgid "Copy Key to Clipboard"
 msgstr "Copier la clé dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:991
+#: Src/wptKeyManagerDlg.cpp:988
 msgid "Refresh from Keyserver"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:992
+#: Src/wptKeyManagerDlg.cpp:989
 msgid "Set Implicit &Trust"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:999
+#: Src/wptKeyManagerDlg.cpp:996
 msgid "&Enable"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1000
+#: Src/wptKeyManagerDlg.cpp:997
 msgid "&Disable"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1001
+#: Src/wptKeyManagerDlg.cpp:998
 msgid "Re&fresh from Keyserver"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1002
+#: Src/wptKeyManagerDlg.cpp:999
 msgid "Set preferred Keyserver URL"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1003
+#: Src/wptKeyManagerDlg.cpp:1000
 msgid "Send Key to Mail Recipient"
 msgstr "Envoyer la clé au destinataire de courrier"
 
-#: Src/wptKeyManagerDlg.cpp:1004
+#: Src/wptKeyManagerDlg.cpp:1001
 msgid "Set as Default Key"
 msgstr "Clé par défaut"
 
-#: Src/wptKeyManagerDlg.cpp:1006
+#: Src/wptKeyManagerDlg.cpp:1003
 msgid "Key..."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1007
+#: Src/wptKeyManagerDlg.cpp:1004
 msgid "User ID..."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1008
+#: Src/wptKeyManagerDlg.cpp:1005
 msgid "Photo ID..."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1009
+#: Src/wptKeyManagerDlg.cpp:1006
 msgid "Revoker..."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1012
+#: Src/wptKeyManagerDlg.cpp:1009
 msgid "Key Attributes"
 msgstr "Attributs de clé"
 
-#: Src/wptKeyManagerDlg.cpp:1013
+#: Src/wptKeyManagerDlg.cpp:1010
 msgid "Add"
 msgstr "Ajouter"
 
-#: Src/wptKeyManagerDlg.cpp:1014
+#: Src/wptKeyManagerDlg.cpp:1011
 msgid "Send to Keyserver"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1193
+#: Src/wptKeyManagerDlg.cpp:1190
 msgid ""
 "No ultimately trusted key found.\n"
 "Please set at least one secret key to ultimate trust."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1204
+#: Src/wptKeyManagerDlg.cpp:1201
 msgid "Could not set keylist window procedure."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1221
+#: Src/wptKeyManagerDlg.cpp:1218
 #, fuzzy
 msgid "&Show"
 msgstr "&Montrer la photo"
 
-#: Src/wptKeyManagerDlg.cpp:1222
+#: Src/wptKeyManagerDlg.cpp:1219
 #, fuzzy
 msgid "&New..."
 msgstr "&Ouvrir"
 
-#: Src/wptKeyManagerDlg.cpp:1327
+#: Src/wptKeyManagerDlg.cpp:1324
 msgid "Generate new key pair"
 msgstr "Générer une nouvelle paire de clés"
 
-#: Src/wptKeyManagerDlg.cpp:1331
+#: Src/wptKeyManagerDlg.cpp:1328
 msgid "Search for a specific key"
 msgstr "Chercher pour une clé spécifique"
 
-#: Src/wptKeyManagerDlg.cpp:1335
+#: Src/wptKeyManagerDlg.cpp:1332
 msgid "Delete key from keyring"
 msgstr "Effacer une clé du porte-clés"
 
-#: Src/wptKeyManagerDlg.cpp:1339
+#: Src/wptKeyManagerDlg.cpp:1336
 msgid "Show key properties"
 msgstr "Voir les propriétés de la clé"
 
-#: Src/wptKeyManagerDlg.cpp:1343
+#: Src/wptKeyManagerDlg.cpp:1340
 msgid "Sign key"
 msgstr "Signer la clé"
 
-#: Src/wptKeyManagerDlg.cpp:1347
+#: Src/wptKeyManagerDlg.cpp:1344
 msgid "Copy key to clipboard"
 msgstr "Copier la clé dans le presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:1351
+#: Src/wptKeyManagerDlg.cpp:1348
 msgid "Paste key from clipboard"
 msgstr "Coller la clé du presse papiers"
 
-#: Src/wptKeyManagerDlg.cpp:1355
+#: Src/wptKeyManagerDlg.cpp:1352
 msgid "Import key to keyring"
 msgstr "Importer la clé dans le porte-clés"
 
-#: Src/wptKeyManagerDlg.cpp:1359
+#: Src/wptKeyManagerDlg.cpp:1356
 msgid "Export key to a file"
 msgstr "Exporter la clé dans un fichier"
 
-#: Src/wptKeyManagerDlg.cpp:1486
+#: Src/wptKeyManagerDlg.cpp:1485
 msgid "New"
 msgstr "Nouveau"
 
-#: Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1497
 msgid "Could not access public keyring"
 msgstr "Ne peut accéder au porte-clés publique"
 
-#: Src/wptKeyManagerDlg.cpp:1529 Src/wptKeysignDlg.cpp:259
+#: Src/wptKeyManagerDlg.cpp:1528 Src/wptKeysignDlg.cpp:259
 #: Src/wptKeysignDlg.cpp:274 Src/wptKeysignDlg.cpp:354
 #: Src/wptKeysignDlg.cpp:369 Src/wptKeysignDlg.cpp:386
 #: Src/wptKeysignDlg.cpp:391 Src/wptKeysignDlg.cpp:393
 msgid "Key Signing"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1545
+#: Src/wptKeyManagerDlg.cpp:1544
 msgid "Key already revoked!"
 msgstr "Clé déjà révoquée!"
 
-#: Src/wptKeyManagerDlg.cpp:1559 Src/wptKeyRevokeDlg.cpp:70
+#: Src/wptKeyManagerDlg.cpp:1558 Src/wptKeyRevokeDlg.cpp:70
 #: Src/wptKeyRevokeDlg.cpp:80 Src/wptKeyRevokeDlg.cpp:169
 #: Src/wptKeyRevokeDlg.cpp:174 Src/wptKeyRevokeDlg.cpp:182
 #: Src/wptKeyRevokeDlg.cpp:191 Src/wptKeyRevokeDlg.cpp:196
 msgid "Key Revocation Cert"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1568
 msgid "It does not make any sense with a key pair!"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1586
+#: Src/wptKeyManagerDlg.cpp:1585
 msgid "Key Signature List"
 msgstr "Liste de signature de clé"
 
-#: Src/wptKeyManagerDlg.cpp:1603 Src/wptKeyPropsDlg.cpp:289
+#: Src/wptKeyManagerDlg.cpp:1602 Src/wptKeyPropsDlg.cpp:289
 msgid "Key Properties"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1613
+#: Src/wptKeyManagerDlg.cpp:1612
 msgid ""
 "This is only useful when the keyring has been modified (sign a key...).\n"
 "Do you really want to reload the keycache?"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1642
 msgid "Smart Card support is not available."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1666 Src/wptKeyserverDlg.cpp:568
+#: Src/wptKeyManagerDlg.cpp:1665 Src/wptKeyserverDlg.cpp:568
 msgid "Keyserver Access"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1683
+#: Src/wptKeyManagerDlg.cpp:1682
 msgid "GnuPG Options"
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1725
+#: Src/wptKeyManagerDlg.cpp:1724
 msgid "There is no corresponding secret key for this key."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1729
 msgid "You can only export one secret key."
 msgstr "Vous pouvez exporter seulement une clé secrète."
 
-#: Src/wptKeyManagerDlg.cpp:1735
+#: Src/wptKeyManagerDlg.cpp:1734
 msgid ""
 "This operation will export your *SECRET* key!\n"
 "\n"
@@ -3164,15 +3164,15 @@
 "\n"
 "Voulez-vous vraiment exporter cette clé?"
 
-#: Src/wptKeyManagerDlg.cpp:1740
+#: Src/wptKeyManagerDlg.cpp:1739
 msgid "WARNING"
 msgstr "ATTENTION"
 
-#: Src/wptKeyManagerDlg.cpp:1801
+#: Src/wptKeyManagerDlg.cpp:1800
 msgid "No key was selected, select all by default."
 msgstr ""
 
-#: Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1805
 msgid "Keyserver refresh finished."
 msgstr ""
 
@@ -3282,7 +3282,8 @@
 msgid "Revocation certificate generated."
 msgstr ""
 
-#: Src/wptKeyRevokersDlg.cpp:59 Src/wptSigList.cpp:59
+#: Src/wptKeyRevokersDlg.cpp:59 Src/wptKeyserverSearchDlg.cpp:51
+#: Src/wptSigList.cpp:59
 msgid "Algorithm"
 msgstr ""
 
@@ -3299,64 +3300,64 @@
 msgid "Do you want to retrieve %s via the default keyserver?"
 msgstr "Voulez-vous effacer le contenu du presse papiers?"
 
-#: Src/wptKeyserver.cpp:363
+#: Src/wptKeyserver.cpp:377
 msgid "Network unreachable"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:366
+#: Src/wptKeyserver.cpp:380
 msgid "Host unreachable"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:369
+#: Src/wptKeyserver.cpp:383
 #, fuzzy
 msgid "Could not resolve host name"
 msgstr "Ne peut pas résoudre le nom d'hôte"
 
-#: Src/wptKeyserver.cpp:372
+#: Src/wptKeyserver.cpp:386
 msgid "Connection refused"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:376
+#: Src/wptKeyserver.cpp:390
 msgid "Connection timeout"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:380
+#: Src/wptKeyserver.cpp:394
 msgid "Connection resetted by peer"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:383
+#: Src/wptKeyserver.cpp:397
 msgid "Socket has been shutdown"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:572
+#: Src/wptKeyserver.cpp:584
 msgid "Could not save keyserver.conf file"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:617
+#: Src/wptKeyserver.cpp:629
 msgid ""
 "Invalid proxy configuration.You need to set a user and a passwordto use "
 "proxy authentication!"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:620
+#: Src/wptKeyserver.cpp:632
 msgid "Proxy Error"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:644
+#: Src/wptKeyserver.cpp:656
 msgid ""
 "All entries of this file must have a valid prefix.\n"
 "Currently HKP/HTTP, LDAP and FINGER are supported.\n"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:646
+#: Src/wptKeyserver.cpp:658
 msgid "Keyserver Error"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:670
+#: Src/wptKeyserver.cpp:680
 msgid "The keyserver limit is exceeded"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:671
+#: Src/wptKeyserver.cpp:681
 msgid "Keyserver Warning"
 msgstr ""
 
@@ -3460,7 +3461,7 @@
 msgid "Invalid port, valid numbers are < 65535"
 msgstr ""
 
-#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:60
+#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:61
 msgid "&Receive"
 msgstr ""
 
@@ -3524,16 +3525,16 @@
 msgid "Only email addresses or keyids are allowed."
 msgstr ""
 
-#: Src/wptKeyserverSearchDlg.cpp:63
+#: Src/wptKeyserverSearchDlg.cpp:64
 #, c-format
 msgid "Connect to '%s' to search for \"%s\""
 msgstr ""
 
-#: Src/wptKeyserverSearchDlg.cpp:66
+#: Src/wptKeyserverSearchDlg.cpp:67
 msgid "Keyserver Searching"
 msgstr ""
 
-#: Src/wptKeyserverSearchDlg.cpp:87 Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyserverSearchDlg.cpp:90 Src/wptKeyserverSearchDlg.cpp:127
 msgid "Keyserver Search"
 msgstr ""
 
@@ -3699,7 +3700,7 @@
 msgid "&Show photo"
 msgstr "&Montrer la photo"
 
-#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:94
+#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:96
 #: Src/wptPassphraseCB.cpp:102 Src/wptPassphraseDlg.cpp:68
 #: Src/wptPINDlg.cpp:54
 msgid "&Hide Typing"
@@ -3745,46 +3746,46 @@
 msgid "Unknown OpenPGP type."
 msgstr ""
 
-#: Src/wptMainProc.cpp:360
+#: Src/wptMainProc.cpp:350
 msgid "Could not set current window mode hooks."
 msgstr ""
 
-#: Src/wptMainProc.cpp:417
+#: Src/wptMainProc.cpp:407
 msgid "Edit Clipboard"
 msgstr "Editer le presse papiers"
 
-#: Src/wptMainProc.cpp:418
+#: Src/wptMainProc.cpp:408
 msgid "About..."
 msgstr "A propos..."
 
-#: Src/wptMainProc.cpp:424 Src/wptMainProc.cpp:428
+#: Src/wptMainProc.cpp:414 Src/wptMainProc.cpp:418
 msgid "Decrypt/Verify"
 msgstr "Déchiffrer/Vérifier"
 
-#: Src/wptMainProc.cpp:438
+#: Src/wptMainProc.cpp:428
 msgid "Current Window"
 msgstr "Fenêtre courante"
 
-#: Src/wptMainProc.cpp:494
+#: Src/wptMainProc.cpp:484
 msgid "Remove all passphrases from cache?"
 msgstr ""
 
-#: Src/wptMainProc.cpp:495 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
+#: Src/wptMainProc.cpp:485 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
 msgid "WinPT"
 msgstr ""
 
-#: Src/wptMainProc.cpp:505
+#: Src/wptMainProc.cpp:495
 msgid "Could not access public keyring, exit WinPT?"
 msgstr ""
 
-#: Src/wptMainProc.cpp:538
+#: Src/wptMainProc.cpp:528
 #, c-format
 msgid ""
 "Make sure that the window contains text.\n"
 "%s."
 msgstr ""
 
-#: Src/wptMainProc.cpp:592 Src/wptPreferencesDlg.cpp:136
+#: Src/wptMainProc.cpp:582 Src/wptPreferencesDlg.cpp:136
 msgid "WinPT Preferences"
 msgstr "Préférences de WinPT"
 

Modified: trunk/Po/jp.po
===================================================================
--- trunk/Po/jp.po	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Po/jp.po	2006-05-14 18:40:36 UTC (rev 214)
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: WinPT 0.10.2\n"
 "Report-Msgid-Bugs-To: winpt at freakmail.de\n"
-"POT-Creation-Date: 2006-05-09 18:57+0200\n"
+"POT-Creation-Date: 2006-05-14 11:31+0200\n"
 "PO-Revision-Date: 2005-12-22 07:28+0100\n"
 "Last-Translator: Davar Pishva <dpishva at andrew.cmu.edu>\n"
 "Language-Team: jp <jp at li.org>\n"
@@ -33,9 +33,9 @@
 #: Src/WinPT.cpp:471 Src/WinPT.cpp:478 Src/WinPT.cpp:519 Src/WinPT.cpp:547
 #: Src/WinPT.cpp:556 Src/WinPT.cpp:560 Src/WinPT.cpp:577 Src/WinPT.cpp:645
 #: Src/WinPT.cpp:658 Src/WinPT.cpp:705 Src/WinPT.cpp:735 Src/WinPT.cpp:753
-#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:903
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:925 Src/wptGPG.cpp:936
-#: Src/wptMainProc.cpp:361 Src/wptMainProc.cpp:537
+#: Src/wptCommonDlg.cpp:220 Src/wptErrors.cpp:141 Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:943 Src/wptGPG.cpp:954
+#: Src/wptMainProc.cpp:351 Src/wptMainProc.cpp:527
 msgid "WinPT Error"
 msgstr "WinPT ƒGƒ‰["
 
@@ -80,7 +80,7 @@
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:72
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:115
 #: Src/WinPT.cpp:305 Src/WinPT.cpp:322 Src/WinPT.cpp:333
-#: Src/wptKeyManagerDlg.cpp:961 Src/wptKeyserver.cpp:573
+#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyserver.cpp:585
 #: Src/wptKeyserverDlg.cpp:68 Src/wptKeyserverDlg.cpp:70
 #: Src/wptKeyserverDlg.cpp:187 Src/wptKeyserverDlg.cpp:195
 #: Src/wptKeyserverDlg.cpp:211 Src/wptKeyserverDlg.cpp:352
@@ -152,8 +152,8 @@
 "‚±‚Ì‚Ü‚Ü‘±‚¯‚éê‡‚́AWinPT‚ª‚¢‚ë‚¢‚ë‚È‘I‘ð‚ð’ño‚µ‚Ü‚·B\n"
 
 # c:\oss\winpt\src\WinPT.cpp:320 c:\oss\winpt\src\wptFileManagerDlg.cpp:552
-#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:493
-#: Src/wptFileManagerDlg.cpp:818
+#: Src/WinPT.cpp:602 Src/wptFileManagerDlg.cpp:512
+#: Src/wptFileManagerDlg.cpp:819
 msgid "Wipe Free Space"
 msgstr "ŠJ‚«—̈æ‚ðŽæ‚èÁ‚·"
 
@@ -217,8 +217,8 @@
 # c:\oss\winpt\src\wptAboutDlgs.cpp:78
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1152
 # c:\oss\winpt\src\wptMainProc.cpp:560
-#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1752
-#: Src/wptMainProc.cpp:586
+#: Src/wptAboutDlgs.cpp:96 Src/wptKeyManagerDlg.cpp:1751
+#: Src/wptMainProc.cpp:576
 msgid "About WinPT"
 msgstr "WinPT‚ɂ‚¢‚Ä"
 
@@ -270,13 +270,13 @@
 msgstr "GPG‚ɂ‚¢‚Ä..."
 
 #: Src/wptAboutDlgs.cpp:115 Src/wptKeyEditDlgs.cpp:2143
-#: Src/wptKeyManagerDlg.cpp:967
+#: Src/wptKeyManagerDlg.cpp:964
 msgid "&Help"
 msgstr "ƒwƒ‹ƒv(&H)"
 
 # c:\oss\winpt\src\WinPT.cpp:340 c:\oss\winpt\src\wptCardDlg.cpp:98
 # c:\oss\winpt\src\wptCardDlg.cpp:125 c:\oss\winpt\src\wptMainProc.cpp:389
-#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:414
+#: Src/wptCardDlg.cpp:141 Src/wptMainProc.cpp:404
 msgid "Card Manager"
 msgstr "ƒJ[ƒhƒ}ƒl[ƒWƒƒ["
 
@@ -313,7 +313,7 @@
 #: Src/wptCardDlg.cpp:696 Src/wptCardDlg.cpp:699 Src/wptCardDlg.cpp:724
 #: Src/wptCardDlg.cpp:726 Src/wptCardDlg.cpp:731 Src/wptCardDlg.cpp:736
 #: Src/wptCardDlg.cpp:800 Src/wptCardDlg.cpp:815 Src/wptCardDlg.cpp:818
-#: Src/wptMainProc.cpp:301
+#: Src/wptMainProc.cpp:291
 msgid "Card Edit"
 msgstr "ƒJ[ƒh•ÒW"
 
@@ -423,7 +423,7 @@
 msgstr "ˆÃ†‰»ƒL[‚̃J[ƒhŠOƒoƒbƒNƒAƒbƒv‚ðì¬"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1049
-#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1648
+#: Src/wptCardDlg.cpp:588 Src/wptKeyManagerDlg.cpp:1647
 msgid "Card Key Generation"
 msgstr "ƒJ[ƒhƒL[ì¬"
 
@@ -545,29 +545,55 @@
 "Œp‘±‚·‚é‚Ì‚ÉOK‚Ü‚½‚̓Lƒƒƒ“ƒZƒ‹‚ð‰Ÿ‚µ‚Ä‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:48
-#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:187
+#: Src/wptClipDecryptDlg.cpp:54 Src/wptClipDecryptDlg.cpp:190
 #: Src/wptFileManager.cpp:1228 Src/wptKeyRevokersDlg.cpp:128
 #: Src/wptKeyRevokersDlg.cpp:175 Src/wptVerifyList.cpp:176
 #: Src/wptVerifyList.cpp:232
 msgid "user ID not found"
 msgstr "ƒ†[ƒU[ID‚ªŒ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:52
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:66
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:80
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:88
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:106
+# c:\oss\winpt\src\wptClipVerifyDlg.cpp:119
+# c:\oss\winpt\src\wptFileManager.cpp:1026
+# c:\oss\winpt\src\wptFileManager.cpp:1029
+# c:\oss\winpt\src\wptFileManager.cpp:1218
+# c:\oss\winpt\src\wptFileManager.cpp:1243
+# c:\oss\winpt\src\wptFileManagerDlg.cpp:405
+# c:\oss\winpt\src\wptFileVerifyDlg.cpp:122
+# c:\oss\winpt\src\wptMainProc.cpp:191 c:\oss\winpt\src\wptMainProc.cpp:259
+# c:\oss\winpt\src\wptMainProc.cpp:271 c:\oss\winpt\src\wptMainProc.cpp:279
+# c:\oss\winpt\src\wptMainProc.cpp:406
+#: Src/wptClipDecryptDlg.cpp:112 Src/wptClipVerifyDlg.cpp:176
+#: Src/wptClipVerifyDlg.cpp:189 Src/wptClipVerifyDlg.cpp:202
+#: Src/wptClipVerifyDlg.cpp:209 Src/wptClipVerifyDlg.cpp:241
+#: Src/wptClipVerifyDlg.cpp:252 Src/wptFileManager.cpp:1596
+#: Src/wptFileManager.cpp:1649 Src/wptFileManagerDlg.cpp:576
+#: Src/wptFileVerifyDlg.cpp:81 Src/wptFileVerifyDlg.cpp:149
+#: Src/wptMainProc.cpp:182 Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260
+#: Src/wptMainProc.cpp:268 Src/wptMainProc.cpp:415
+msgid "Verify"
+msgstr "Šm”F‚·‚é"
+
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:110
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:116
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:129
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:138
 # c:\oss\winpt\src\wptFileManager.cpp:952
 # c:\oss\winpt\src\wptFileManager.cpp:996
-#: Src/wptClipDecryptDlg.cpp:116 Src/wptClipDecryptDlg.cpp:129
-#: Src/wptClipDecryptDlg.cpp:137 Src/wptClipDecryptDlg.cpp:144
-#: Src/wptClipDecryptDlg.cpp:146 Src/wptFileManager.cpp:1302
-#: Src/wptFileManager.cpp:1349
+#: Src/wptClipDecryptDlg.cpp:119 Src/wptClipDecryptDlg.cpp:132
+#: Src/wptClipDecryptDlg.cpp:140 Src/wptClipDecryptDlg.cpp:147
+#: Src/wptClipDecryptDlg.cpp:149 Src/wptFileManager.cpp:1303
+#: Src/wptFileManager.cpp:1354
 msgid "Decryption"
 msgstr "•œ†"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:130
 # c:\oss\winpt\src\wptFileManager.cpp:997
-#: Src/wptClipDecryptDlg.cpp:130 Src/wptFileManager.cpp:1350
+#: Src/wptClipDecryptDlg.cpp:133 Src/wptFileManager.cpp:1355
 #, c-format
 msgid ""
 "Encrypted with %s key, ID %s.%s\n"
@@ -576,17 +602,17 @@
 " %s‚ň͆‰»‚µ‚½ AID‚ª %s.%s‚Å‚·\n"
 "•œ†‚ÉŽ¸”s‚µ‚Ü‚µ‚½: ”é–§Œ®‚ª—˜—p‚Å‚«‚Ü‚¹‚ñB"
 
-#: Src/wptClipDecryptDlg.cpp:137
+#: Src/wptClipDecryptDlg.cpp:140
 #, c-format
 msgid "Unsupported algorithm: %s"
 msgstr "‘Ήž‚³‚ê‚Ä‚È‚¢ƒAƒ‹ƒSƒŠƒYƒ€: %s"
 
-#: Src/wptClipDecryptDlg.cpp:143
+#: Src/wptClipDecryptDlg.cpp:146
 msgid "Broken OpenPGP message (maybe: quoted printable character in armor)."
 msgstr "•s–¾‚ÈOpenPGPƒƒbƒZ[ƒW"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:144
-#: Src/wptClipDecryptDlg.cpp:151
+#: Src/wptClipDecryptDlg.cpp:154
 msgid ""
 "WARNING: encrypted message has been manipulated!\n"
 "\n"
@@ -601,7 +627,7 @@
 "‚Ü‚½‚Í‚±‚ê‚̓Aƒ^ƒbƒN‚Ì•”•ª‚Æ‚µ‚Ä‚àl‚¦‚ç‚ê‚Ü‚·B"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:149
-#: Src/wptClipDecryptDlg.cpp:156
+#: Src/wptClipDecryptDlg.cpp:159
 msgid "*** IMPORTANT ***"
 msgstr "*** d—v ***"
 
@@ -613,40 +639,40 @@
 # c:\oss\winpt\src\wptKeyManager.cpp:274
 # c:\oss\winpt\src\wptKeyManager.cpp:610
 # c:\oss\winpt\src\wptKeyManager.cpp:852 c:\oss\winpt\src\wptSymEnc.cpp:52
-#: Src/wptClipDecryptDlg.cpp:159 Src/wptClipEncryptDlg.cpp:213
+#: Src/wptClipDecryptDlg.cpp:162 Src/wptClipEncryptDlg.cpp:213
 #: Src/wptClipSignDlg.cpp:121 Src/wptClipSignDlg.cpp:265
 #: Src/wptClipSignEncDlg.cpp:197 Src/wptKeyManager.cpp:286
-#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:951 Src/wptSymEnc.cpp:91
+#: Src/wptKeyManager.cpp:763 Src/wptKeyManager.cpp:955 Src/wptSymEnc.cpp:91
 msgid "GnuPG Status: Finished"
 msgstr "GunPG‚̏ó‘ԁFI—¹‚µ‚Ü‚µ‚½"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:170
-#: Src/wptClipDecryptDlg.cpp:174
+#: Src/wptClipDecryptDlg.cpp:177
 msgid "Signature Status: Created with a fully trusted key"
 msgstr "–¼‚̏ó‘ԁFŠ®‘S‚ɐM—p‚Å‚«‚éƒL[‚ōì‚ç‚ꂽ‚à‚Ì"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:172
-#: Src/wptClipDecryptDlg.cpp:176
+#: Src/wptClipDecryptDlg.cpp:179
 msgid "Signature Status: Created with a marginal trusted key"
 msgstr "–¼‚̏ó‘ԁF‚ ‚Ü‚èM—p‚Å‚«‚È‚¢ƒL[‚ōì‚ç‚ꂽ‚à‚Ì"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:177
-#: Src/wptClipDecryptDlg.cpp:179
+#: Src/wptClipDecryptDlg.cpp:182
 msgid "Signature Status: Created with an UNTRUSTED key"
 msgstr "–¼‚̏ó‘ԁFM—p‚Å‚«‚È‚¢ƒL[‚ōì‚ç‚ꂽ‚à‚Ì"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:170
-#: Src/wptClipDecryptDlg.cpp:182
+#: Src/wptClipDecryptDlg.cpp:185
 msgid "Signature Status: Created with an undefined trusted key"
 msgstr "–¼‚̏ó‘ԁF’è‹`‚³‚ê‚Ä‚¢‚È‚¢Š®‘S‚ɐM—p‚Å‚«‚éƒL[‚ōì‚ç‚ꂽ‚à‚Ì"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:187
-#: Src/wptClipDecryptDlg.cpp:189
+#: Src/wptClipDecryptDlg.cpp:192
 msgid "WinPT Verify"
 msgstr "WinPT Šm”F"
 
 # c:\oss\winpt\src\wptClipDecryptDlg.cpp:188
-#: Src/wptClipDecryptDlg.cpp:190
+#: Src/wptClipDecryptDlg.cpp:193
 #, c-format
 msgid ""
 "%s\n"
@@ -674,7 +700,7 @@
 #: Src/wptClipEditDlg.cpp:167 Src/wptClipEditDlg.cpp:242
 #: Src/wptClipEditDlg.cpp:247 Src/wptFileManagerDlg.cpp:211
 #: Src/wptMainProc.cpp:162 Src/wptMainProc.cpp:230 Src/wptMainProc.cpp:273
-#: Src/wptMainProc.cpp:437 Src/wptMainProc.cpp:518 Src/wptMainProc.cpp:523
+#: Src/wptMainProc.cpp:427 Src/wptMainProc.cpp:508 Src/wptMainProc.cpp:513
 msgid "Clipboard"
 msgstr "ƒNƒŠƒbƒvƒ{[ƒh"
 
@@ -711,7 +737,7 @@
 # c:\oss\winpt\src\wptClipEditDlg.cpp:45 c:\oss\winpt\src\wptMainProc.cpp:181
 # c:\oss\winpt\src\wptMainProc.cpp:249 c:\oss\winpt\src\wptMainProc.cpp:554
 #: Src/wptClipEditDlg.cpp:194 Src/wptMainProc.cpp:172 Src/wptMainProc.cpp:238
-#: Src/wptMainProc.cpp:580
+#: Src/wptMainProc.cpp:570
 msgid "Clipboard Editor"
 msgstr "ƒNƒŠƒbƒvƒ{[ƒhƒGƒfƒBƒ^["
 
@@ -786,7 +812,7 @@
 #: Src/wptKeyEditDlgs.cpp:516 Src/wptKeyEditDlgs.cpp:651
 #: Src/wptKeyEditOwnertrustDlg.cpp:67 Src/wptKeygenDlg.cpp:380
 #: Src/wptKeygenDlg.cpp:538 Src/wptKeyRevokeDlg.cpp:81
-#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:61
+#: Src/wptKeyserverDlg.cpp:509 Src/wptKeyserverSearchDlg.cpp:62
 #: Src/wptKeysignDlg.cpp:285 Src/wptPassphraseCB.cpp:93
 #: Src/wptPassphraseDlg.cpp:69 Src/wptPINDlg.cpp:55
 #: Src/wptPreferencesDlg.cpp:132 Src/wptTextInputDlg.cpp:84
@@ -838,7 +864,7 @@
 #: Src/wptClipSignDlg.cpp:230 Src/wptClipSignDlg.cpp:249
 #: Src/wptClipSignDlg.cpp:260 Src/wptClipSignEncDlg.cpp:166
 #: Src/wptClipSignEncDlg.cpp:176 Src/wptFileManager.cpp:1080
-#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1406
+#: Src/wptFileManager.cpp:1096 Src/wptFileManager.cpp:1418
 #: Src/wptMainProc.cpp:156 Src/wptMainProc.cpp:218
 msgid "Signing"
 msgstr "–¼"
@@ -881,7 +907,7 @@
 
 # c:\oss\winpt\src\wptClipSignEncDlg.cpp:119
 # c:\oss\winpt\src\wptKeylist.cpp:923
-#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1203
+#: Src/wptClipSignEncDlg.cpp:166 Src/wptKeylist.cpp:1202
 msgid "No key was selected."
 msgstr "ƒL[‚ª‘I‘ð‚³‚ê‚Ä‚Ü‚¹‚ñB"
 
@@ -895,32 +921,6 @@
 msgid "PKA: Verified signer's address is '%s'"
 msgstr "PKA: Šm”F‚µ‚½–¼ŽÒ‚̏ZŠ‚Í '%s' ‚Å‚·B"
 
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:52
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:66
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:80
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:88
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:106
-# c:\oss\winpt\src\wptClipVerifyDlg.cpp:119
-# c:\oss\winpt\src\wptFileManager.cpp:1026
-# c:\oss\winpt\src\wptFileManager.cpp:1029
-# c:\oss\winpt\src\wptFileManager.cpp:1218
-# c:\oss\winpt\src\wptFileManager.cpp:1243
-# c:\oss\winpt\src\wptFileManagerDlg.cpp:405
-# c:\oss\winpt\src\wptFileVerifyDlg.cpp:122
-# c:\oss\winpt\src\wptMainProc.cpp:191 c:\oss\winpt\src\wptMainProc.cpp:259
-# c:\oss\winpt\src\wptMainProc.cpp:271 c:\oss\winpt\src\wptMainProc.cpp:279
-# c:\oss\winpt\src\wptMainProc.cpp:406
-#: Src/wptClipVerifyDlg.cpp:176 Src/wptClipVerifyDlg.cpp:189
-#: Src/wptClipVerifyDlg.cpp:202 Src/wptClipVerifyDlg.cpp:209
-#: Src/wptClipVerifyDlg.cpp:241 Src/wptClipVerifyDlg.cpp:252
-#: Src/wptFileManager.cpp:1584 Src/wptFileManager.cpp:1637
-#: Src/wptFileManagerDlg.cpp:557 Src/wptFileVerifyDlg.cpp:81
-#: Src/wptFileVerifyDlg.cpp:149 Src/wptMainProc.cpp:182
-#: Src/wptMainProc.cpp:248 Src/wptMainProc.cpp:260 Src/wptMainProc.cpp:268
-#: Src/wptMainProc.cpp:425
-msgid "Verify"
-msgstr "Šm”F‚·‚é"
-
 # c:\oss\winpt\src\wptClipVerifyDlg.cpp:81
 #: Src/wptClipVerifyDlg.cpp:203
 #, c-format
@@ -1049,7 +1049,7 @@
 #: Src/wptKeyEditDlgs.cpp:2079 Src/wptKeyEditDlgs.cpp:2120
 #: Src/wptKeyEditDlgs.cpp:2133 Src/wptKeyEditDlgs.cpp:2147
 #: Src/wptKeyEditDlgs.cpp:2176 Src/wptKeyEditDlgs.cpp:2181
-#: Src/wptKeyManagerDlg.cpp:995 Src/wptKeyManagerDlg.cpp:1776
+#: Src/wptKeyManagerDlg.cpp:992 Src/wptKeyManagerDlg.cpp:1775
 msgid "Key Edit"
 msgstr "ƒL[‚̕ҏW"
 
@@ -1320,11 +1320,11 @@
 #: Src/wptFileManager.cpp:134 Src/wptFileManager.cpp:173
 #: Src/wptFileManager.cpp:298 Src/wptFileManager.cpp:662
 #: Src/wptFileManager.cpp:807 Src/wptFileManager.cpp:922
-#: Src/wptFileManager.cpp:1491 Src/wptFileManager.cpp:1518
-#: Src/wptFileManager.cpp:1537 Src/wptFileManager.cpp:1788
-#: Src/wptFileManager.cpp:1850 Src/wptFileManagerDlg.cpp:503
-#: Src/wptFileManagerDlg.cpp:622 Src/wptFileStatDlg.cpp:152
-#: Src/wptMainProc.cpp:412 Src/wptMDSumDlg.cpp:181
+#: Src/wptFileManager.cpp:1503 Src/wptFileManager.cpp:1530
+#: Src/wptFileManager.cpp:1549 Src/wptFileManager.cpp:1800
+#: Src/wptFileManager.cpp:1862 Src/wptFileManagerDlg.cpp:522
+#: Src/wptFileManagerDlg.cpp:623 Src/wptFileStatDlg.cpp:152
+#: Src/wptMainProc.cpp:402 Src/wptMDSumDlg.cpp:181
 msgid "File Manager"
 msgstr "ƒtƒ@ƒCƒ‹ƒ}ƒl[ƒWƒƒ["
 
@@ -1423,17 +1423,17 @@
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:296
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:403
 # c:\oss\winpt\src\wptMainProc.cpp:211 c:\oss\winpt\src\wptMainProc.cpp:410
-#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1442
-#: Src/wptFileManagerDlg.cpp:555 Src/wptMainProc.cpp:200
-#: Src/wptMainProc.cpp:422 Src/wptMainProc.cpp:429
+#: Src/wptFileManager.cpp:1110 Src/wptFileManager.cpp:1454
+#: Src/wptFileManagerDlg.cpp:574 Src/wptMainProc.cpp:200
+#: Src/wptMainProc.cpp:412 Src/wptMainProc.cpp:419
 msgid "Sign"
 msgstr "–¼"
 
 # c:\oss\winpt\src\wptFileManager.cpp:868
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:401
 # c:\oss\winpt\src\wptMainProc.cpp:403 c:\oss\winpt\src\wptMainProc.cpp:407
-#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:553
-#: Src/wptMainProc.cpp:421 Src/wptMainProc.cpp:426
+#: Src/wptFileManager.cpp:1123 Src/wptFileManagerDlg.cpp:572
+#: Src/wptMainProc.cpp:411 Src/wptMainProc.cpp:416
 msgid "Encrypt"
 msgstr "ŒöŠJˆÃ†‰»"
 
@@ -1442,7 +1442,7 @@
 # c:\oss\winpt\src\wptFileManager.cpp:919
 # c:\oss\winpt\src\wptMainProc.cpp:401
 #: Src/wptFileManager.cpp:1150 Src/wptFileManager.cpp:1183
-#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:420
+#: Src/wptFileManager.cpp:1188 Src/wptMainProc.cpp:410
 msgid "Symmetric"
 msgstr "‹¤’ʈ͆‰»"
 
@@ -1479,25 +1479,25 @@
 msgstr "•œ†/Šm”F"
 
 # c:\oss\winpt\src\wptFileManager.cpp:963
-#: Src/wptFileManager.cpp:1311
+#: Src/wptFileManager.cpp:1312
 msgid "Choose Filename for Output"
 msgstr "o—̓tƒ@ƒCƒ‹–¼‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:980
-#: Src/wptFileManager.cpp:1320
+#: Src/wptFileManager.cpp:1321
 msgid "Please enter filename for plaintext file"
 msgstr "ƒvƒŒ[ƒ“ƒeƒLƒX—p‚̃gƒtƒ@ƒCƒ‹–¼‚ð“ü—Í‚µ‚Ä‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1006
 # c:\oss\winpt\src\wptFileManager.cpp:1011
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:402
-#: Src/wptFileManager.cpp:1358 Src/wptFileManager.cpp:1370
-#: Src/wptFileManagerDlg.cpp:554
+#: Src/wptFileManager.cpp:1363 Src/wptFileManager.cpp:1382
+#: Src/wptFileManagerDlg.cpp:573
 msgid "Decrypt"
 msgstr "•œ†"
 
 # c:\oss\winpt\src\wptErrors.cpp:71
-#: Src/wptFileManager.cpp:1364
+#: Src/wptFileManager.cpp:1369
 #, c-format
 msgid ""
 "Decryption failed.\n"
@@ -1506,7 +1506,7 @@
 "•œ†‚ªŽ¸”s‚µ‚Ü‚µ‚½B\n"
 "%s: ƒtƒ@ƒCƒ‹‚ªŠù‘¶‚µ‚Ü‚¹‚ñB"
 
-#: Src/wptFileManager.cpp:1371
+#: Src/wptFileManager.cpp:1383
 #, c-format
 msgid ""
 "The original file name is '%s'.\n"
@@ -1518,32 +1518,32 @@
 "‚±‚ê‚ð '%s' ‚Ì‘ã‚í‚è‚É–{“–‚ÉŽg—p‚µ‚Ü‚·‚©?"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1068
-#: Src/wptFileManager.cpp:1419
+#: Src/wptFileManager.cpp:1431
 msgid "Enter filename for signed file"
 msgstr "–¼‚µ‚½ƒtƒ@ƒCƒ‹‚É–¼‘O‚ð“ü—Í‚µ‚Ä‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1165
-#: Src/wptFileManager.cpp:1517
+#: Src/wptFileManager.cpp:1529
 msgid "Could not find detached signature in the clipboard."
 msgstr "ƒNƒŠƒbƒvƒ{[ƒh‚ÉŽæ‚èo‚µ‚½–¼‚ðŒ©‚Â‚¯‚邱‚Æ‚ªo—ˆ‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1184
-#: Src/wptFileManager.cpp:1537
+#: Src/wptFileManager.cpp:1549
 msgid "No files to check."
 msgstr "ƒ`ƒFƒbƒN‚·‚éƒtƒ@ƒCƒ‹‚ª‚ ‚è‚Ü‚¹‚ñB"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1212
-#: Src/wptFileManager.cpp:1554
+#: Src/wptFileManager.cpp:1566
 msgid "Select Data File"
 msgstr "ƒf[ƒ^ƒtƒ@ƒCƒ‹‚ð‘I‚Ô"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1212
-#: Src/wptFileManager.cpp:1556
+#: Src/wptFileManager.cpp:1568
 msgid "Selected Output File"
 msgstr "‘I‘ð‚µ‚½o—̓tƒ@ƒCƒ‹"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1218
-#: Src/wptFileManager.cpp:1584
+#: Src/wptFileManager.cpp:1596
 msgid "Invalid file name. Exit"
 msgstr "–³Œø‚ȃtƒ@ƒCƒ‹–¼BI—¹"
 
@@ -1558,7 +1558,7 @@
 # c:\oss\winpt\src\wptImportList.cpp:220
 # c:\oss\winpt\src\wptKeyManager.cpp:516
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:150
-#: Src/wptFileManager.cpp:1682 Src/wptFileManager.cpp:1693
+#: Src/wptFileManager.cpp:1694 Src/wptFileManager.cpp:1705
 #: Src/wptFileManagerDlg.cpp:243 Src/wptImportList.cpp:404
 #: Src/wptImportList.cpp:410 Src/wptImportList.cpp:420
 #: Src/wptImportList.cpp:428 Src/wptImportList.cpp:437
@@ -1569,7 +1569,7 @@
 
 # c:\oss\winpt\src\wptFileManager.cpp:1285
 # c:\oss\winpt\src\wptKeyManager.cpp:513
-#: Src/wptFileManager.cpp:1690
+#: Src/wptFileManager.cpp:1702
 msgid ""
 "Key without a self signature was dectected!\n"
 "(This key is NOT usable for encryption, etc)\n"
@@ -1585,7 +1585,7 @@
 # c:\oss\winpt\src\wptKeyManager.cpp:262
 # c:\oss\winpt\src\wptKeyManager.cpp:294
 # c:\oss\winpt\src\wptKeyManager.cpp:340
-#: Src/wptFileManager.cpp:1716 Src/wptKeyManager.cpp:264
+#: Src/wptFileManager.cpp:1728 Src/wptKeyManager.cpp:264
 #: Src/wptKeyManager.cpp:307 Src/wptKeyManager.cpp:342
 msgid "No key was selected for export."
 msgstr "ƒGƒLƒXƒ|[ƒg‚·‚邽‚߂̃L[‚ª‘I‘ð‚³‚ê‚Ä‚Ü‚¹‚ñB"
@@ -1593,7 +1593,7 @@
 # c:\oss\winpt\src\wptFileManager.cpp:1309
 # c:\oss\winpt\src\wptFileManager.cpp:1335
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:79
-#: Src/wptFileManager.cpp:1716 Src/wptFileManager.cpp:1739
+#: Src/wptFileManager.cpp:1728 Src/wptFileManager.cpp:1751
 #: Src/wptKeyserverDlg.cpp:90
 msgid "Export"
 msgstr "ƒGƒLƒXƒ|[ƒg"
@@ -1601,8 +1601,8 @@
 # c:\oss\winpt\src\wptFileManager.cpp:1327
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1106
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1138
-#: Src/wptFileManager.cpp:1724 Src/wptKeyManagerDlg.cpp:1712
-#: Src/wptKeyManagerDlg.cpp:1744
+#: Src/wptFileManager.cpp:1736 Src/wptKeyManagerDlg.cpp:1711
+#: Src/wptKeyManagerDlg.cpp:1743
 msgid "Choose Name for Key File"
 msgstr "ƒL[ƒtƒ@ƒCƒ‹‚É–¼‘O‚ð‘I‘ð‚·‚éB"
 
@@ -1611,51 +1611,51 @@
 # c:\oss\winpt\src\wptKeyEditDlgs.cpp:1113
 # c:\oss\winpt\src\wptKeyEditDlgs.cpp:1177
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:90
-#: Src/wptFileManager.cpp:1743 Src/wptKeyEditDlgs.cpp:1060
+#: Src/wptFileManager.cpp:1755 Src/wptKeyEditDlgs.cpp:1060
 #: Src/wptKeyEditDlgs.cpp:1333 Src/wptKeyEditDlgs.cpp:1406
 #: Src/wptKeyserverDlg.cpp:102
 msgid "GnuPG status"
 msgstr "GnuPG‚̏ó‘Ô"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1339
-#: Src/wptFileManager.cpp:1743
+#: Src/wptFileManager.cpp:1755
 #, c-format
 msgid "Finished (Output: %s)"
 msgstr "I—¹‚µ‚Ü‚µ‚½ (o—Í: %s)"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1381
-#: Src/wptFileManager.cpp:1789
+#: Src/wptFileManager.cpp:1801
 #, c-format
 msgid "%s: no valid OpenPGP data found."
 msgstr "%s: —LŒø‚ÈOpenPGPƒf[ƒ^‚ªŒ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
-#: Src/wptFileManager.cpp:1849
+#: Src/wptFileManager.cpp:1861
 msgid "Encrypting into a ZIP archive makes sense with multiple files"
 msgstr "‘½”‚̃tƒ@ƒCƒ‹‚ðZipƒA[ƒJƒCƒu‚Ɉ͆‰»‚·‚邱‚Æ‚ª—Ç‚¢‚±‚Æ‚Å‚·B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:963
-#: Src/wptFileManager.cpp:1854
+#: Src/wptFileManager.cpp:1866
 msgid "Choose File Name for Output"
 msgstr "o—̓tƒ@ƒCƒ‹–¼‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1450
-#: Src/wptFileManager.cpp:1924
+#: Src/wptFileManager.cpp:1936
 msgid "Choose a Name for the Archive"
 msgstr "ƒA[ƒJƒCƒu‚É–¼‘O‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1453
-#: Src/wptFileManager.cpp:1927
+#: Src/wptFileManager.cpp:1939
 msgid "Invalid archive name. Exit."
 msgstr "–³Œø‚ȃA[ƒJƒCƒu–¼BI—¹B"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1453
 # c:\oss\winpt\src\wptFileManager.cpp:1464
-#: Src/wptFileManager.cpp:1927 Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1939 Src/wptFileManager.cpp:1946
 msgid "Encrypt Directory"
 msgstr "ˆÃ†‰»ƒfƒBƒŒƒNƒgƒŠ"
 
 # c:\oss\winpt\src\wptFileManager.cpp:1464
-#: Src/wptFileManager.cpp:1934
+#: Src/wptFileManager.cpp:1946
 msgid "Could not create zip archive."
 msgstr "ˆ³kƒA[ƒJƒCƒu‚ðì¬‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
@@ -1690,7 +1690,7 @@
 # c:\oss\winpt\src\wptGPGOptDlg.cpp:90 c:\oss\winpt\src\wptGPGOptDlg.cpp:96
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:580
 #: Src/wptFileManagerDlg.cpp:82 Src/wptFileManagerDlg.cpp:285
-#: Src/wptKeyManagerDlg.cpp:959
+#: Src/wptKeyManagerDlg.cpp:956
 msgid "Options"
 msgstr "ƒIƒvƒVƒ‡ƒ“"
 
@@ -1719,8 +1719,8 @@
 msgstr "%s ‚É‚Í %d ƒL[‚ª‚ ‚è‚Ü‚·B"
 
 # c:\oss\winpt\src\wptOwnertrustDlg.cpp:41
-#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:472
-#: Src/wptKeyManagerDlg.cpp:932 Src/wptOwnertrustDlg.cpp:98
+#: Src/wptFileManagerDlg.cpp:211 Src/wptFileManagerDlg.cpp:491
+#: Src/wptKeyManagerDlg.cpp:929 Src/wptOwnertrustDlg.cpp:98
 msgid "File"
 msgstr "ƒtƒ@ƒCƒ‹"
 
@@ -1781,11 +1781,11 @@
 #: Src/wptFileManagerDlg.cpp:331 Src/wptKeyEditDlgs.cpp:1305
 #: Src/wptKeyEditDlgs.cpp:1356 Src/wptKeyEditDlgs.cpp:1432
 #: Src/wptKeyManager.cpp:683 Src/wptKeyManager.cpp:784
-#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1520
-#: Src/wptKeyManagerDlg.cpp:1536 Src/wptKeyManagerDlg.cpp:1564
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyManager.cpp:818 Src/wptKeyManagerDlg.cpp:1519
+#: Src/wptKeyManagerDlg.cpp:1535 Src/wptKeyManagerDlg.cpp:1563
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1701 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyserverSearchDlg.cpp:127
 msgid "Please select a key."
 msgstr "ƒL[‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
@@ -1799,27 +1799,27 @@
 msgstr "%d ƒIƒuƒWƒFƒNƒg‚ªƒ}[ƒN‚³‚ê‚Ü‚µ‚½B"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:350
-#: Src/wptFileManagerDlg.cpp:470 Src/wptMainProc.cpp:550
+#: Src/wptFileManagerDlg.cpp:489 Src/wptMainProc.cpp:540
 msgid "File Manager (use drag & drop to add files)"
 msgstr "ƒtƒ@ƒCƒ‹ƒ}ƒl[ƒWƒƒ[(ƒhƒ‰ƒbƒOEƒAƒ“ƒhEƒhƒƒbƒv‚ðŽg—p‚µ‚ĒljÁ‚·‚é)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:573
-#: Src/wptFileManagerDlg.cpp:473 Src/wptKeyManagerDlg.cpp:933
-#: Src/wptKeyManagerDlg.cpp:938 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptFileManagerDlg.cpp:492 Src/wptKeyManagerDlg.cpp:930
+#: Src/wptKeyManagerDlg.cpp:935 Src/wptKeyManagerDlg.cpp:946
 msgid "Edit"
 msgstr "•ÒW"
 
-#: Src/wptFileManagerDlg.cpp:474 Src/wptKeyManagerDlg.cpp:934
+#: Src/wptFileManagerDlg.cpp:493 Src/wptKeyManagerDlg.cpp:931
 msgid "View"
 msgstr "ƒrƒ…["
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:354
-#: Src/wptFileManagerDlg.cpp:475
+#: Src/wptFileManagerDlg.cpp:494
 msgid "&Open..."
 msgstr "ŠJ‚­(&O)..."
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:355
-#: Src/wptFileManagerDlg.cpp:476
+#: Src/wptFileManagerDlg.cpp:495
 msgid "&Encrypt"
 msgstr "ˆÃ†‰»(&E)"
 
@@ -1829,71 +1829,71 @@
 # c:\oss\winpt\src\wptClipEncryptDlg.cpp:134
 # c:\oss\winpt\src\wptClipEncryptDlg.cpp:168
 # c:\oss\winpt\src\wptMainProc.cpp:153 c:\oss\winpt\src\wptMainProc.cpp:223
-#: Src/wptFileManagerDlg.cpp:477 Src/wptFileManagerDlg.cpp:552
+#: Src/wptFileManagerDlg.cpp:496 Src/wptFileManagerDlg.cpp:571
 msgid "Encrypt into ZIP"
 msgstr "ZIP‚Ɉ͆‰»‚·‚é"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:356
-#: Src/wptFileManagerDlg.cpp:478
+#: Src/wptFileManagerDlg.cpp:497
 msgid "&Decrypt"
 msgstr "•œ†(&D)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:357
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:574
-#: Src/wptFileManagerDlg.cpp:479 Src/wptKeyManagerDlg.cpp:950
-#: Src/wptKeyManagerDlg.cpp:998
+#: Src/wptFileManagerDlg.cpp:498 Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:995
 msgid "&Sign"
 msgstr "–¼(&S)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:358
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:404
 # c:\oss\winpt\src\wptMainProc.cpp:404 c:\oss\winpt\src\wptMainProc.cpp:408
-#: Src/wptFileManagerDlg.cpp:480 Src/wptFileManagerDlg.cpp:556
-#: Src/wptMainProc.cpp:423 Src/wptMainProc.cpp:427
+#: Src/wptFileManagerDlg.cpp:499 Src/wptFileManagerDlg.cpp:575
+#: Src/wptMainProc.cpp:413 Src/wptMainProc.cpp:417
 msgid "Sign && Encrypt"
 msgstr "–¼‹y‚ш͆‰»"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:359
-#: Src/wptFileManagerDlg.cpp:481
+#: Src/wptFileManagerDlg.cpp:500
 msgid "&Verify"
 msgstr "Šm”F‚·‚é(&V)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:361
-#: Src/wptFileManagerDlg.cpp:482
+#: Src/wptFileManagerDlg.cpp:501
 msgid "S&ymmetric"
 msgstr "‹¤’ʈ͆‰»(&Y)"
 
 # c:\oss\winpt\src\wptClipImportDlg.cpp:181
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:362
-#: Src/wptFileManagerDlg.cpp:483
+#: Src/wptFileManagerDlg.cpp:502
 msgid "&Import"
 msgstr "ƒCƒ“ƒ|[ƒg(&I)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:363
-#: Src/wptFileManagerDlg.cpp:484
+#: Src/wptFileManagerDlg.cpp:503
 msgid "E&xport"
 msgstr "ƒGƒNƒXƒ|[ƒg(&X)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:364
 # c:\oss\winpt\src\wptMainProc.cpp:400
-#: Src/wptFileManagerDlg.cpp:485 Src/wptMainProc.cpp:419
+#: Src/wptFileManagerDlg.cpp:504 Src/wptMainProc.cpp:409
 msgid "Exit"
 msgstr "I—¹"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:575
-#: Src/wptFileManagerDlg.cpp:486
+#: Src/wptFileManagerDlg.cpp:505
 msgid "&Reset"
 msgstr "‰Šú‰»(&R)"
 
-#: Src/wptFileManagerDlg.cpp:487
+#: Src/wptFileManagerDlg.cpp:506
 msgid "Always on Top"
 msgstr "‚¢‚‚àÅ‘O–Ê"
 
-#: Src/wptFileManagerDlg.cpp:488
+#: Src/wptFileManagerDlg.cpp:507
 msgid "&Paste"
 msgstr "‚Í‚è•t‚¯(&P)"
 
-#: Src/wptFileManagerDlg.cpp:489
+#: Src/wptFileManagerDlg.cpp:508
 msgid "&Select All"
 msgstr "‘S‚Ä‚ð‘I‘ð‚·‚é(&S)"
 
@@ -1917,67 +1917,67 @@
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:270
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:317
 # c:\oss\winpt\src\wptRegistry.cpp:492
-#: Src/wptFileManagerDlg.cpp:490
+#: Src/wptFileManagerDlg.cpp:509
 msgid "&Preferences"
 msgstr "ƒJƒXƒ^ƒ€Ý’è(&P)"
 
-#: Src/wptFileManagerDlg.cpp:491 Src/wptFileManagerDlg.cpp:559
+#: Src/wptFileManagerDlg.cpp:510 Src/wptFileManagerDlg.cpp:578
 msgid "Send as Mail"
 msgstr "ƒ[ƒ‹‚Æ‚µ‚Ä‘—M‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:577
-#: Src/wptFileManagerDlg.cpp:492
+#: Src/wptFileManagerDlg.cpp:511
 msgid "&List Packets"
 msgstr "ƒpƒPƒbƒg‚̈ꗗ‚Ђ傤(&L)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:360
-#: Src/wptFileManagerDlg.cpp:494
+#: Src/wptFileManagerDlg.cpp:513
 msgid "&Wipe"
 msgstr "íœ(&W)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:406
-#: Src/wptFileManagerDlg.cpp:558
+#: Src/wptFileManagerDlg.cpp:577
 msgid "Wipe"
 msgstr "Žæ‚èÁ‚µ"
 
-#: Src/wptFileManagerDlg.cpp:560
+#: Src/wptFileManagerDlg.cpp:579
 msgid "List Packets"
 msgstr "ƒpƒPƒbƒg‚ðƒŠƒXƒg‚·‚é"
 
 # c:\oss\winpt\src\wptMDSumDlg.cpp:52
-#: Src/wptFileManagerDlg.cpp:606
+#: Src/wptFileManagerDlg.cpp:607
 msgid "&Calc Digest"
 msgstr "ƒ_ƒCƒWƒFƒXƒg‚ðŒvŽZ‚·‚é(&C)"
 
-#: Src/wptFileManagerDlg.cpp:621
+#: Src/wptFileManagerDlg.cpp:622
 msgid "This command requires admin privileges.\n"
 msgstr ""
 
 # c:\oss\winpt\src\wptKeysigDlg.cpp:82
-#: Src/wptFileManagerDlg.cpp:770
+#: Src/wptFileManagerDlg.cpp:771
 msgid "Are you sure you want to secure delete these files?"
 msgstr "–{“–‚É‚±‚ê‚ç‚̃tƒ@ƒCƒ‹‚ðˆÀ‘Síœ‚µ‚Ü‚·‚©Hn"
 
-#: Src/wptFileManagerDlg.cpp:771 Src/wptMainProc.cpp:100
+#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:100
 msgid "&Yes"
 msgstr "‚Í‚¢(&Y)"
 
-#: Src/wptFileManagerDlg.cpp:772 Src/wptMainProc.cpp:101
+#: Src/wptFileManagerDlg.cpp:773 Src/wptMainProc.cpp:101
 msgid "&No"
 msgstr "‚¢‚¢‚¦(&N)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:550
-#: Src/wptFileManagerDlg.cpp:815
+#: Src/wptFileManagerDlg.cpp:816
 msgid "Operation Status: Error"
 msgstr "‘€ìó‹µFƒGƒ‰["
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:550
-#: Src/wptFileManagerDlg.cpp:816
+#: Src/wptFileManagerDlg.cpp:817
 msgid "Operation Status: Done."
 msgstr "‘€ìó‹µFŠ®—¹B"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:573
-#: Src/wptFileManagerDlg.cpp:859
+#: Src/wptFileManagerDlg.cpp:860
 #, c-format
 msgid ""
 "Total Capacity: %12sk\n"
@@ -2042,7 +2042,7 @@
 msgstr "WinPTÅ‰‚̃Xƒ^[ƒg"
 
 # c:\oss\winpt\src\wptGPG.cpp:734
-#: Src/wptGPG.cpp:821
+#: Src/wptGPG.cpp:839
 msgid ""
 "The selected keyring has the read-only file\n"
 "attribute. In this state you do not have write\n"
@@ -2053,23 +2053,23 @@
 "‚±‚Ì‘®«‚ðíœ‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptGPG.cpp:737
-#: Src/wptGPG.cpp:824
+#: Src/wptGPG.cpp:842
 msgid "GPG Information"
 msgstr "GPGƒCƒ“ƒtƒH"
 
 # c:\oss\winpt\src\wptGPG.cpp:741
-#: Src/wptGPG.cpp:828
+#: Src/wptGPG.cpp:846
 msgid "Could not reset read-only state."
 msgstr "ƒŠ[ƒhƒIƒ“ƒŠ[ó‘Ô‚ð‰Šú‰»‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptGPG.cpp:178 c:\oss\winpt\src\wptGPG.cpp:742
 # c:\oss\winpt\src\wptGPG.cpp:1029 c:\oss\winpt\src\wptGPG.cpp:1038
-#: Src/wptGPG.cpp:829 Src/wptGPG.cpp:1110 Src/wptGPG.cpp:1119
+#: Src/wptGPG.cpp:847 Src/wptGPG.cpp:1128 Src/wptGPG.cpp:1137
 msgid "GPG Error"
 msgstr "GPGƒGƒ‰["
 
 # c:\oss\winpt\src\wptGPG.cpp:757
-#: Src/wptGPG.cpp:841
+#: Src/wptGPG.cpp:859
 msgid ""
 "You do not have file access to modify the contents of\n"
 "one or both of the selected keyrings.\n"
@@ -2084,7 +2084,7 @@
 "ƒvƒƒOƒ‰ƒ€‚ª‚»‚ê‚ðŠJ‚¢‚½‚½‚߂ƍl‚¦‚ç‚ê‚Ü‚·B\n"
 
 # c:\oss\winpt\src\wptGPG.cpp:762
-#: Src/wptGPG.cpp:846
+#: Src/wptGPG.cpp:864
 msgid "GPG Warning"
 msgstr "GPGŒx"
 
@@ -2108,12 +2108,12 @@
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:270
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:317
 # c:\oss\winpt\src\wptRegistry.cpp:492
-#: Src/wptGPG.cpp:870 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
+#: Src/wptGPG.cpp:888 Src/wptGPGPrefsDlg.cpp:216 Src/wptGPGPrefsDlg.cpp:222
 #: Src/wptGPGPrefsDlg.cpp:228 Src/wptGPGPrefsDlg.cpp:234
 #: Src/wptGPGPrefsDlg.cpp:239 Src/wptGPGPrefsDlg.cpp:244
 #: Src/wptGPGPrefsDlg.cpp:250 Src/wptGPGPrefsDlg.cpp:264
-#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:960
-#: Src/wptMainProc.cpp:439 Src/wptPreferencesDlg.cpp:215
+#: Src/wptKeyEditDlgs.cpp:1724 Src/wptKeyManagerDlg.cpp:957
+#: Src/wptMainProc.cpp:429 Src/wptPreferencesDlg.cpp:215
 #: Src/wptPreferencesDlg.cpp:260 Src/wptPreferencesDlg.cpp:272
 #: Src/wptPreferencesDlg.cpp:284 Src/wptPreferencesDlg.cpp:315
 #: Src/wptRegistry.cpp:591
@@ -2121,7 +2121,7 @@
 msgstr "ƒJƒXƒ^ƒ€Ý’è"
 
 # c:\oss\winpt\src\wptGPG.cpp:783
-#: Src/wptGPG.cpp:871
+#: Src/wptGPG.cpp:889
 #, c-format
 msgid ""
 "%s does not exit.\n"
@@ -2131,47 +2131,47 @@
 "‚±‚̃fƒBƒŒƒNƒgƒŠ[‚ðì¬‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptGPG.cpp:863
-#: Src/wptGPG.cpp:899
+#: Src/wptGPG.cpp:917
 msgid "Please choose your Public Keyring"
 msgstr "ŒöŠJƒL[ƒŠƒ“ƒO‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptGPG.cpp:866 c:\oss\winpt\src\wptGPG.cpp:886
-#: Src/wptGPG.cpp:902 Src/wptGPG.cpp:924
+#: Src/wptGPG.cpp:920 Src/wptGPG.cpp:942
 msgid "No keyring was chosen. Exit."
 msgstr "ƒL[ƒŠƒ“ƒO‚ª‘I‘ð‚³‚ê‚Ä‚Ü‚¹‚ñBI—¹B"
 
 # c:\oss\winpt\src\wptGPG.cpp:872
-#: Src/wptGPG.cpp:909
+#: Src/wptGPG.cpp:927
 msgid "Overwrite old public keyring?"
 msgstr "ŒÃ‚¢ŒöŠJŒ®‚ðã‘‚«‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptGPG.cpp:877 c:\oss\winpt\src\wptGPG.cpp:896
-#: Src/wptGPG.cpp:915 Src/wptGPG.cpp:936
+#: Src/wptGPG.cpp:933 Src/wptGPG.cpp:954
 msgid "Could not copy file."
 msgstr "ƒtƒ@ƒCƒ‹‚ðƒRƒs[‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptGPG.cpp:883
-#: Src/wptGPG.cpp:921
+#: Src/wptGPG.cpp:939
 msgid "Please choose your Secret Keyring"
 msgstr "”é–§ƒL[ƒŠƒ“ƒO‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptGPG.cpp:891
-#: Src/wptGPG.cpp:930
+#: Src/wptGPG.cpp:948
 msgid "Overwrite old secret keyring?"
 msgstr "ŒÃ‚¢”é–§ƒL[ƒŠƒ“ƒO‚ðã‘‚«‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptGPG.cpp:942 c:\oss\winpt\src\wptGPG.cpp:1004
-#: Src/wptGPG.cpp:980 Src/wptGPG.cpp:1069 Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:998 Src/wptGPG.cpp:1087 Src/wptGPG.cpp:1100
 msgid "Backup"
 msgstr "ƒoƒbƒNƒAƒbƒv"
 
 # c:\oss\winpt\src\wptGPG.cpp:942
-#: Src/wptGPG.cpp:980
+#: Src/wptGPG.cpp:998
 #, c-format
 msgid "Backup keyring \"%s\" failed"
 msgstr "ˆÈ‰º‚̃oƒbƒNƒAƒbƒvƒL[ƒŠƒ“ƒO‚ª \"%s\" Ž¸”s‚µ‚Ü‚µ‚½B"
 
-#: Src/wptGPG.cpp:1070
+#: Src/wptGPG.cpp:1088
 #, c-format
 msgid ""
 "The backup drive '%s' does not seems to accessable.\n"
@@ -2181,13 +2181,13 @@
 "‘±‚¯‚é‚̂Ƀhƒ‰ƒCƒu‚ð‘}“ü‚Ü‚½‚̓`ƒFƒbƒN‚µ‚Ä‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptGPG.cpp:1004
-#: Src/wptGPG.cpp:1082
+#: Src/wptGPG.cpp:1100
 #, c-format
 msgid "Invalid backup mode %d"
 msgstr "–³Œø‚ȃoƒbƒNƒAƒbƒvƒ‚[ƒh %d"
 
 # c:\oss\winpt\src\wptGPG.cpp:1029
-#: Src/wptGPG.cpp:1109
+#: Src/wptGPG.cpp:1127
 msgid "No GPG error description available."
 msgstr "GPGƒGƒ‰[‚̏ڍׂ͂ ‚è‚Ü‚¹‚ñB"
 
@@ -2278,8 +2278,8 @@
 # c:\oss\winpt\src\wptGPGPrefsDlg.cpp:61
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1071
 # c:\oss\winpt\src\wptMainProc.cpp:572
-#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1674
-#: Src/wptMainProc.cpp:598
+#: Src/wptGPGPrefsDlg.cpp:141 Src/wptKeyManagerDlg.cpp:1673
+#: Src/wptMainProc.cpp:588
 msgid "GnuPG Preferences"
 msgstr "GnuPGƒJƒXƒ^ƒ€Ý’è"
 
@@ -2457,23 +2457,23 @@
 #: Src/wptKeyManager.cpp:731 Src/wptKeyManager.cpp:757
 #: Src/wptKeyManager.cpp:784 Src/wptKeyManager.cpp:789
 #: Src/wptKeyManager.cpp:813 Src/wptKeyManager.cpp:818
-#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:888
-#: Src/wptKeyManager.cpp:893 Src/wptKeyManager.cpp:949
-#: Src/wptKeyManager.cpp:979 Src/wptKeyManager.cpp:1066
-#: Src/wptKeyManagerDlg.cpp:1182 Src/wptKeyManagerDlg.cpp:1195
-#: Src/wptKeyManagerDlg.cpp:1205 Src/wptKeyManagerDlg.cpp:1499
-#: Src/wptKeyManagerDlg.cpp:1521 Src/wptKeyManagerDlg.cpp:1536
-#: Src/wptKeyManagerDlg.cpp:1546 Src/wptKeyManagerDlg.cpp:1554
-#: Src/wptKeyManagerDlg.cpp:1564 Src/wptKeyManagerDlg.cpp:1570
-#: Src/wptKeyManagerDlg.cpp:1580 Src/wptKeyManagerDlg.cpp:1595
-#: Src/wptKeyManagerDlg.cpp:1612 Src/wptKeyManagerDlg.cpp:1644
-#: Src/wptKeyManagerDlg.cpp:1703 Src/wptKeyManagerDlg.cpp:1721
-#: Src/wptKeyManagerDlg.cpp:1726 Src/wptKeyManagerDlg.cpp:1731
-#: Src/wptKeyManagerDlg.cpp:1802 Src/wptKeyManagerDlg.cpp:1807
-#: Src/wptKeyManagerDlg.cpp:1940 Src/wptKeysigDlg.cpp:93
+#: Src/wptKeyManager.cpp:835 Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:897 Src/wptKeyManager.cpp:953
+#: Src/wptKeyManager.cpp:983 Src/wptKeyManager.cpp:1070
+#: Src/wptKeyManagerDlg.cpp:1179 Src/wptKeyManagerDlg.cpp:1192
+#: Src/wptKeyManagerDlg.cpp:1202 Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1520 Src/wptKeyManagerDlg.cpp:1535
+#: Src/wptKeyManagerDlg.cpp:1545 Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1563 Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1579 Src/wptKeyManagerDlg.cpp:1594
+#: Src/wptKeyManagerDlg.cpp:1611 Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1702 Src/wptKeyManagerDlg.cpp:1720
+#: Src/wptKeyManagerDlg.cpp:1725 Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1801 Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1939 Src/wptKeysigDlg.cpp:93
 #: Src/wptKeysigDlg.cpp:105 Src/wptKeysigDlg.cpp:314 Src/wptKeysigDlg.cpp:387
-#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:413
-#: Src/wptMainProc.cpp:561 Src/wptMainProc.cpp:569
+#: Src/wptKeysigDlg.cpp:397 Src/wptKeysigDlg.cpp:440 Src/wptMainProc.cpp:403
+#: Src/wptMainProc.cpp:551 Src/wptMainProc.cpp:559
 msgid "Key Manager"
 msgstr "ƒL[ƒ}ƒl[ƒWƒƒ["
 
@@ -2616,8 +2616,8 @@
 # c:\oss\winpt\src\wptSigList.cpp:41 c:\oss\winpt\src\wptVerifyList.cpp:79
 # c:\oss\winpt\src\wptVerifyList.cpp:88
 #: Src/wptImportList.cpp:345 Src/wptKeylist.cpp:576 Src/wptKeylist.cpp:584
-#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyManagerDlg.cpp:946
-#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:53
+#: Src/wptKeyManagerDlg.cpp:874 Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyserverSearchDlg.cpp:54 Src/wptSigList.cpp:53
 #: Src/wptVerifyList.cpp:112
 msgid "User ID"
 msgstr "ƒ†[ƒU[ID"
@@ -2627,7 +2627,7 @@
 # c:\oss\winpt\src\wptKeylist.cpp:51
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:42
 #: Src/wptImportList.cpp:346 Src/wptKeylist.cpp:578 Src/wptKeylist.cpp:587
-#: Src/wptKeyManagerDlg.cpp:880 Src/wptKeyserverSearchDlg.cpp:50
+#: Src/wptKeyManagerDlg.cpp:877 Src/wptKeyserverSearchDlg.cpp:50
 msgid "Size"
 msgstr "ƒTƒCƒY"
 
@@ -2638,9 +2638,9 @@
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:43
 # c:\oss\winpt\src\wptSigList.cpp:45 c:\oss\winpt\src\wptVerifyList.cpp:87
 #: Src/wptImportList.cpp:347 Src/wptKeyEditDlgs.cpp:1077
-#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:878
-#: Src/wptKeyManagerDlg.cpp:969 Src/wptKeyRevokersDlg.cpp:58
-#: Src/wptKeyserverSearchDlg.cpp:51 Src/wptSigList.cpp:57
+#: Src/wptKeylist.cpp:577 Src/wptKeylist.cpp:585 Src/wptKeyManagerDlg.cpp:875
+#: Src/wptKeyManagerDlg.cpp:966 Src/wptKeyRevokersDlg.cpp:58
+#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:57
 #: Src/wptVerifyList.cpp:111
 msgid "Key ID"
 msgstr "ƒL[‚ÌID"
@@ -2652,14 +2652,14 @@
 # c:\oss\winpt\src\wptSigList.cpp:44
 #: Src/wptImportList.cpp:348 Src/wptKeyEditDlgs.cpp:1078
 #: Src/wptKeyEditDlgs.cpp:1174 Src/wptKeylist.cpp:591
-#: Src/wptKeyManagerDlg.cpp:884 Src/wptKeyManagerDlg.cpp:972
-#: Src/wptKeyserverSearchDlg.cpp:52 Src/wptSigList.cpp:56
+#: Src/wptKeyManagerDlg.cpp:881 Src/wptKeyManagerDlg.cpp:969
+#: Src/wptKeyserverSearchDlg.cpp:53 Src/wptSigList.cpp:56
 msgid "Creation"
 msgstr "ì¬"
 
 # c:\oss\winpt\src\wptImportList.cpp:135 c:\oss\winpt\src\wptKeylist.cpp:50
 #: Src/wptImportList.cpp:349 Src/wptKeylist.cpp:586
-#: Src/wptKeyManagerDlg.cpp:879 Src/wptKeyManagerDlg.cpp:971
+#: Src/wptKeyManagerDlg.cpp:876 Src/wptKeyManagerDlg.cpp:968
 msgid "Type"
 msgstr "Ží—Þ"
 
@@ -2674,7 +2674,7 @@
 
 # c:\oss\winpt\src\WinPT.cpp:247 c:\oss\winpt\src\wptGPG.cpp:864
 # c:\oss\winpt\src\wptGPG.cpp:884
-#: Src/wptKeyCache.cpp:748
+#: Src/wptKeyCache.cpp:750
 msgid "Load GPG Keyrings..."
 msgstr "GPGƒL[ƒŠƒ“ƒO‚ðƒ[ƒh‚·‚é..."
 
@@ -2980,7 +2980,7 @@
 #: Src/wptKeyEditDlgs.cpp:910 Src/wptKeyEditDlgs.cpp:942
 #: Src/wptKeyEditDlgs.cpp:1022 Src/wptKeyEditDlgs.cpp:1352
 #: Src/wptKeyEditDlgs.cpp:1427 Src/wptKeyEditDlgs.cpp:1489
-#: Src/wptKeyManagerDlg.cpp:1553
+#: Src/wptKeyManagerDlg.cpp:1552
 msgid "There is no secret key available!"
 msgstr "”é–§Œ®‚ª‚ ‚è‚Ü‚¹‚ñB"
 
@@ -3049,7 +3049,7 @@
 msgstr "ƒpƒXƒtƒŒ[ƒY‚̕ύX‚͐³‚µ‚­‚Å‚«‚Ü‚µ‚½B"
 
 # c:\oss\winpt\src\wptKeyEditDlgs.cpp:806
-#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:885
+#: Src/wptKeyEditDlgs.cpp:1076 Src/wptKeyManagerDlg.cpp:882
 msgid "Description"
 msgstr "Ú×"
 
@@ -3066,7 +3066,7 @@
 # c:\oss\winpt\src\wptKeyEditDlgs.cpp:918 c:\oss\winpt\src\wptKeylist.cpp:42
 # c:\oss\winpt\src\wptKeylist.cpp:53
 #: Src/wptKeyEditDlgs.cpp:1171 Src/wptKeylist.cpp:580 Src/wptKeylist.cpp:589
-#: Src/wptKeyManagerDlg.cpp:882
+#: Src/wptKeyManagerDlg.cpp:879
 msgid "Validity"
 msgstr "—LŒø«"
 
@@ -3438,8 +3438,8 @@
 # c:\oss\winpt\src\wptOwnertrustDlg.cpp:81
 # c:\oss\winpt\src\wptOwnertrustDlg.cpp:86
 #: Src/wptKeyEditOwnertrustDlg.cpp:88 Src/wptKeyEditOwnertrustDlg.cpp:95
-#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:940
-#: Src/wptKeyManagerDlg.cpp:1768 Src/wptKeyPropsDlg.cpp:293
+#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:937
+#: Src/wptKeyManagerDlg.cpp:1767 Src/wptKeyPropsDlg.cpp:293
 #: Src/wptOwnertrustDlg.cpp:97 Src/wptOwnertrustDlg.cpp:121
 #: Src/wptOwnertrustDlg.cpp:133
 msgid "Ownertrust"
@@ -3477,7 +3477,7 @@
 #: Src/wptKeygenDlg.cpp:418 Src/wptKeygenDlg.cpp:423 Src/wptKeygenDlg.cpp:430
 #: Src/wptKeygenDlg.cpp:438 Src/wptKeygenDlg.cpp:452 Src/wptKeygenDlg.cpp:461
 #: Src/wptKeygenDlg.cpp:485 Src/wptKeygenDlg.cpp:581
-#: Src/wptKeyManagerDlg.cpp:1635 Src/wptPassphraseDlg.cpp:109
+#: Src/wptKeyManagerDlg.cpp:1634 Src/wptPassphraseDlg.cpp:109
 msgid "Key Generation"
 msgstr "ƒL[‚̍쐬"
 
@@ -3663,7 +3663,7 @@
 # c:\oss\winpt\src\wptKeygenDlg.cpp:389 c:\oss\winpt\src\wptKeygenDlg.cpp:413
 #: Src/wptKeygenDlg.cpp:537 Src/wptKeygenDlg.cpp:559 Src/wptKeygenDlg.cpp:564
 #: Src/wptKeygenDlg.cpp:571 Src/wptKeygenDlg.cpp:577 Src/wptKeygenDlg.cpp:600
-#: Src/wptKeyManagerDlg.cpp:1658
+#: Src/wptKeyManagerDlg.cpp:1657
 msgid "Key Generation Wizard"
 msgstr "ƒL[ì¬‚̃EƒBƒU[ƒh"
 
@@ -3776,14 +3776,14 @@
 msgstr "ƒL[ƒyƒA"
 
 # c:\oss\winpt\src\wptKeylist.cpp:41 c:\oss\winpt\src\wptKeylist.cpp:52
-#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:881
-#: Src/wptKeyManagerDlg.cpp:970
+#: Src/wptKeylist.cpp:579 Src/wptKeylist.cpp:588 Src/wptKeyManagerDlg.cpp:878
+#: Src/wptKeyManagerDlg.cpp:967
 msgid "Cipher"
 msgstr "ˆÃ†"
 
 # c:\oss\winpt\src\wptKeylist.cpp:54 c:\oss\winpt\src\wptVerifyList.cpp:78
 # c:\oss\winpt\src\wptVerifyList.cpp:86
-#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:883
+#: Src/wptKeylist.cpp:590 Src/wptKeyManagerDlg.cpp:880
 #: Src/wptVerifyList.cpp:110
 msgid "Trust"
 msgstr "M—p"
@@ -3792,12 +3792,12 @@
 # c:\oss\winpt\src\wptFileManager.cpp:1030
 # c:\oss\winpt\src\wptKeylist.cpp:569 c:\oss\winpt\src\wptPassphraseCB.cpp:75
 # c:\oss\winpt\src\wptVerifyList.cpp:160
-#: Src/wptKeylist.cpp:762 Src/wptPassphraseCB.cpp:124
+#: Src/wptKeylist.cpp:761 Src/wptPassphraseCB.cpp:124
 msgid "Invalid User ID"
 msgstr "–³Œø‚ȃ†[ƒU[ID"
 
 # c:\oss\winpt\src\wptKeylist.cpp:745
-#: Src/wptKeylist.cpp:1030
+#: Src/wptKeylist.cpp:1029
 #, c-format
 msgid ""
 "It is NOT certain that the key belongs to the person\n"
@@ -3813,12 +3813,12 @@
 "‚Ç‚¤‚¹‚±‚ê‚ð \"%s\" Žg—p‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptKeylist.cpp:753 c:\oss\winpt\src\wptKeylist.cpp:820
-#: Src/wptKeylist.cpp:1038 Src/wptKeylist.cpp:1100
+#: Src/wptKeylist.cpp:1037 Src/wptKeylist.cpp:1099
 msgid "Recipients"
 msgstr "ŽóMŽÒ"
 
 # c:\oss\winpt\src\wptKeylist.cpp:819
-#: Src/wptKeylist.cpp:1101
+#: Src/wptKeylist.cpp:1100
 #, c-format
 msgid ""
 "KeyID %s.\n"
@@ -3828,7 +3828,7 @@
 "–{“–‚É–³Œø‚ȃL[‚ðƒGƒLƒXƒ|[ƒg‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptKeylist.cpp:923
-#: Src/wptKeylist.cpp:1203
+#: Src/wptKeylist.cpp:1202
 msgid "Secret Key List"
 msgstr "”é–§Œ®‚̈ꗗ‚Ђ傤"
 
@@ -3995,53 +3995,53 @@
 msgstr "‚ЂƂ‚̃L[‚¾‚¯‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B"
 
 # c:\oss\winpt\src\wptKeyManager.cpp:733
-#: Src/wptKeyManager.cpp:887
+#: Src/wptKeyManager.cpp:891
 msgid "Do you really want to refresh all keys in the keyring?"
 msgstr "ƒL[ƒŠƒ“ƒO‚É‚ ‚é‚·‚ׂẴL[‚ð–{“–‚ɃŠƒtƒŒƒbƒVƒ…‚µ‚½‚¢‚Å‚·‚ªH"
 
 # c:\oss\winpt\src\wptKeyManager.cpp:727
-#: Src/wptKeyManager.cpp:892
+#: Src/wptKeyManager.cpp:896
 msgid "Could not connect to keyserver, abort procedure."
 msgstr "ƒL[ƒT[ƒo[‚ɐڑ±‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B’†Ž~‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:304
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search"
 msgstr "ŒŸõ"
 
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:304
-#: Src/wptKeyManager.cpp:963
+#: Src/wptKeyManager.cpp:967
 msgid "Search for:"
 msgstr "ŒŸõ‚·‚邱‚ƁF"
 
-#: Src/wptKeyManager.cpp:974
+#: Src/wptKeyManager.cpp:978
 #, c-format
 msgid "String pattern \"%s\" not found."
 msgstr "ŽŸ‚Ì•¶Žšƒpƒ^[ƒ“‚ª\"%s\" Œ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:74
-#: Src/wptKeyManager.cpp:1043 Src/wptKeyRevokeDlg.cpp:87
+#: Src/wptKeyManager.cpp:1047 Src/wptKeyRevokeDlg.cpp:87
 msgid "0. No reason specified"
 msgstr "0. ——R‚Í–¾Ž¦‚³‚ê‚Ä‚¢‚Ü‚¹‚ñB"
 
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:75
-#: Src/wptKeyManager.cpp:1044 Src/wptKeyRevokeDlg.cpp:88
+#: Src/wptKeyManager.cpp:1048 Src/wptKeyRevokeDlg.cpp:88
 msgid "1. Key has been compromised"
 msgstr "1. ƒL[‚͐M—p‚Å‚«‚È‚­‚È‚Á‚Ä‚¢‚Ü‚·B"
 
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:76
-#: Src/wptKeyManager.cpp:1045 Src/wptKeyRevokeDlg.cpp:89
+#: Src/wptKeyManager.cpp:1049 Src/wptKeyRevokeDlg.cpp:89
 msgid "2. Key is superseded"
 msgstr "2. ƒL[‚Í”pŽ~‚³‚ê‚Ä‚¢‚Ü‚·B"
 
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:77
-#: Src/wptKeyManager.cpp:1046 Src/wptKeyRevokeDlg.cpp:90
+#: Src/wptKeyManager.cpp:1050 Src/wptKeyRevokeDlg.cpp:90
 msgid "3. Key is no longer used"
 msgstr "3. ƒL[‚Í‚à‚Í‚âŽg‚í‚ê‚Ä‚¢‚Ü‚¹‚ñ "
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:272
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:763
-#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:990
+#: Src/wptKeyManagerDlg.cpp:454 Src/wptKeyManagerDlg.cpp:987
 msgid "Paste Key from Clipboard"
 msgstr "ƒNƒŠƒbƒvƒ{[ƒh‚©‚çƒL[‚ð‚Í‚è•t‚¯‚é"
 
@@ -4074,71 +4074,71 @@
 # c:\oss\winpt\src\wptKeylist.cpp:39 c:\oss\winpt\src\wptKeylist.cpp:49
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:43
 # c:\oss\winpt\src\wptSigList.cpp:45 c:\oss\winpt\src\wptVerifyList.cpp:87
-#: Src/wptKeyManagerDlg.cpp:935
+#: Src/wptKeyManagerDlg.cpp:932
 msgid "Key"
 msgstr "ƒL["
 
 # c:\oss\winpt\src\wptGroupsDlg.cpp:49
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1180
-#: Src/wptKeyManagerDlg.cpp:936 Src/wptKeyManagerDlg.cpp:1220
+#: Src/wptKeyManagerDlg.cpp:933 Src/wptKeyManagerDlg.cpp:1217
 msgid "Groups"
 msgstr "ƒOƒ‹[ƒv"
 
-#: Src/wptKeyManagerDlg.cpp:939
+#: Src/wptKeyManagerDlg.cpp:936
 msgid "Send Mail..."
 msgstr "ƒ[ƒ‹‚𑗐M‚·‚é..."
 
-#: Src/wptKeyManagerDlg.cpp:941
+#: Src/wptKeyManagerDlg.cpp:938
 msgid "&Copy\tCtrl+C"
 msgstr "ƒRƒs[(&C)\tCtrl+C"
 
-#: Src/wptKeyManagerDlg.cpp:942
+#: Src/wptKeyManagerDlg.cpp:939
 msgid "&Paste\tCtrl+V"
 msgstr "‚Í‚è•t‚¯(&P)\tCtrl+V"
 
-#: Src/wptKeyManagerDlg.cpp:943
+#: Src/wptKeyManagerDlg.cpp:940
 msgid "Search...\tCtrl+F"
 msgstr "ŒŸõ...\tCtrl+F"
 
-#: Src/wptKeyManagerDlg.cpp:944
+#: Src/wptKeyManagerDlg.cpp:941
 msgid "Select All\tCtrl+A"
 msgstr "‚·‚ׂČŸõ\tCtrl+A"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:569
-#: Src/wptKeyManagerDlg.cpp:945
+#: Src/wptKeyManagerDlg.cpp:942
 msgid "&Quit"
 msgstr "I—¹(&Q)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:571
-#: Src/wptKeyManagerDlg.cpp:947
+#: Src/wptKeyManagerDlg.cpp:944
 msgid "&Expert"
 msgstr "ƒGƒNƒXƒp[ƒg(&E)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:572
-#: Src/wptKeyManagerDlg.cpp:948
+#: Src/wptKeyManagerDlg.cpp:945
 msgid "&Normal"
 msgstr "•’Ê(&N)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:575
-#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:952
-#: Src/wptKeyManagerDlg.cpp:996
+#: Src/wptKeyManagerDlg.cpp:948 Src/wptKeyManagerDlg.cpp:949
+#: Src/wptKeyManagerDlg.cpp:993
 msgid "&Delete"
 msgstr "íœ(&D)"
 
 # c:\oss\winpt\src\wptKeyPropsDlg.cpp:115
-#: Src/wptKeyManagerDlg.cpp:953 Src/wptKeyManagerDlg.cpp:997
+#: Src/wptKeyManagerDlg.cpp:950 Src/wptKeyManagerDlg.cpp:994
 msgid "&Revoke Cert"
 msgstr "Ø–¾‘‚𖳌ø‰»‚·‚é(&R)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:577
-#: Src/wptKeyManagerDlg.cpp:954 Src/wptKeyManagerDlg.cpp:993
+#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:990
 msgid "&List Signatures"
 msgstr "–¼‚̈ꗗ‚Ђ傤(&L)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:578
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:958
 # c:\oss\winpt\src\wptKeyTrustPathDlg.cpp:126
-#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:1575
+#: Src/wptKeyManagerDlg.cpp:952 Src/wptKeyManagerDlg.cpp:1574
 #: Src/wptKeyTrustPathDlg.cpp:130
 msgid "List Trust Path"
 msgstr "ƒgƒ‰ƒXƒgƒpƒXˆê——‚Ђ傤"
@@ -4146,112 +4146,112 @@
 # c:\oss\winpt\src\wptFileManager.cpp:1309
 # c:\oss\winpt\src\wptFileManager.cpp:1335
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:79
-#: Src/wptKeyManagerDlg.cpp:956
+#: Src/wptKeyManagerDlg.cpp:953
 msgid "&Export..."
 msgstr "ƒGƒLƒXƒ|[ƒg(&E)..."
 
 # c:\oss\winpt\src\wptClipImportDlg.cpp:181
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:362
-#: Src/wptKeyManagerDlg.cpp:957
+#: Src/wptKeyManagerDlg.cpp:954
 msgid "&Import..."
 msgstr "ƒCƒ“ƒ|[ƒg...(&I)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:579
 # c:\oss\winpt\src\wptKeysigDlg.cpp:334
-#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyManagerDlg.cpp:994
+#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:991
 #: Src/wptKeysigDlg.cpp:425
 msgid "&Properties"
 msgstr "‘®«(&P)"
 
 # c:\oss\winpt\src\wptKeylist.cpp:923
-#: Src/wptKeyManagerDlg.cpp:962
+#: Src/wptKeyManagerDlg.cpp:959
 msgid "E&xport Secret Key"
 msgstr "”é–§Œ®‚ðƒGƒLƒXƒ|[ƒg‚·‚é(&E)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:583
-#: Src/wptKeyManagerDlg.cpp:963
+#: Src/wptKeyManagerDlg.cpp:960
 msgid "Re&load Key Cache"
 msgstr "ƒL[ƒLƒƒƒbƒVƒ…‚ðƒŠƒ[ƒh‚·‚é(&L)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:584
-#: Src/wptKeyManagerDlg.cpp:964
+#: Src/wptKeyManagerDlg.cpp:961
 msgid "R&everify Signatures"
 msgstr "–¼‚ðÄŠm”F‚·‚é(&E)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:764
-#: Src/wptKeyManagerDlg.cpp:965
+#: Src/wptKeyManagerDlg.cpp:962
 msgid "Refresh &Keys (Keyserver)"
 msgstr "ƒL[‚ðƒL[ƒT[ƒo[‚æ‚èXV‚·‚é(&K)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:586
 # c:\oss\winpt\src\wptTextInputDlg.cpp:47
-#: Src/wptKeyManagerDlg.cpp:966 Src/wptTextInputDlg.cpp:49
+#: Src/wptKeyManagerDlg.cpp:963 Src/wptTextInputDlg.cpp:49
 msgid "Info"
 msgstr "ƒo[ƒWƒ‡ƒ“î•ñ"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:761
-#: Src/wptKeyManagerDlg.cpp:985
+#: Src/wptKeyManagerDlg.cpp:982
 msgid "Copy User ID to Clipboard"
 msgstr "ƒ†[ƒU[ID‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚éB"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:762
-#: Src/wptKeyManagerDlg.cpp:986
+#: Src/wptKeyManagerDlg.cpp:983
 msgid "Copy Key ID to Clipboard"
 msgstr "ƒL[ID‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:762
-#: Src/wptKeyManagerDlg.cpp:987
+#: Src/wptKeyManagerDlg.cpp:984
 msgid "Copy Fingerprint to Clipboard"
 msgstr "ƒtƒBƒ“ƒK[ƒvƒŠƒ“ƒg‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:762
-#: Src/wptKeyManagerDlg.cpp:988
+#: Src/wptKeyManagerDlg.cpp:985
 msgid "Copy Key Info to Clipboard"
 msgstr "ƒL[ƒCƒ“ƒtƒH‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:762
-#: Src/wptKeyManagerDlg.cpp:989
+#: Src/wptKeyManagerDlg.cpp:986
 msgid "Copy Key to Clipboard"
 msgstr "ƒL[‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:764
-#: Src/wptKeyManagerDlg.cpp:991
+#: Src/wptKeyManagerDlg.cpp:988
 msgid "Refresh from Keyserver"
 msgstr "ƒL[ƒT[ƒo[‚æ‚èXV‚·‚é"
 
-#: Src/wptKeyManagerDlg.cpp:992
+#: Src/wptKeyManagerDlg.cpp:989
 msgid "Set Implicit &Trust"
 msgstr "ˆÃ–ِM—p‚ðÝ’è‚·‚é(&T)"
 
 # c:\oss\winpt\src\wptKeyEditDlgs.cpp:396
-#: Src/wptKeyManagerDlg.cpp:999
+#: Src/wptKeyManagerDlg.cpp:996
 msgid "&Enable"
 msgstr "—LŒø‚·‚é(&E)"
 
-#: Src/wptKeyManagerDlg.cpp:1000
+#: Src/wptKeyManagerDlg.cpp:997
 msgid "&Disable"
 msgstr "–³Œø‚·‚é(&D)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:764
-#: Src/wptKeyManagerDlg.cpp:1001
+#: Src/wptKeyManagerDlg.cpp:998
 msgid "Re&fresh from Keyserver"
 msgstr "ƒL[ƒT[ƒo[‚æ‚èXV‚·‚é(&F)"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:764
-#: Src/wptKeyManagerDlg.cpp:1002
+#: Src/wptKeyManagerDlg.cpp:999
 msgid "Set preferred Keyserver URL"
 msgstr "Šó–]‚·‚éƒL[ƒT[ƒo[‚ÌURL‚ðÝ’è‚·‚é"
 
-#: Src/wptKeyManagerDlg.cpp:1003
+#: Src/wptKeyManagerDlg.cpp:1000
 msgid "Send Key to Mail Recipient"
 msgstr "ƒL[‚ðƒ[ƒ‹‚ÌŽóMŽÒ‚É‘—M‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManager.cpp:803
-#: Src/wptKeyManagerDlg.cpp:1004
+#: Src/wptKeyManagerDlg.cpp:1001
 msgid "Set as Default Key"
 msgstr "‹K’èƒL[‚Æ‚µ‚Đݒ肷‚é"
 
-#: Src/wptKeyManagerDlg.cpp:1006
+#: Src/wptKeyManagerDlg.cpp:1003
 msgid "Key..."
 msgstr "ƒL[..."
 
@@ -4261,24 +4261,24 @@
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:45
 # c:\oss\winpt\src\wptSigList.cpp:41 c:\oss\winpt\src\wptVerifyList.cpp:79
 # c:\oss\winpt\src\wptVerifyList.cpp:88
-#: Src/wptKeyManagerDlg.cpp:1007
+#: Src/wptKeyManagerDlg.cpp:1004
 msgid "User ID..."
 msgstr "ƒ†[ƒU[ID"
 
-#: Src/wptKeyManagerDlg.cpp:1008
+#: Src/wptKeyManagerDlg.cpp:1005
 msgid "Photo ID..."
 msgstr "ƒtƒHƒgID..."
 
 # c:\oss\winpt\src\wptKeyPropsDlg.cpp:115
-#: Src/wptKeyManagerDlg.cpp:1009
+#: Src/wptKeyManagerDlg.cpp:1006
 msgid "Revoker..."
 msgstr "–³Œø‰»‚«‚Ì‚¤"
 
-#: Src/wptKeyManagerDlg.cpp:1012
+#: Src/wptKeyManagerDlg.cpp:1009
 msgid "Key Attributes"
 msgstr "ƒL[‚Ì‘®«"
 
-#: Src/wptKeyManagerDlg.cpp:1013
+#: Src/wptKeyManagerDlg.cpp:1010
 msgid "Add"
 msgstr "’ljÁ"
 
@@ -4297,11 +4297,11 @@
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:420
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:72
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:115
-#: Src/wptKeyManagerDlg.cpp:1014
+#: Src/wptKeyManagerDlg.cpp:1011
 msgid "Send to Keyserver"
 msgstr "ƒL[ƒT[ƒo[‚É‘—M‚·‚é"
 
-#: Src/wptKeyManagerDlg.cpp:1193
+#: Src/wptKeyManagerDlg.cpp:1190
 msgid ""
 "No ultimately trusted key found.\n"
 "Please set at least one secret key to ultimate trust."
@@ -4311,73 +4311,73 @@
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:608
 # c:\oss\winpt\src\wptKeysigDlg.cpp:349
-#: Src/wptKeyManagerDlg.cpp:1204
+#: Src/wptKeyManagerDlg.cpp:1201
 msgid "Could not set keylist window procedure."
 msgstr "ƒL[ƒŠƒXƒgƒEƒBƒ“ƒhƒvƒƒV[ƒWƒƒ‚ðƒZƒbƒg‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:765
-#: Src/wptKeyManagerDlg.cpp:1221
+#: Src/wptKeyManagerDlg.cpp:1218
 #, fuzzy
 msgid "&Show"
 msgstr "ƒtƒHƒg‚ðŒ©‚¹‚é(&S)"
 
 # c:\oss\winpt\src\wptFileManagerDlg.cpp:354
-#: Src/wptKeyManagerDlg.cpp:1222
+#: Src/wptKeyManagerDlg.cpp:1219
 #, fuzzy
 msgid "&New..."
 msgstr "ŠJ‚­(&O)..."
 
 # c:\oss\winpt\src\wptFirstRunDlg.cpp:42
-#: Src/wptKeyManagerDlg.cpp:1327
+#: Src/wptKeyManagerDlg.cpp:1324
 msgid "Generate new key pair"
 msgstr "V‚µ‚¢ƒL[ƒyƒA‚ðì¬‚·‚é"
 
-#: Src/wptKeyManagerDlg.cpp:1331
+#: Src/wptKeyManagerDlg.cpp:1328
 msgid "Search for a specific key"
 msgstr "“Á’è‚ȃL[‚ðƒT[ƒ`‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:724
-#: Src/wptKeyManagerDlg.cpp:1335
+#: Src/wptKeyManagerDlg.cpp:1332
 msgid "Delete key from keyring"
 msgstr "ƒL[ƒŠƒ“ƒO‚©‚çƒL[‚ðíœ‚·‚éB"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:728
-#: Src/wptKeyManagerDlg.cpp:1339
+#: Src/wptKeyManagerDlg.cpp:1336
 msgid "Show key properties"
 msgstr "ƒL[‚Ì‘®«‚ðŒ©‚¹‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:732
-#: Src/wptKeyManagerDlg.cpp:1343
+#: Src/wptKeyManagerDlg.cpp:1340
 msgid "Sign key"
 msgstr "ƒVƒOƒjƒ`ƒƒ[ƒL["
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:762
-#: Src/wptKeyManagerDlg.cpp:1347
+#: Src/wptKeyManagerDlg.cpp:1344
 msgid "Copy key to clipboard"
 msgstr "ƒL[‚ðƒNƒŠƒbƒvƒ{[ƒh‚É“]‘—‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:272
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:763
-#: Src/wptKeyManagerDlg.cpp:1351
+#: Src/wptKeyManagerDlg.cpp:1348
 msgid "Paste key from clipboard"
 msgstr "ƒNƒŠƒbƒvƒ{[ƒh‚©‚çƒL[‚ð‚Í‚è•t‚¯‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:736
-#: Src/wptKeyManagerDlg.cpp:1355
+#: Src/wptKeyManagerDlg.cpp:1352
 msgid "Import key to keyring"
 msgstr "ƒL[ƒŠƒ“ƒO‚ɃL[‚ðƒCƒ“ƒ|[ƒg‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:740
-#: Src/wptKeyManagerDlg.cpp:1359
+#: Src/wptKeyManagerDlg.cpp:1356
 msgid "Export key to a file"
 msgstr "ƒL[‚ðƒtƒ@ƒCƒ‹‚ɃGƒLƒXƒ|[ƒg‚Æ‚·‚é"
 
-#: Src/wptKeyManagerDlg.cpp:1486
+#: Src/wptKeyManagerDlg.cpp:1485
 msgid "New"
 msgstr "V‹Kì¬"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:869
-#: Src/wptKeyManagerDlg.cpp:1498
+#: Src/wptKeyManagerDlg.cpp:1497
 msgid "Could not access public keyring"
 msgstr "ŒöŠJƒL[ƒŠƒ“ƒO‚ðƒAƒNƒZƒX‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
@@ -4389,7 +4389,7 @@
 # c:\oss\winpt\src\wptKeysignDlg.cpp:318
 # c:\oss\winpt\src\wptKeysignDlg.cpp:320
 # c:\oss\winpt\src\wptKeysignDlg.cpp:322
-#: Src/wptKeyManagerDlg.cpp:1529 Src/wptKeysignDlg.cpp:259
+#: Src/wptKeyManagerDlg.cpp:1528 Src/wptKeysignDlg.cpp:259
 #: Src/wptKeysignDlg.cpp:274 Src/wptKeysignDlg.cpp:354
 #: Src/wptKeysignDlg.cpp:369 Src/wptKeysignDlg.cpp:386
 #: Src/wptKeysignDlg.cpp:391 Src/wptKeysignDlg.cpp:393
@@ -4397,7 +4397,7 @@
 msgstr "ƒL[‚ð–¼‚·‚é"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:926
-#: Src/wptKeyManagerDlg.cpp:1545
+#: Src/wptKeyManagerDlg.cpp:1544
 msgid "Key already revoked!"
 msgstr "ƒL[‚ª‚·‚Å‚É–³Œø‚Æ‚È‚Á‚Ä‚¢‚Ü‚·B"
 
@@ -4408,7 +4408,7 @@
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:118
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:140
 # c:\oss\winpt\src\wptKeyRevokeDlg.cpp:151
-#: Src/wptKeyManagerDlg.cpp:1559 Src/wptKeyRevokeDlg.cpp:70
+#: Src/wptKeyManagerDlg.cpp:1558 Src/wptKeyRevokeDlg.cpp:70
 #: Src/wptKeyRevokeDlg.cpp:80 Src/wptKeyRevokeDlg.cpp:169
 #: Src/wptKeyRevokeDlg.cpp:174 Src/wptKeyRevokeDlg.cpp:182
 #: Src/wptKeyRevokeDlg.cpp:191 Src/wptKeyRevokeDlg.cpp:196
@@ -4416,23 +4416,23 @@
 msgstr "ƒL[‚Ì–³Œø‰»Ø–¾‘"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:951
-#: Src/wptKeyManagerDlg.cpp:1569
+#: Src/wptKeyManagerDlg.cpp:1568
 msgid "It does not make any sense with a key pair!"
 msgstr "ƒL[ƒyƒA‚Ƃ̈Ӗ¡‚ª•s–¾‚Å‚·I"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:973
-#: Src/wptKeyManagerDlg.cpp:1586
+#: Src/wptKeyManagerDlg.cpp:1585
 msgid "Key Signature List"
 msgstr "ƒL[–¼‚̈ꗗ‚Ђ傤"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:992
 # c:\oss\winpt\src\wptKeyPropsDlg.cpp:113
-#: Src/wptKeyManagerDlg.cpp:1603 Src/wptKeyPropsDlg.cpp:289
+#: Src/wptKeyManagerDlg.cpp:1602 Src/wptKeyPropsDlg.cpp:289
 msgid "Key Properties"
 msgstr "ƒL[‚Ì‘®«"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1007
-#: Src/wptKeyManagerDlg.cpp:1613
+#: Src/wptKeyManagerDlg.cpp:1612
 msgid ""
 "This is only useful when the keyring has been modified (sign a key...).\n"
 "Do you really want to reload the keycache?"
@@ -4441,34 +4441,34 @@
 "–{“–‚ɃL[ƒLƒƒƒbƒVƒ…‚ðƒŠƒ[ƒh‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1045
-#: Src/wptKeyManagerDlg.cpp:1643
+#: Src/wptKeyManagerDlg.cpp:1642
 msgid "Smart Card support is not available."
 msgstr "ƒXƒ}[ƒgƒJ[ƒh‚ɑΉž‚µ‚Ü‚¹‚ñB"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1065
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:298
-#: Src/wptKeyManagerDlg.cpp:1666 Src/wptKeyserverDlg.cpp:568
+#: Src/wptKeyManagerDlg.cpp:1665 Src/wptKeyserverDlg.cpp:568
 msgid "Keyserver Access"
 msgstr "ƒL[ƒT[ƒo[‚̃AƒNƒZƒX"
 
 # c:\oss\winpt\src\wptGPGOptDlg.cpp:46
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1077
-#: Src/wptKeyManagerDlg.cpp:1683
+#: Src/wptKeyManagerDlg.cpp:1682
 msgid "GnuPG Options"
 msgstr "GnuPGƒIƒvƒVƒ‡ƒ“"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1119
-#: Src/wptKeyManagerDlg.cpp:1725
+#: Src/wptKeyManagerDlg.cpp:1724
 msgid "There is no corresponding secret key for this key."
 msgstr "‚±‚̃L[‚ɑ΂µ‚Ă̔閧Œ®‚ª‚ ‚è‚Ü‚¹‚ñB"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1124
-#: Src/wptKeyManagerDlg.cpp:1730
+#: Src/wptKeyManagerDlg.cpp:1729
 msgid "You can only export one secret key."
 msgstr "ˆêŒÂ‚̔閧Œ®‚µ‚©ƒGƒLƒXƒ|[ƒg‚Å‚«‚Ü‚¹‚ñB"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1128
-#: Src/wptKeyManagerDlg.cpp:1735
+#: Src/wptKeyManagerDlg.cpp:1734
 msgid ""
 "This operation will export your *SECRET* key!\n"
 "\n"
@@ -4487,17 +4487,17 @@
 "‚±‚̃L[‚ð–{“–‚ɃGƒLƒXƒ|[ƒg‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1133
-#: Src/wptKeyManagerDlg.cpp:1740
+#: Src/wptKeyManagerDlg.cpp:1739
 msgid "WARNING"
 msgstr "Œx"
 
 # c:\oss\winpt\src\wptKeyManagerDlg.cpp:1205
-#: Src/wptKeyManagerDlg.cpp:1801
+#: Src/wptKeyManagerDlg.cpp:1800
 msgid "No key was selected, select all by default."
 msgstr "ƒL[‚ª‘I‘ð‚³‚ê‚Ä‚Ü‚¹‚ñB‹K’è‘I‘ð‚Í All ‚Å‚·B"
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:59
-#: Src/wptKeyManagerDlg.cpp:1806
+#: Src/wptKeyManagerDlg.cpp:1805
 #, fuzzy
 msgid "Keyserver refresh finished."
 msgstr "ƒL[ƒT[ƒo[‚ðŒŸõ‚µ‚Ä‚¢‚Ü‚·B"
@@ -4644,7 +4644,8 @@
 msgstr "–³Œø‰»Ø–¾‘‚ªì¬‚³‚ê‚Ü‚µ‚½B"
 
 # c:\oss\winpt\src\wptSigList.cpp:47
-#: Src/wptKeyRevokersDlg.cpp:59 Src/wptSigList.cpp:59
+#: Src/wptKeyRevokersDlg.cpp:59 Src/wptKeyserverSearchDlg.cpp:51
+#: Src/wptSigList.cpp:59
 msgid "Algorithm"
 msgstr "ƒAƒ‹ƒSƒŠƒYƒ€"
 
@@ -4664,44 +4665,44 @@
 msgid "Do you want to retrieve %s via the default keyserver?"
 msgstr "‹K’èƒL[ƒT[ƒo[Œo—R‚Å 0x%s ‚ðŽæ‚èo‚µ‚½‚¢‚Å‚·‚©H"
 
-#: Src/wptKeyserver.cpp:363
+#: Src/wptKeyserver.cpp:377
 msgid "Network unreachable"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:366
+#: Src/wptKeyserver.cpp:380
 #, fuzzy
 msgid "Host unreachable"
 msgstr "ƒzƒXƒg"
 
 # c:\oss\winpt\src\wptErrors.cpp:84
-#: Src/wptKeyserver.cpp:369
+#: Src/wptKeyserver.cpp:383
 #, fuzzy
 msgid "Could not resolve host name"
 msgstr "ƒzƒXƒg–¼‚ð‘ÅŠJ‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
-#: Src/wptKeyserver.cpp:372
+#: Src/wptKeyserver.cpp:386
 msgid "Connection refused"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:376
+#: Src/wptKeyserver.cpp:390
 msgid "Connection timeout"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:380
+#: Src/wptKeyserver.cpp:394
 msgid "Connection resetted by peer"
 msgstr ""
 
-#: Src/wptKeyserver.cpp:383
+#: Src/wptKeyserver.cpp:397
 msgid "Socket has been shutdown"
 msgstr ""
 
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:221
-#: Src/wptKeyserver.cpp:572
+#: Src/wptKeyserver.cpp:584
 msgid "Could not save keyserver.conf file"
 msgstr "keyserver.confƒtƒ@ƒCƒ‹‚ð•Û‘¶‚·‚邱‚Æ‚ªo—ˆ‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptKeyserver.cpp:436
-#: Src/wptKeyserver.cpp:617
+#: Src/wptKeyserver.cpp:629
 msgid ""
 "Invalid proxy configuration.You need to set a user and a passwordto use "
 "proxy authentication!"
@@ -4710,12 +4711,12 @@
 "ƒvƒƒNƒV[‚Ì”FØI"
 
 # c:\oss\winpt\src\wptKeyserver.cpp:438
-#: Src/wptKeyserver.cpp:620
+#: Src/wptKeyserver.cpp:632
 msgid "Proxy Error"
 msgstr "ƒvƒƒNƒV[ƒGƒ‰["
 
 # c:\oss\winpt\src\wptKeyserver.cpp:462
-#: Src/wptKeyserver.cpp:644
+#: Src/wptKeyserver.cpp:656
 msgid ""
 "All entries of this file must have a valid prefix.\n"
 "Currently HKP/HTTP, LDAP and FINGER are supported.\n"
@@ -4738,17 +4739,17 @@
 # c:\oss\winpt\src\wptKeyserverDlg.cpp:420
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:72
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:115
-#: Src/wptKeyserver.cpp:646
+#: Src/wptKeyserver.cpp:658
 msgid "Keyserver Error"
 msgstr "ƒL[ƒT[ƒo[ƒGƒ‰["
 
 # c:\oss\winpt\src\wptKeyserver.cpp:473
-#: Src/wptKeyserver.cpp:670
+#: Src/wptKeyserver.cpp:680
 msgid "The keyserver limit is exceeded"
 msgstr "ƒL[ƒT[ƒo[‚̐§ŒÀ‚ª’´‚¦‚Ä‚¢‚Ü‚·B"
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:59
-#: Src/wptKeyserver.cpp:671
+#: Src/wptKeyserver.cpp:681
 msgid "Keyserver Warning"
 msgstr "ƒL[ƒT[ƒo[Œx"
 
@@ -4926,7 +4927,7 @@
 msgstr "–³Œø‚ȃ|[ƒgB—LŒø‚È’l‚Í <65535 ‚Å‚·B"
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:61
-#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:60
+#: Src/wptKeyserverDlg.cpp:569 Src/wptKeyserverSearchDlg.cpp:61
 msgid "&Receive"
 msgstr "ŽóM(&R)"
 
@@ -5010,18 +5011,18 @@
 msgstr "ƒ[ƒ‹ƒAƒhƒŒƒX‚Ü‚½‚̓L[ID‚Ì‚Ý‚ÍŽg—p‚©‚Ì‚¤‚Å‚·B"
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:63
-#: Src/wptKeyserverSearchDlg.cpp:63
+#: Src/wptKeyserverSearchDlg.cpp:64
 #, c-format
 msgid "Connect to '%s' to search for \"%s\""
 msgstr "%s‚ɐڑ±‚µˆÈ‰º‚Ì‚±‚Æ‚ðŒŸõ‚·‚é\"%s\""
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:59
-#: Src/wptKeyserverSearchDlg.cpp:66
+#: Src/wptKeyserverSearchDlg.cpp:67
 msgid "Keyserver Searching"
 msgstr "ƒL[ƒT[ƒo[‚ðŒŸõ‚µ‚Ä‚¢‚Ü‚·B"
 
 # c:\oss\winpt\src\wptKeyserverSearchDlg.cpp:59
-#: Src/wptKeyserverSearchDlg.cpp:87 Src/wptKeyserverSearchDlg.cpp:117
+#: Src/wptKeyserverSearchDlg.cpp:90 Src/wptKeyserverSearchDlg.cpp:127
 msgid "Keyserver Search"
 msgstr "ƒL[ƒT[ƒo[ŒŸõ"
 
@@ -5245,7 +5246,7 @@
 msgstr "ƒtƒHƒg‚ðŒ©‚¹‚é(&S)"
 
 # c:\oss\winpt\src\wptKeygenDlg.cpp:155
-#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:94
+#: Src/wptKeysignDlg.cpp:287 Src/wptPassphraseCB.cpp:96
 #: Src/wptPassphraseCB.cpp:102 Src/wptPassphraseDlg.cpp:68
 #: Src/wptPINDlg.cpp:54
 msgid "&Hide Typing"
@@ -5300,50 +5301,50 @@
 msgstr "–¢’m‚ÌOpenPGPƒ^ƒCƒv"
 
 # c:\oss\winpt\src\wptMainProc.cpp:336
-#: Src/wptMainProc.cpp:360
+#: Src/wptMainProc.cpp:350
 msgid "Could not set current window mode hooks."
 msgstr ""
 "Œ»Ý‚̃EƒBƒ“ƒhƒ‚[ƒh‚ɃtƒbƒNƒXuhooksv‚ðƒZƒbƒg‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B"
 
 # c:\oss\winpt\src\wptMainProc.cpp:398
-#: Src/wptMainProc.cpp:417
+#: Src/wptMainProc.cpp:407
 msgid "Edit Clipboard"
 msgstr "ƒNƒŠƒbƒvƒ{[ƒh‚̕ҏW"
 
 # c:\oss\winpt\src\wptMainProc.cpp:399
-#: Src/wptMainProc.cpp:418
+#: Src/wptMainProc.cpp:408
 msgid "About..."
 msgstr "WinPT‚ɂ‚¢‚Ä..."
 
 # c:\oss\winpt\src\wptMainProc.cpp:405 c:\oss\winpt\src\wptMainProc.cpp:409
-#: Src/wptMainProc.cpp:424 Src/wptMainProc.cpp:428
+#: Src/wptMainProc.cpp:414 Src/wptMainProc.cpp:418
 msgid "Decrypt/Verify"
 msgstr "•œ†/Šm”F"
 
-#: Src/wptMainProc.cpp:438
+#: Src/wptMainProc.cpp:428
 msgid "Current Window"
 msgstr "Œ»Ý‚̃EƒBƒ“ƒhƒE"
 
 # c:\oss\winpt\src\wptMainProc.cpp:465
-#: Src/wptMainProc.cpp:494
+#: Src/wptMainProc.cpp:484
 msgid "Remove all passphrases from cache?"
 msgstr "‚·‚ׂẴpƒXƒtƒŒ[ƒY‚ðƒLƒƒƒbƒVƒ…‚©‚çŠO‚¹‚Ü‚·B"
 
 # c:\oss\winpt\src\wptClipImportDlg.cpp:112
 # c:\oss\winpt\src\wptMainProc.cpp:466 c:\oss\winpt\src\wptProgressDlg.cpp:98
 # c:\oss\winpt\src\wptRegistry.cpp:133
-#: Src/wptMainProc.cpp:495 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
+#: Src/wptMainProc.cpp:485 Src/wptProgressDlg.cpp:122 Src/wptRegistry.cpp:198
 msgid "WinPT"
 msgstr "WinPT"
 
 # c:\oss\winpt\src\wptMainProc.cpp:476
-#: Src/wptMainProc.cpp:505
+#: Src/wptMainProc.cpp:495
 msgid "Could not access public keyring, exit WinPT?"
 msgstr ""
 "ŒöŠJƒL[ƒŠƒ“ƒO‚ðƒAƒNƒZƒX‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½BWinPT‚ðI—¹‚µ‚Ü‚·‚©H"
 
 # c:\oss\winpt\src\wptMainProc.cpp:510
-#: Src/wptMainProc.cpp:538
+#: Src/wptMainProc.cpp:528
 #, c-format
 msgid ""
 "Make sure that the window contains text.\n"
@@ -5354,7 +5355,7 @@
 
 # c:\oss\winpt\src\wptMainProc.cpp:566
 # c:\oss\winpt\src\wptPreferencesDlg.cpp:121
-#: Src/wptMainProc.cpp:592 Src/wptPreferencesDlg.cpp:136
+#: Src/wptMainProc.cpp:582 Src/wptPreferencesDlg.cpp:136
 msgid "WinPT Preferences"
 msgstr "WinPTƒJƒXƒ^ƒ€Ý’è"
 

Modified: trunk/Src/ChangeLog
===================================================================
--- trunk/Src/ChangeLog	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/ChangeLog	2006-05-14 18:40:36 UTC (rev 214)
@@ -1,3 +1,49 @@
+2006-05-14  Timo Schulz  <ts at g10code.de>
+
+	* wptKeyCache.cpp (gpg_keycache_update_attr): Parse
+	preferred keyserver URL.
+	* wptHTTP.cpp (extractHostInfo): Fix segv.
+	* wptGPGUtil.cpp (gpg_find_key_subpacket): Ignore default
+	gpg.conf.
+	* wptKeyserverSearchDlg.cpp (search_hkp_keys): Do not
+	assume an existing user id.
+	* wptPassphraseCB.cpp (passphrase_cb): Automatic cancel
+	if no passphrase is available.
+
+2006-05-13  Timo Schulz  <ts at g10code.de>
+
+	* wpMainProc.cpp (secret_key_available): Move it...
+	* wptGPGME.cpp: ..to this file.
+	(check_ultimate_trusted_key): Handle the case there
+	is no secret key available.
+	* wptFileManagerDlg.cpp (update_ui_items): Improved.
+	* wptKeyManagerDlg.cpp (key_manager_dlg_proc): Deactive
+	some functions when no secret key is available.
+	* wptKeyserverSearchDlg.cpp (search_hkp_keys): Adjust
+	code and also display pubkey algorithm.
+	* wptKeyserver.cpp (safe_alloc): New.
+	(count_keys_in_response): New.
+	(parse_pub_record): New.
+	(parse_uid_record): New.
+	(kserver_release_key): New.
+	(kserver_search_begin, kserver_search_next_key):
+	Adjust for the machine readable output. Removed old code.
+	(parse_keyserver_url): New.
+	* wptUtil.cpp (substr): New.
+	* wptKeyManager.cpp (km_refresh_one_key): Properly 
+	parse the keyserver URL.
+	
+2006-05-11  Timo Schulz  <ts at g10code.de>
+
+	* wptPassphraseCB.cpp (release_gpg_recipients): New.
+	(release_gpg_recipients): Use it here.
+	* wptFileManager.cpp (fm_decrypt): List all recipients.
+	Thanks to vedaal.
+	* wptGPG.cpp (extract_keyid): New.
+	(get_gnupg_default_key): Use it here.
+	* wptClipDecryptDlg.cpp (clip_decrypt_dlg): Allow to verify
+	one-pass-sigs again.
+	
 2006-05-09  Timo Schulz  <ts at g10code.de>
 
 	* wptKeyRevokersDlg.cpp (revokelist_build): Store key ptr.

Modified: trunk/Src/WinPT-en.rc
===================================================================
--- trunk/Src/WinPT-en.rc	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/WinPT-en.rc	2006-05-14 18:40:36 UTC (rev 214)
@@ -1934,8 +1934,8 @@
 //
 
 VS_VERSION_INFO VERSIONINFO
- FILEVERSION 0,11,13,0
- PRODUCTVERSION 0,11,13,0
+ FILEVERSION 0,12,1,0
+ PRODUCTVERSION 0,12,1,0
  FILEFLAGSMASK 0x3fL
 #ifdef _DEBUG
  FILEFLAGS 0x1L
@@ -1953,14 +1953,14 @@
             VALUE "Comments", "This is free software under the terms of the GNU GPL v2\0"
             VALUE "CompanyName", "\0"
             VALUE "FileDescription", "Windows Privacy Tray (WinPT)\0"
-            VALUE "FileVersion", "0.11.13\0"
+            VALUE "FileVersion", "0.12.1\0"
             VALUE "InternalName", "WinPT\0"
             VALUE "LegalCopyright", " Copyright (C) 2006 Timo Schulz\0"
             VALUE "LegalTrademarks", "\0"
             VALUE "OriginalFilename", "WinPT.exe\0"
             VALUE "PrivateBuild", "\0"
             VALUE "ProductName", "Windows Privacy Tray\0"
-            VALUE "ProductVersion", "0.11.13\0"
+            VALUE "ProductVersion", "0.12.1\0"
             VALUE "SpecialBuild", "\0"
         END
     END

Modified: trunk/Src/wptClipDecryptDlg.cpp
===================================================================
--- trunk/Src/wptClipDecryptDlg.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptClipDecryptDlg.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -106,8 +106,11 @@
     int novalid = 0;
 
     /* allow to verify data generated by 'gpg -a --sign foo' */
-    if (fm_assume_onepass_sig (NULL) == 0) {
-	/* XXX: addtitional steps needed? */
+    if (fm_assume_onepass_sig (NULL) == 1) {
+	dialog_box_param (glob_hinst, (LPCSTR)IDD_WINPT_VERIFY, hwnd,
+                          clip_verify_dlg_proc, 0, 
+                          _("Verify"), IDS_WINPT_VERIFY);
+	return 0;
     }
 
     err = gpgme_new (&ctx);

Modified: trunk/Src/wptFileManager.cpp
===================================================================
--- trunk/Src/wptFileManager.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptFileManager.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -606,7 +606,7 @@
 
 
 int
-fm_assume_onepass_sig (const char * fname)
+fm_assume_onepass_sig (const char *fname)
 {    
     armor_filter_context_t afx;
     gpg_iobuf_t fp;
@@ -1276,6 +1276,7 @@
 	memcpy (orig, output, (dir-output)+1);
 	strcat (orig, file_name);
     }
+    /* XXX: we need to find out if the string needs to be utf8 decoded. */
     if (overwrite_file (orig)) {
 	DeleteFile (orig);
 	if (!MoveFile (output, orig))
@@ -1322,6 +1323,10 @@
 	    goto leave;
     }
 
+    /* we fetch all recipients here to make sure they list is complete. */
+    release_gpg_recipients (&c->pass_cb.recipients);
+    gpg_get_recipients (name, &c->pass_cb.recipients);
+
     err = gpg_file_data_new (name, F_DATA_READ, &in);
     if (err)
 	goto leave;
@@ -1329,7 +1334,7 @@
     err = gpg_file_data_new (c->output, F_DATA_WRITE, &out);
     if (err)
 	goto leave;
-
+    
     op_begin ();
     err = gpgme_op_decrypt_verify (ctx, in->dat, out->dat);
     op_end ();
@@ -1366,11 +1371,18 @@
 	goto leave;
     }
     else if (res && res->file_name) {
-	char *file = strrchr (c->output, '\\');
-	int id = log_box (_("Decrypt"), MB_QUEST_ASK,
-			  _("The original file name is '%s'.\n\n"
-			    "Do you want to use this instead of '%s'?"),
-			    res->file_name, file? file+1 : c->output);
+	char *file;
+	int id;
+
+	file = strrchr (c->output, '\\');
+	if (!file)
+	    file = c->output;
+	else
+	    file++;
+	id = log_box (_("Decrypt"), MB_QUEST_ASK,
+		      _("The original file name is '%s'.\n\n"
+		        "Do you want to use this instead of '%s'?"),
+		      res->file_name, file);
 	if (id == IDYES) {
 	    /* before we can move the file, it needs to be closed first. */
 	    gpg_file_data_release (out);

Modified: trunk/Src/wptFileManagerDlg.cpp
===================================================================
--- trunk/Src/wptFileManagerDlg.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptFileManagerDlg.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -427,28 +427,47 @@
 /* Enable or disabled menu entries from the dialog window @hwnd.
    @lv is used to find out the state of the selected file entry. */
 static void
-update_ui_items (HWND hwnd, listview_ctrl_t lv)
+update_ui_items (HWND hwnd, HMENU hm, bool is_popup, listview_ctrl_t lv)
 {
-    HMENU hm;
-    int pos;
+    int ids[2][7] = {
+	{ID_FILEMISC_SEND, ID_FILEMISC_DECRYPT, ID_FILEMISC_VERIFY,
+	 ID_FILEMISC_ENCRYPT, ID_FILEMISC_SIGN, ID_FILEMISC_SIGNENC,
+	 ID_FILEMISC_ENCRYPT_ZIP
+	},
+	{ID_FILECTX_SEND,  ID_FILECTX_DECRYPT,  ID_FILECTX_VERIFY,
+	 ID_FILECTX_ENCRYPT, ID_FILECTX_SIGN,   ID_FILECTX_SIGNENC,
+	 ID_FILECTX_ENCRYPT_ZIP
+	}
+    };
+    enum id_type_t { SEND, DECRYPT, VERIFY, ENCR, SIGN, SIGENC, ENCRZIP };
+    int pos, idx = is_popup? 1: 0;
 
-    hm = GetMenu (hwnd);
+    pos = listview_get_curr_pos (lv);
+    if (fm_check_file_type (lv, pos, FM_DECRYPT))
+	set_menu_state (hm, ids[idx][SEND], MF_ENABLED);	
 
-    pos = listview_get_curr_pos (lv);	    
     if (fm_check_file_type (lv, pos, FM_ENCRYPT)) {	
-	set_menu_state (hm, ID_FILEMISC_DECRYPT, MF_GRAYED|MF_DISABLED);	
-	set_menu_state (hm, ID_FILECTX_VERIFY, MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][DECRYPT], MF_GRAYED|MF_DISABLED);	
+	set_menu_state (hm, ids[idx][VERIFY], MF_GRAYED|MF_DISABLED);
     }
     if (fm_check_file_type (lv, pos, FM_DECRYPT)) {
-	set_menu_state (hm, ID_FILEMISC_ENCRYPT, MF_GRAYED|MF_DISABLED);	
-	set_menu_state (hm, ID_FILEMISC_SIGN, MF_GRAYED|MF_DISABLED);
-	set_menu_state (hm, ID_FILEMISC_SIGNENC, MF_GRAYED|MF_DISABLED);	
+	set_menu_state (hm, ids[idx][ENCR], MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][ENCRZIP], MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][SIGN], MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][SIGENC], MF_GRAYED|MF_DISABLED);
     }	    
     if (fm_check_file_type (lv, pos, FM_VERIFY)) {
-	set_menu_state (hm, ID_FILEMISC_VERIFY, MF_ENABLED);
-	set_menu_state (hm, ID_FILEMISC_SIGN, MF_GRAYED|MF_DISABLED);	
-	set_menu_state (hm, ID_FILEMISC_SIGNENC, MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][VERIFY], MF_ENABLED);
+	set_menu_state (hm, ids[idx][SIGN], MF_GRAYED|MF_DISABLED);	
+	set_menu_state (hm, ids[idx][SIGENC], MF_GRAYED|MF_DISABLED);
     }
+
+    /* disable all operation which need a secret key. */
+    if (!secret_key_available ()) {
+	set_menu_state (hm, ids[idx][DECRYPT], MF_GRAYED|MF_DISABLED);
+	set_menu_state (hm, ids[idx][SIGN], MF_GRAYED|MF_DISABLED);	
+	set_menu_state (hm, ids[idx][SIGENC], MF_GRAYED|MF_DISABLED);
+    }
 }
 
 
@@ -558,25 +577,7 @@
             set_menu_text (popup, ID_FILECTX_WIPE, _("Wipe"));
 	    set_menu_text (popup, ID_FILECTX_SEND, _("Send as Mail"));
 	    set_menu_text (popup, ID_FILECTX_LIST, _("List Packets"));
-	    pos = listview_get_curr_pos (lv);
-	    if (fm_check_file_type (lv, pos, FM_DECRYPT))
-		set_menu_state (popup, ID_FILECTX_SEND, MF_ENABLED);
-	    if (fm_check_file_type (lv, pos, FM_ENCRYPT)) {
-		set_menu_state (popup, ID_FILECTX_DECRYPT, MF_GRAYED|MF_DISABLED);
-		set_menu_state (popup, ID_FILECTX_VERIFY, MF_GRAYED|MF_DISABLED);
-	    }
-	    if (fm_check_file_type (lv, pos, FM_DECRYPT)) {
-		set_menu_state (popup, ID_FILECTX_ENCRYPT_ZIP, MF_GRAYED|MF_DISABLED);
-		set_menu_state (popup, ID_FILECTX_ENCRYPT, MF_GRAYED|MF_DISABLED);
-		set_menu_state (popup, ID_FILECTX_SIGN, MF_GRAYED|MF_DISABLED);
-		set_menu_state (popup, ID_FILECTX_SIGNENC, MF_GRAYED|MF_DISABLED);
-	    }
-	    if (fm_check_file_type (lv, pos, FM_VERIFY)) {
-		set_menu_state (popup, ID_FILECTX_VERIFY, MF_ENABLED);
-		set_menu_state (popup, ID_FILECTX_SIGN, MF_GRAYED|MF_DISABLED);
-		set_menu_state (popup, ID_FILECTX_SIGNENC, MF_GRAYED|MF_DISABLED);
-	    }
-
+	    update_ui_items (dlg, popup, true, lv);
             TrackPopupMenu (popup, TPM_RIGHTALIGN, p.x, p.y, 0, dlg, NULL);
             DestroyMenu (popup);
             DestroyMenu (hm);
@@ -592,7 +593,7 @@
 	}
 	if (notify && notify->code == LVN_ITEMCHANGED &&
             ((LPNMLISTVIEW)lparam)->uNewState) /* item selected? */
-	    update_ui_items (dlg, lv);
+	    update_ui_items (dlg, GetMenu (dlg), false, lv);
         return TRUE;
         
     case WM_SYSCOMMAND:

Modified: trunk/Src/wptGPG.cpp
===================================================================
--- trunk/Src/wptGPG.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptGPG.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -247,6 +247,24 @@
 }
 
 
+/* handle the case the user added a '!' to force a subkey. */
+static char*
+extract_keyid (const char *val)
+{    
+    size_t len = strlen (val);
+
+    if (len > 1 && val[len-1] == '!') {
+	char *p = new char[len+1];
+	if (!p)
+	    BUG (0);
+	memset (p, 0, len+1);
+	memcpy (p, val, len-1);
+	return p;
+    }
+    return m_strdup (val);
+}
+
+
 char*
 get_gnupg_default_key (void)
 {    
@@ -267,7 +285,7 @@
     if (!e)
 	e = find_option (opt, "local-user");
     if (e)
-	keyid = m_strdup (e->val);
+	keyid = extract_keyid (e->val);
 
     free_if_alloc (optfile);
     release_gpg_options (opt);

Modified: trunk/Src/wptGPGME.cpp
===================================================================
--- trunk/Src/wptGPGME.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptGPGME.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -333,11 +333,28 @@
 check_ultimate_trusted_key (void)
 {
     struct keycache_s *n;
+    int nkeys = 0;
 
     for (n = sec->item; n; n = n->next) {
 	if (n->pubpart && 
 	    n->pubpart->key->owner_trust == GPGME_VALIDITY_ULTIMATE)
 	return 0;
+	nkeys++;
     }
+
+    /* if we do not have any secret keys, it does not make sense
+       to return an error. */
+    if (nkeys == 0)
+	return 0;
     return -1;
 }
+
+
+bool
+secret_key_available (void)
+{
+    gpg_keycache_t _sec = keycache_get_ctx (0);
+    if (!_sec || gpg_keycache_get_size (_sec) == 0)
+	return false;
+    return true;
+}

Modified: trunk/Src/wptGPGUtil.cpp
===================================================================
--- trunk/Src/wptGPGUtil.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptGPGUtil.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -796,7 +796,7 @@
 
     *value = NULL;
     p = read_gpg_program ();
-    fmt = "%s --with-colons --list-options show-sig-subpackets=%d --list-sigs %s";
+    fmt = "%s --with-colons --no-options --list-options show-sig-subpackets=%d --list-sigs %s";
     cmd = (char*)xcalloc (1, strlen (fmt) + strlen (p) + strlen (key) + 32 + 1);
     sprintf (cmd, fmt, p, subpktid, key);
 

Modified: trunk/Src/wptHTTP.cpp
===================================================================
--- trunk/Src/wptHTTP.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptHTTP.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -318,7 +318,7 @@
 
     /* XXX: do not use static buffers. */
     memset (tmpbuf, 0, sizeof (tmpbuf));
-    strncpy (tmpbuf, _url, 512);
+    strncpy (tmpbuf, _url, sizeof (tmpbuf)-1);
     
     p = "http://";
     if (strlen (_url) < 10 || strncmp (_url, p, 7))
@@ -345,7 +345,7 @@
     char *p;
     char *fmt = "%s: %s";
 
-    p = (char*) malloc (strlen (name)+strlen (val)+strlen (fmt)+1);
+    p = (char*) malloc (strlen (name)+strlen (val)+strlen (fmt)+4);
     sprintf (p, fmt, name, val);
     addHeader (&req_headers, p);
     free_if_malloc (p);
@@ -392,7 +392,7 @@
     }
 
     if (*_url == '/')
-    	url++;
+    	_url++;
     if (_url == NULL)
     	_url = "";
 
@@ -403,19 +403,18 @@
     n = 0;
     for (h = req_headers; h; h = h->next)
 	n += strlen (h->d) + 2 + 1;
-
     h_head = "%s /%s HTTP/1.%d\r\n";
-    p = (char*)calloc (1, strlen (id[method]) + strlen (h_head)
-			  + strlen (url) + n + 2 + 1 + 4);
+    n += strlen (id[method]) + strlen (h_head)
+	 + strlen (_url) + n + 2 + 1 + 4;
+    p = (char*)calloc (1, n+1);
     if (!p)
 	BUG (0);
-    sprintf (p, h_head, id[method], url, ver);
+    sprintf (p, h_head, id[method], _url, ver);
     for (h = req_headers; h; h = h->next) {
 	strcat (p, h->d);
 	strcat (p, "\r\n");
     }
     strcat (p, "\r\n");
-    printf ("p='%s'\n", p);
     n = send (fd, p, strlen (p), 0);
     free_if_malloc (p);
     return n > 0? 0 : WPTERR_GENERAL;
@@ -544,7 +543,6 @@
 /* Destroy HTTP object. */
 wHTTP::~wHTTP (void)
 {
-
     http_head_t h;
     
     while (resp_headers) {

Modified: trunk/Src/wptKeyCache.cpp
===================================================================
--- trunk/Src/wptKeyCache.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeyCache.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -43,6 +43,8 @@
 #include "wptUTF8.h"
 
 
+gpgme_error_t parse_keyserver_url (char **r_keyserver, unsigned short *r_port);
+
 /* Attribute list which holds the image data. */
 struct attr_list_s {
     struct attr_list_s *next;
@@ -1028,6 +1030,9 @@
 	err = gpg_find_key_subpacket (item->key->subkeys->keyid+8, attr, &val);
 	if (!err && val != NULL)
 	    err = decode_subpacket (val, NULL, &item->pref_keyserver, &n);
+	if (!err && item->pref_keyserver)
+	    err = parse_keyserver_url (&item->pref_keyserver, 
+				       &item->pref_keyserver_port);
 	break;
     }
     safe_free (val);

Modified: trunk/Src/wptKeyManager.cpp
===================================================================
--- trunk/Src/wptKeyManager.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeyManager.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -850,6 +850,7 @@
     winpt_key_s pk;
     gpgme_key_t key;
     const char *pref_kserv = default_keyserver;
+    unsigned short pref_kserv_port = default_keyserver_port;
     char keyid[16+1];
     int idx, err = 0;
     
@@ -859,15 +860,18 @@
 	idx = listview_get_curr_pos (lv);
     if (idx != -1) {
 	key = km_get_key_ptr (lv, idx, NULL);
-
+	
 	/* In single refresh mode, try to use the users preferred keyserver. */
 	if (flags == 0 &&
 	    !winpt_get_pubkey (key->subkeys->keyid+8, &pk) &&
-	    !gpg_keycache_update_attr (pk.ext, KC_ATTR_PREFKSERV, 0)
-	    && pk.ext->pref_keyserver)
+	    !gpg_keycache_update_attr (pk.ext, KC_ATTR_PREFKSERV, 0) &&
+	    pk.ext->pref_keyserver && 
+	    !strstr (pk.ext->pref_keyserver, "ldap://")) {
 	    pref_kserv = pk.ext->pref_keyserver;
+	    pref_kserv_port = pk.ext->pref_keyserver_port;
+	}
 	_snprintf (keyid, sizeof (keyid)-1, "%s", key->subkeys->keyid+8);
-	err = hkp_recv_key (dlg, pref_kserv, default_keyserver_port,
+	err = hkp_recv_key (dlg, pref_kserv, pref_kserv_port,
 			    keyid, 0, flags);
 	/* if we receive just a single key (no refresh mode), update it. */
 	if (!flags && !err)

Modified: trunk/Src/wptKeyManagerDlg.cpp
===================================================================
--- trunk/Src/wptKeyManagerDlg.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeyManagerDlg.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -688,12 +688,9 @@
     }
 
     /* Disable all secret-key functions when no secret key is available. */
-    {
-	gpg_keycache_t sec = keycache_get_ctx (0);
-	if (gpg_keycache_get_size (sec) == 0) {
-	    enable_button (tb_hwnd, ID_KEYMISC_SIGN, FALSE);
-	    set_menu_state (hmenu, ID_KEYMISC_SIGN, MF_GRAYED);
-	}
+    if (!secret_key_available ()) {
+	enable_button (tb_hwnd, ID_KEYMISC_SIGN, FALSE);
+	set_menu_state (hmenu, ID_KEYMISC_SIGN, MF_GRAYED);
     }
 }
 
@@ -1411,6 +1408,8 @@
 		    set_menu_state (popup, ID_KEYCTX_PASTE, MF_DISABLED|MF_GRAYED);
 		if (mapi_init ())
 		    set_menu_state (popup, ID_KEYCTX_SENDMAIL, MF_DISABLED|MF_GRAYED);
+		if (!secret_key_available ())
+		    set_menu_state (popup, ID_KEYCTX_SIGN, MF_DISABLED|MF_GRAYED);
 
 		/* Override 'Default Keyserver' with the actual name. */
 		host = kserver_get_hostname (0, -1, &port);

Modified: trunk/Src/wptKeylist.cpp
===================================================================
--- trunk/Src/wptKeylist.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeylist.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -595,7 +595,6 @@
     listview_ctrl_t lv;
     listview_column_t col;
     int j, n = 0, ext_chk = 0;
-    int rc = 0;
     
     listview_new (&lv, ctrl);
     if (mode & KEYLIST_ENCRYPT_MIN) {

Modified: trunk/Src/wptKeyserver.cpp
===================================================================
--- trunk/Src/wptKeyserver.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeyserver.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -63,6 +63,20 @@
 /* Default socket timeout. */
 static int default_socket_timeout = 6;
 
+
+/* Wrapper for safe memory allocation. */
+static char*
+safe_alloc (DWORD n)
+{
+    char *p;
+
+    p = new char[n+1];
+    if (!p)
+	BUG (0);
+    memset (p, 0, n);
+    return p;
+}
+
 /* Basic64 encode the input @inbuf to @outbuf. */
 static void
 base64_encode (const char *inbuf, char *outbuf)
@@ -471,9 +485,7 @@
 
     n = 4*strlen (proxy_user) / 3 + 32 + strlen (proxy_pass) + 2;
     free_if_alloc (proxy.base64_user);
-    proxy.base64_user = new char[n];
-    if (!proxy.base64_user)
-	BUG (0);
+    proxy.base64_user = safe_alloc (n+1);
     _snprintf (t, sizeof (t)-1, "%s:%s", proxy_user, proxy_pass);
     base64_encode (t, proxy.base64_user);
     free_if_alloc (proxy.user);
@@ -503,9 +515,9 @@
 port_from_proto (int proto)
 {
     switch (proto) {
-    case KSPROTO_LDAP: return 0;
+    case KSPROTO_LDAP:   return 0;
     case KSPROTO_FINGER: return FINGER_PORT;
-    case KSPROTO_HTTP: return HKP_PORT;
+    case KSPROTO_HTTP:   return HKP_PORT;
     }
     return 0;
 }
@@ -515,7 +527,7 @@
 static int
 proto_from_URL (const char *buf)
 {
-    if (strstr( buf, "ldap"))
+    if (strstr (buf, "ldap"))
 	return KSPROTO_LDAP;
     else if (strstr( buf, "finger"))
 	return KSPROTO_FINGER;
@@ -659,9 +671,7 @@
 	    server[pos].port = atol (p+1);
 	    if (server[pos].port < 0 || server[pos].port > 65536)
 		server[pos].port = HKP_PORT;
-	    server[pos].name = new char [(p-s)+2];
-	    if (!server[pos].name)
-		BUG (0);
+	    server[pos].name = safe_alloc ((p-s)+2);
 	    memset (server[pos].name, 0, (p-s)+2);
 	    memcpy (server[pos].name, s, (p-s));
 	}
@@ -764,7 +774,7 @@
 
 /* Perform URL encoding of the given data. */
 static char*
-URL_encode (const char *url, size_t ulen, size_t *ret_nlen)
+URL_encode (const char *url, DWORD ulen, DWORD *ret_nlen)
 {
     gpgme_data_t hd;
     char numbuf[5], *p;
@@ -794,60 +804,56 @@
 /* Format a request for the given keyid (send). */
 static char*
 kserver_send_request (const char *hostname, WORD port, 
-		      const char *pubkey, int octets)
+		      const char *pubkey, DWORD octets)
 {
-    char *request = NULL;
-    char *enc_pubkey = NULL;
-    size_t enc_octets;
+    const char *fmt;
+    char *request;
+    char *enc_pubkey;
+    DWORD enc_octets;
     int reqlen;
 
     log_debug ("kserver_send_request: %s:%d\r\n", hostname, port);
 
     if (!port)
 	port = HKP_PORT;
-    reqlen = 512 + strlen (hostname) + 2*strlen (pubkey);
-    if (proxy.proto == PROXY_PROTO_HTTP && proxy.base64_user)
-	reqlen += strlen (proxy.base64_user) + 1;
-    request = new char[reqlen];
-    if (!request)
-	BUG (0);
     enc_pubkey = URL_encode (pubkey, octets, &enc_octets);
-    if (!enc_pubkey || !enc_octets) {
-	free_if_alloc (request);
-        return NULL;
-    }
+    reqlen = 2*strlen (hostname) + 2*32/*port*/ + enc_octets + 32 /*len*/ + 1;
     
     if (proxy.user && proxy.proto == PROXY_PROTO_HTTP) {
-        _snprintf (request, reqlen-1,
-                   "POST http://%s:%d/pks/add HTTP/1.0\r\n"
-                   "Referer: \r\n"
-                   "User-Agent: WinPT/W32\r\n"
-                   "Host: %s:%d\r\n"
-                   "Proxy-Authorization: Basic %s\r\n"
-                   "Content-type: application/x-www-form-urlencoded\r\n"
-                   "Content-length: %d\r\n"
-                   "\r\n"
-                   "keytext=%s"
-                   "\r\n",
-                   skip_type_prefix (hostname), port, hostname, port, 
+	fmt = "POST http://%s:%d/pks/add HTTP/1.0\r\n"
+	      "Referer: \r\n"
+              "User-Agent: WinPT/W32\r\n"
+              "Host: %s:%d\r\n"
+              "Proxy-Authorization: Basic %s\r\n"
+              "Content-type: application/x-www-form-urlencoded\r\n"
+              "Content-length: %d\r\n"
+              "\r\n"
+              "keytext=%s"
+              "\r\n";
+	reqlen += strlen (fmt) + strlen (proxy.base64_user) + 1;
+	request = safe_alloc (reqlen+1);
+        _snprintf (request, reqlen, fmt,
+                   skip_type_prefix (hostname), port, hostname, port,
 		   proxy.base64_user, enc_octets+9, enc_pubkey);
     }
     else {
-        _snprintf (request, reqlen-1,
-                   "POST /pks/add HTTP/1.0\r\n"
-                   "Referer: \r\n"
-                   "User-Agent: WinPT/W32\r\n"
-                   "Host: %s:%d\r\n"
-                   "Content-type: application/x-www-form-urlencoded\r\n"
-                   "Content-length: %d\r\n"
-                   "\r\n"
-                   "keytext=%s"
-                   "\r\n",
-                   skip_type_prefix (hostname), port, 
+	fmt = "POST /pks/add HTTP/1.0\r\n"
+              "Referer: \r\n"
+              "User-Agent: WinPT/W32\r\n"
+              "Host: %s:%d\r\n"
+              "Content-type: application/x-www-form-urlencoded\r\n"
+              "Content-length: %d\r\n"
+              "\r\n"
+              "keytext=%s"
+              "\r\n";
+	reqlen += strlen (fmt)+1;
+	request = safe_alloc (reqlen+1);
+        _snprintf (request, reqlen, fmt,
+                   skip_type_prefix (hostname), port,
 		   enc_octets+9, enc_pubkey);
     }
+
     free_if_alloc (enc_pubkey);
-
     log_debug ("%s\r\n", request);
     return request;
 }
@@ -858,35 +864,39 @@
 kserver_recvkey (const char *hostname, WORD port, const char *keyid,
 		 char **r_key, int *r_keylen)
 {
+    const char *fmt;
     char *request = NULL;
     int conn_fd;
-    int rc;
+    int rc, reqlen;
 
     if (!port)
 	port = HKP_PORT;
-    hkp_err = 0; /* reset */    
+    hkp_err = 0; /* reset */
     rc = kserver_connect (hostname, port, &conn_fd);
     if (rc)
         goto leave;
-    
-    request = new char[300+1];
-    if (!request)
-	BUG (0);
-    
+
+    reqlen = strlen (hostname)+32+strlen (keyid)+1;
     if (proxy.host && proxy.user && proxy.proto == PROXY_PROTO_HTTP) {
-	_snprintf (request, 300,
-	    "GET http://%s:%d/pks/lookup?op=get&search=%s HTTP/1.0\r\n"
-	    "Proxy-Authorization: Basic %s\r\n\r\n",
-	    skip_type_prefix (hostname), port, keyid, proxy.base64_user);
+	fmt = "GET http://%s:%d/pks/lookup?op=get&search=%s HTTP/1.0\r\n"
+	      "Proxy-Authorization: Basic %s\r\n\r\n";
+	reqlen =+ strlen (fmt) + strlen (proxy.base64_user)+1;
+	request = safe_alloc (reqlen+1);
+	_snprintf (request, reqlen, fmt, skip_type_prefix (hostname), port,
+		   keyid, proxy.base64_user);
     }
     else if (proxy.host && proxy.proto == PROXY_PROTO_HTTP) {
-	_snprintf (request, 300,
-	    "GET http://%s:%d/pks/lookup?op=get&search=%s HTTP/1.0\r\n\r\n",
-	    skip_type_prefix (hostname), port, keyid);
-    }    
+	fmt = "GET http://%s:%d/pks/lookup?op=get&search=%s HTTP/1.0\r\n\r\n";
+	reqlen += strlen (fmt)+1;
+	request = safe_alloc (reqlen+1);
+	_snprintf (request, reqlen, fmt, skip_type_prefix (hostname), 
+					 port, keyid);
+    }
     else {
-        _snprintf (request, 300,
-	    "GET /pks/lookup?op=get&search=%s HTTP/1.0\r\n\r\n", keyid);
+	fmt = "GET /pks/lookup?op=get&search=%s HTTP/1.0\r\n\r\n";
+	reqlen += strlen (fmt)+1;
+	request = safe_alloc (reqlen+1);
+        _snprintf (request, reqlen, fmt, keyid);
     }
 
     log_debug ("%s\r\n", request);
@@ -971,7 +981,7 @@
     int n=0;
     
     /* parse response 'HTTP/1.0 500 OK' */
-    if (sock_getline (fd, buf, 127, &n))
+    if (sock_getline (fd, buf, sizeof (buf)-1, &n))
 	return WPTERR_KEYSERVER_NOTFOUND;
 
     log_debug ("kserver_search_chkpresp: %s\r\n", buf);
@@ -992,49 +1002,76 @@
 }
 
 
-/* Begin keyserver search procedure. */
+/* Extract the amount of keys from the info record. */
+static int
+count_keys_in_response (char *buf)
+{
+    char *p;
+    int recno = 0;
+    int n = 0;
+
+    /* info:1:4 */
+    if (strncmp (buf, "info", 4))
+	return 0;
+    p = strtok (buf, ":");
+    while (p != NULL) {
+	recno++;
+	if (recno == 3)
+	    n = atoi (p);
+	p = strtok (NULL, ":");
+    }
+    return n;
+}
+
+
+/* Start the keyserver search.
+   Connect to host @hostname and port @port.
+   The pattern are given in @pattern.
+   The socket is returned in @conn_fd and @nkeys contains
+   the amount of keys which were found. */
 int
 kserver_search_begin (const char *hostname, WORD port, 
-		      const char *pattern, int *conn_fd)
+		      const char *pattern, int *conn_fd, int *nkeys)
 {
+    const char *fmt;
     char *request = NULL;
     char *enc_patt = NULL;
-    int n;
+    char status[128];
     int rc, sock_fd;
+    int reqlen;
     
+    *conn_fd = 0;
+
     rc = kserver_connect (hostname, port, &sock_fd);
-    if (rc) {
-        *conn_fd = 0;
+    if (rc)
         goto leave;
-    }
 
     enc_patt = URL_encode (pattern, strlen (pattern), NULL);
-    n = 140 + strlen (enc_patt) + strlen (hostname) + 32 + 2;
-    if (proxy.base64_user)
-	n += strlen (proxy.base64_user) + 1;
-    request = new char[n+1];
-    if (!request)
-	BUG (0);
-    
+    reqlen = strlen (enc_patt) + strlen (hostname) + 32 + 1;
+
     if (proxy.host && proxy.user && proxy.proto == PROXY_PROTO_HTTP) {
-	_snprintf (request, n,
-	    "GET http://%s:%d/pks/lookup?op=index&search=%s HTTP/1.0\r\n"
-	    "Proxy-Authorization: Basic %s\r\n\r\n",
-	    skip_type_prefix (hostname), port, enc_patt, proxy.base64_user);
+	fmt = "GET http://%s:%d/pks/lookup?options=mr&op=index&search=%s HTTP/1.0\r\n"
+	      "Proxy-Authorization: Basic %s\r\n\r\n";
+	reqlen += strlen (proxy.base64_user) + strlen (fmt) + 1;
+	request = safe_alloc (reqlen+1);
+	_snprintf (request, reqlen, fmt, skip_type_prefix (hostname), port, 
+		   enc_patt, proxy.base64_user);
     }    
     else if (proxy.host && proxy.proto == PROXY_PROTO_HTTP) {
-	_snprintf (request, n,
-	    "GET http://%s:%d/pks/lookup?op=index&search=%s HTTP/1.0\r\n\r\n",
-	    skip_type_prefix (hostname), port, enc_patt);
+	fmt = "GET http://%s:%d/pks/lookup?options=mr&op=index&search=%s HTTP/1.0\r\n\r\n";
+	reqlen += strlen (fmt)+1;
+	request = safe_alloc (reqlen+1);
+	_snprintf (request, reqlen, skip_type_prefix (hostname), port, 
+			    enc_patt);
     }
     else {
-        _snprintf (request, n,
-		   "GET /pks/lookup?op=index&search=%s HTTP/1.0\r\n\r\n", 
-		   enc_patt);
+	fmt = "GET /pks/lookup?options=mr&op=index&search=%s HTTP/1.0\r\n\r\n";
+	reqlen += strlen (fmt)+1;
+	request = safe_alloc (reqlen+1);
+        _snprintf (request, reqlen, fmt, enc_patt);
     }
-    
+
     log_debug ("kserver_search_begin:\r\n%s\r\n", request);
-    
     if (sock_write (sock_fd, request, strlen (request)) == SOCKET_ERROR) {
         rc = WPTERR_GENERAL;
         goto leave;
@@ -1044,8 +1081,24 @@
     if (rc) {
 	closesocket (sock_fd);
 	sock_fd = 0;
+	goto leave;
     }
 
+    /* Skip all lines until we reach the "info:" record. */
+    for (;;) {
+	if (sock_getline (sock_fd, status, sizeof (status)-1, &reqlen)) {	
+	    log_debug ("kserver_search_begin: retrieving status line failed.\r\n");
+	    closesocket (sock_fd);
+	    sock_fd = 0;
+	    rc = WPTERR_GENERAL;
+	    break;
+	}
+	if (!strncmp (status, "info:", 5))
+	    break;
+    }
+
+    if (!rc)
+	*nkeys = count_keys_in_response (status);
     *conn_fd = sock_fd;
     
 leave:
@@ -1055,111 +1108,170 @@
 }
 
 
+/* Parse a single pub record returned by the keyserver. */
+static void
+parse_pub_record (keyserver_key_s *key, char *buf)
+{
+    enum pub_rec_t {ID=1, KEYID, ALGO, SIZE, CREATE, EXPIRE};
+    char *p;
+    int recno = 0;
 
+    /* pub:BF3DF9B4:17:1024:925411133:: */
+    p = strtok (buf, ":");
+    while (p != NULL) {
+	recno++;
+	switch (recno) {
+	case ID: 
+	    break;
 
-/* Convert an iso date @iso_date (YYYY-MM-DD) into the locale
-   representation and store it into @loc_date.
-   Return value: 0 on success. */
-static int
-parse_iso_date (const char *iso_date, char *loc_date, size_t loclen)
+	case KEYID: 
+	    free_if_alloc (key->keyid);
+	    key->keyid = m_strdup (p);
+	    break;
+
+	case ALGO:
+	    key->algo = atoi (p);
+	    break;
+	    
+	case SIZE:
+	    key->bits = atoi (p);
+	    break;
+
+	case CREATE:
+	    key->creation = strtoul (p, NULL, 10);
+	    break;
+
+	case EXPIRE:
+	    key->expires = strtoul (p, NULL, 10);
+	    break;
+	}
+	p = strtok (NULL, ":");
+    }
+    
+}
+
+
+/* Parse a single user id returned by the keyserver. */
+static void
+parse_uid_record (keyserver_key_s *key, char *buf)
 {
-    SYSTEMTIME st;
-    char buf[16] = {0}, *p;
-    int pos=0;
+    enum uid_rec_t {ID=1, UID, CREATE, EXPIRE};
+    keyserver_uid_s *u, *n;
+    char *p;
+    int recno = 0;
 
-    strncpy (buf, iso_date, sizeof (buf)-1);
-    p = strtok (buf, "-");
+    /* uid:Timo Schulz <twoaday at g10code.com>:1138440360:: */
+    u = new keyserver_uid_s;
+    memset (u, 0, sizeof *u);
+
+    p = strtok (buf, ":");
     while (p != NULL) {
-	switch (pos) {
-	case 0: st.wYear  = (WORD)atoi (p); pos++; break;
-	case 1: st.wMonth = (WORD)atoi (p); pos++; break;
-	case 2: st.wDay   = (WORD)atoi (p); pos++; break;
-	default: break;
+	recno++;
+
+	switch (recno) {
+	case ID:
+	    break;
+
+	case UID:
+	    /* XXX: search for %3A and decode it back to ':' */
+	    u->uid = m_strdup (p);
+	    break;
+
+	case CREATE:
+	    u->creation = strtoul (p, NULL, 10);
+	    break;
+
+	case EXPIRE:
+	    u->expires = strtoul (p, NULL, 10);
+	    break;
 	}
-	p = strtok (NULL, "-");
+
+	p = strtok (NULL, ":");
     }
-    if (pos != 3)
-	return -1;
-    
-    if (!GetDateFormat (LOCALE_USER_DEFAULT, DATE_SHORTDATE, &st, 
-			NULL, loc_date, loclen))
-	return -1;
-    return 0;
+    if (!key->uids)
+	key->uids = u;
+    else {
+	for (n = key->uids; n->next; n=n->next)
+	    ;
+	n->next = u;
+    }
 }
 
 
+/* Peek the next 3 bytes to check if the next line
+   would be a new "pub" record. In this case, return
+   -1 as an EOF indication, 0 otherwise. */
+static int
+is_key_eof (int fd)
+{
+    char buf[64];
+    int n;
+
+    n = recv (fd, buf, 3, MSG_PEEK);
+    if (n < 3 || strncmp (buf, "pub", 3))
+	return 0;
+    return -1;
+}
+
+
+/* Return the next key from the search response. */
 int
-kserver_search_next (int fd, keyserver_key *key)
+kserver_search_next (int fd, keyserver_key_s **r_key)
 {
-    char buf[1024], *p;
-    int uidlen, nbytes, pos = 0;
+    keyserver_uid_s *uid, *u = NULL;
+    keyserver_key_s *key;
+    char buf[512];
+    int n = 0;
+    long max = 0;
 
     log_debug ("keyserver_search_next:\r\n");
-    
-    if (sock_getline (fd, buf, sizeof (buf) - 1, &nbytes))
-	return WPTERR_GENERAL;
+    *r_key = NULL;
 
-    /* XXX: use maschine readable option. */
-    log_debug ("%s\r\n", buf);
-    
-    if (!strncmp (buf, "pub", 3)) {
-	int revoked = strstr (buf, "KEY REVOKED") != NULL? 1 : 0;
-        key->bits = atol (buf+3);
-        p = strchr (buf, '>');
-	if (!p)
-	    goto fail;
-	pos = p - buf + 1;
-        memcpy (key->keyid, buf + pos, 8);
-        key->keyid[8] = '\0';
-        p = strstr (buf, "</a>");
-	if (!p)
-	    goto fail;
-	pos = p - buf + 5;
-        memcpy (key->date, buf + pos, 10);
-        key->date[10] = '\0';
-	parse_iso_date (key->date, key->date, sizeof (key->date)-1);
-	if (revoked) {
-	    strcpy (key->uid, "KEY REVOKED: not checked");
-	    return 0;
-	}
-        pos += 10;
-	p = buf + pos + 1;
-	while (p && *p != '>')
-	    p++;
-	p++;
-	uidlen = strlen (p) - 10;
-	if (!strstr (p, "&lt;") && !strstr (p, "&gt;")) {
-	    pos=0;
-	    while (p && *p && pos < sizeof (key->uid)-1) {
-		if (*p == '<')
-		    break;
-		key->uid[pos++] = *p++;
-	    }
-	    key->uid[pos] ='\0';
-	    return 0;
-	}
+    key = new keyserver_key_s;
+    memset (key, 0, sizeof *key);
+    for (;;) {
+	if (sock_getline (fd, buf, sizeof (buf)-1, &n))
+	    break;
+	if (!strncmp (buf, "pub", 3))
+	    parse_pub_record (key, buf);
+	else
+	    parse_uid_record (key, buf);
+	if (is_key_eof (fd))
+	    break;
+    }
 
-	if (uidlen > sizeof (key->uid)-1)
-	    uidlen = sizeof (key->uid)-1;
-	memcpy (key->uid, p, uidlen);
-	key->uid[uidlen] = '\0';
-	strcat (key->uid, ">");
-	p = strchr (key->uid, '&');
-	if (p) {
-	    key->uid[(p-key->uid)] = '<';
-	    memmove (key->uid+(p-key->uid)+1, key->uid+(p-key->uid)+4, 
-		     strlen (key->uid)-3);
+    /* the uid with the newest self sig is used as the
+       primary user id. */
+    for (uid = key->uids; uid; uid = uid->next) {
+	if (uid->creation > max) {
+	    max = uid->creation;
+	    u = uid;
 	}
-	return 0;
     }
 
-fail:
-    key->bits = 0;
-    memset (key, 0, sizeof *key);
+    key->main_uid = u? u : key->uids;
+    *r_key = key;
     return 0;
 }
 
 
+/* Release the keyserver key @key and all its elements. */
+void
+kserver_release_key (keyserver_key_s *key)
+{
+    keyserver_uid_s *u;
+
+    while (key->uids) {
+	u = key->uids->next;
+	free_if_alloc (key->uids->uid);
+	free_if_alloc (key->uids);
+	key->uids = u;
+    }
+    free_if_alloc (key->keyid);
+    free_if_alloc (key);
+}
+
+
 /* Release mbmers in the proxy context @ctx. */
 void
 kserver_proxy_release (keyserver_proxy_t ctx)
@@ -1209,7 +1321,7 @@
 
     p = get_gnupg_prog ();
     n = strlen (p) + 1 + 128;
-    ksprg = new char[n+1];
+    ksprg = safe_alloc (n+1);
     if (!ksprg)
 	BUG (0);
     sep = strrchr (p, '\\');
@@ -1243,9 +1355,7 @@
 	host? skip_type_prefix (host): "64.94.85.200", keyid);
     fclose (fp);
 
-    p = new char[strlen (ksprg) + strlen (inf) + strlen (outf) + 32];
-    if (!p)
-	BUG (NULL);
+    p = safe_alloc (strlen (ksprg) + strlen (inf) + strlen (outf) + 32);
     sprintf (p, "%s -o %s %s", ksprg, outf, inf);
     if (spawn_application (p)) {
 	fp = NULL;
@@ -1372,3 +1482,28 @@
     }
     return 0;
 }
+
+
+/* Split the URL @r_keyserver into the host and the port
+   part if possible. */
+gpgme_error_t
+parse_keyserver_url (char **r_keyserver, unsigned short *r_port)
+{
+    char *p;
+    char *url = *r_keyserver;
+
+    /* no port is given so use the default port. */
+    p = strrchr (url, ':');
+    if (p == strchr (url, ':')) {
+	int port = port_from_proto (proto_from_URL (url));
+	if (!port)
+	    port = HKP_PORT;
+	*r_port = port;
+	return 0;
+    }
+    /* XXX: remove / in .de/:11371 */
+    *r_keyserver = substr (url, 0, (p-url));    
+    *r_port = atoi (url+(p-url)+1);
+    safe_free (url);
+    return 0;
+}

Modified: trunk/Src/wptKeyserverSearchDlg.cpp
===================================================================
--- trunk/Src/wptKeyserverSearchDlg.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptKeyserverSearchDlg.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -33,24 +33,25 @@
 #include "wptContext.h" /* for passphrase_s */
 #include "wptDlgs.h"
 #include "wptNLS.h"
+#include "wptKeylist.h"
 
 
-enum { KSS_COL_BITS = 0, KSS_COL_KEYID, KSS_COL_DATE, KSS_COL_UID };
+enum { KSS_COL_BITS = 0, KSS_COL_ALGO, 
+       KSS_COL_KEYID, KSS_COL_DATE, KSS_COL_UID };
 
-int
-hkp_recv_key2 (HWND dlg, const char *kserver, WORD port,
-	       const char *pattern, int proto, char **r_fpr);
+int hkp_recv_key2 (HWND dlg, const char *kserver, WORD port,
+	           const char *pattern, int proto, char **r_fpr);
 
-
 /* Initialize dialog. */
 static listview_ctrl_t
 on_init_dialog (HWND dlg, UINT msg, WPARAM wparam, LPARAM lparam)
 {
     struct listview_column_s keysearch[] = {
         {0,  48, (char *)_("Size")},
-        {1,  64, (char *)_("Key ID")},
-        {2,  72, (char *)_("Creation")},
-        {3, 256, (char *)_("User ID")},
+	{1,  48, (char*)_("Algorithm")},
+        {2,  64, (char *)_("Key ID")},
+        {3,  72, (char *)_("Creation")},
+        {4, 256, (char *)_("User ID")},
         {0,   0, NULL}
     };
     char info[384];
@@ -77,26 +78,35 @@
 static int
 search_hkp_keys (HWND dlg, keyserver_ctx *ksc, listview_ctrl_t lv)
 {
-    int rc;
-    int conn_fd = 0;
-    char t[32];
-    keyserver_key key;
+    keyserver_key_s *key;
+    const char *uid;
+    char bits[32], algo[32];
+    int conn_fd = 0;    
+    int rc, nkeys = 0;
 
-    rc = kserver_search_begin (ksc->name, ksc->port, ksc->pattern, &conn_fd);
+    rc = kserver_search_begin (ksc->name, ksc->port, ksc->pattern, 
+			       &conn_fd, &nkeys);
     if (rc) {
         msg_box (dlg, winpt_strerror (rc), _("Keyserver Search"), MB_ERR);
 	return rc;
     }
 
-    while (!kserver_search_next (conn_fd, &key)) {
-	if (!key.bits)
+    while (nkeys-- > 0) {
+	if (kserver_search_next (conn_fd, &key))
+	    break;
+	if (!key)
 	    continue;
-	_snprintf (t, sizeof (t) - 1, "%d", key.bits);
+	_snprintf (bits, sizeof (bits) - 1, "%d", key->bits);
+	_snprintf (algo, sizeof (algo)-1, "%s", 
+		    get_key_pubalgo ((gpgme_pubkey_algo_t)key->algo));
+	uid = key->main_uid? key->main_uid->uid : "";
 	listview_add_item (lv, " ");
-	listview_add_sub_item (lv, 0, KSS_COL_BITS, t);
-	listview_add_sub_item (lv, 0, KSS_COL_KEYID, key.keyid);
-	listview_add_sub_item (lv, 0, KSS_COL_DATE, key.date);
-	listview_add_sub_item (lv, 0, KSS_COL_UID, key.uid);
+	listview_add_sub_item (lv, 0, KSS_COL_BITS, bits);
+	listview_add_sub_item (lv, 0, KSS_COL_ALGO, algo);
+	listview_add_sub_item (lv, 0, KSS_COL_KEYID, key->keyid);
+	listview_add_sub_item (lv, 0, KSS_COL_DATE, get_key_created (key->creation));
+	listview_add_sub_item (lv, 0, KSS_COL_UID, uid);
+	kserver_release_key (key); key=NULL;
     }
 
     kserver_search_end (conn_fd);

Modified: trunk/Src/wptMainProc.cpp
===================================================================
--- trunk/Src/wptMainProc.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptMainProc.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -275,16 +275,6 @@
 }
 
 
-static bool
-secret_key_available (void)
-{
-    gpg_keycache_t sec = keycache_get_ctx (0);
-    if (!sec || gpg_keycache_get_size (sec) == 0)
-	return false;
-    return true;
-}
-
-
 /* Load the Card Manager with the current card. */
 static void
 load_card_manager (void)

Modified: trunk/Src/wptPassphraseCB.cpp
===================================================================
--- trunk/Src/wptPassphraseCB.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptPassphraseCB.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -91,9 +91,9 @@
 	if (!c)
 	    BUG (0);
 	SetDlgItemText (dlg, IDCANCEL, _("&Cancel"));
-	SetDlgItemText (dlg, IDC_DECRYPT_HIDE, _("&Hide Typing"));
 	SetWindowText (dlg, c->title);
 	if (c->gpg_cmd == GPG_CMD_DECRYPT) {
+	    SetDlgItemText (dlg, IDC_DECRYPT_HIDE, _("&Hide Typing"));
 	    SetDlgItemText (dlg, IDC_DECRYPT_LISTINF,
 			    _("Encrypted with the following public key(s)"));
 	    CheckDlgButton (dlg, IDC_DECRYPT_HIDE, BST_CHECKED);
@@ -417,7 +417,7 @@
 	}
 	c->pwd_init = 0;
     }
-    if (c->cancel) {
+    if (c->cancel || !c->pwd) {
 	if (!WriteFile (hd, "\n", 1, &n, NULL))
 	    log_debug ("passphrase_cb: WriteFile() failed ec=%d\n", w32_errno);
 	return 0;
@@ -447,33 +447,41 @@
     cb->pwd_init = 1;
     free_if_alloc (cb->title);
     cb->title = m_strdup (title);
-    if (!cb->title)
-	BUG (NULL);
     gpgme_set_passphrase_cb (ctx, passphrase_cb, cb);
     cb->gpg = ctx;
 }
 
 
-/* Release a passphrase callback @ctx. */
+/* Release the gpg recipient list. */
 void
-release_gpg_passphrase_cb (passphrase_cb_s *ctx)
+release_gpg_recipients (gpgme_recipient_t *recipients)
 {
     gpgme_recipient_t r, n;
 
-    if (!ctx)
-	return;
-    sfree_if_alloc (ctx->pwd);
-    free_if_alloc (ctx->title);
-    r = ctx->recipients;
-    while (r) {
+    r = *recipients;
+    while (r != NULL) {
 	n = r->next;
 	safe_free (r->keyid);
 	safe_free (r);
 	r = n;
     }
+    *recipients = NULL;
 }
 
 
+
+/* Release a passphrase callback @ctx. */
+void
+release_gpg_passphrase_cb (passphrase_cb_s *ctx)
+{
+    if (!ctx)
+	return;
+    sfree_if_alloc (ctx->pwd);
+    free_if_alloc (ctx->title);
+    release_gpg_recipients (&ctx->recipients);
+}
+
+
 /* Simple check to measure passphrase (@pass) quality.
    Return value: 0 on success. */
 int

Modified: trunk/Src/wptUtil.cpp
===================================================================
--- trunk/Src/wptUtil.cpp	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/Src/wptUtil.cpp	2006-05-14 18:40:36 UTC (rev 214)
@@ -23,6 +23,7 @@
 #endif
 
 #include <string.h>
+#include <stdlib.h>
 #include <stdio.h>
 #include <ctype.h>
 
@@ -94,7 +95,7 @@
 int
 check_email_address (const char *email)
 {
-    const char *allowed = "@._-%+";
+    const char *allowed = "@._-%+;";
     size_t i;
 
     if (!strchr (email, '@'))
@@ -108,3 +109,26 @@
     }
     return 0;
 }
+
+
+/* Return a substring of @str from the position @begin
+   to position @end. */
+char*
+substr (const char *str, unsigned int begin, unsigned int end)
+{    
+    char *p;
+    size_t i, pos;
+
+    if (end > strlen (str) || begin > strlen (str) || (end-begin) < 0)
+	return NULL;
+
+    /*p = new char[end-begin+1]; XXX: fixme*/
+    p = (char*)calloc (1, end-begin+1);
+    if (!p)
+	abort ();
+
+    for (i = begin, pos=0; i < end; i++)
+	p[pos++] = str[i];
+    p[pos] = '\0';
+    return p;
+}

Modified: trunk/THANKS
===================================================================
--- trunk/THANKS	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/THANKS	2006-05-14 18:40:36 UTC (rev 214)
@@ -66,6 +66,7 @@
 PPLF                pgpenfrancias at bigfoot.com
 Ralf Kreutzmann     ralf.kreutzmann at equipmente.de
 Richard V. Wielgosz rich at cnylug.org
+Sebastian Rose-Indorf
 Shane M. Coughlan   shane at shaneland.co.uk
 Susumu Takahashi    s.takahashi at tortoise.jp
 Scirè Salvatore     scires at tin.it

Modified: trunk/TODO
===================================================================
--- trunk/TODO	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/TODO	2006-05-14 18:40:36 UTC (rev 214)
@@ -1,10 +1,8 @@
 (priority: + high, * normal, - low)
 
-version 0.11.x
+version 0.12.x
     + check native language support with non-admin accounts.
     * there is a problem with the +E hotkey in EURO countries.
-    * find a way to allow a designated revoker to revoke a
-      key he is 'responsible' for.
     * migrate keyserver code to use the HTTP class.
       Implement proxy authentication into the HTTP class.
     * Implement a system to manage language files. Retrieve a list
@@ -26,14 +24,12 @@
     - Use '!' in the encrypt dialog to use the subkey which was selected
       and not the newest.
     - Revamp the group database code. Use the GPG --group feature and make
-    * Implement to recognize one-pass sigs for files also.
     * CARD
         - sign/decrypt
         - factor out some common code into wptCardManager.cpp
     * Implement --armor in the FM for --symmetric.
     * Winpt should take care for a multi user environment.
     * Use accelators for some dialogs to support 'hotkeys'.
-
     * Move the both managers (key/file) to separate applications
       and use ActiveX control elemens for the treelist element.
     * Implement the non-swapable memory for passphrase handling.

Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/configure.ac	2006-05-14 18:40:36 UTC (rev 214)
@@ -15,7 +15,7 @@
 
 # Version number: Remember to change it immediately *after* a release.
 #                 Add a "-cvs" prefix for non-released code.
-AC_INIT(WinPT, 0.12.1-cvs, http://www.winpt.org)
+AC_INIT(WinPT, 0.12.1, http://www.winpt.org)
 NEED_GPG_VERSION=1.4.2
 NEED_GPGME_API=1
 NEED_GPGME_VERSION=1.1.1

Deleted: trunk/keyserver.conf
===================================================================
--- trunk/keyserver.conf	2006-05-11 13:32:56 UTC (rev 213)
+++ trunk/keyserver.conf	2006-05-14 18:40:36 UTC (rev 214)
@@ -1,17 +0,0 @@
-# Lines that begins with hashes or empty lines are ignored!
-#
-# The format of the file is:
-# Protocol://DNS-name
-#
-# Valid protocols are http:// or hkp:// for HKP keyservers,
-#                     ldap:// for LDAP keyservers
-# and                 finger:// for FINGER daemons with public key support.
-
-hkp://keyserver.kjsl.com
-hkp://random.sks.keyserver.penguin.de
-hkp://subkeys.pgp.net
-http://pgpkeys.pca.dfn.de:80
-#ldap://keyserver.pgp.com
-#finger://finger.server.com
-
-



More information about the Winpt-commits mailing list