(public_key_list): Do a trustdb staleness check before
authorWerner Koch <wk@gnupg.org>
Tue, 18 Jan 2005 09:51:58 +0000 (09:51 +0000)
committerWerner Koch <wk@gnupg.org>
Tue, 18 Jan 2005 09:51:58 +0000 (09:51 +0000)
opening the keyring.
(secret_key_list): Ditto.

g10/ChangeLog
g10/keylist.c

index 385c338..bc37588 100644 (file)
@@ -1,3 +1,9 @@
+2005-01-18  Werner Koch  <wk@g10code.com>
+
+       * keylist.c (public_key_list): Do a trustdb staleness check before
+       opening the keyring.
+       (secret_key_list): Ditto.
+
 2005-01-10  David Shaw  <dshaw@jabberwocky.com>
 
        * keyedit.c (keyedit_menu): Move command strings outside the
index feae696..b712aa4 100644 (file)
@@ -95,6 +95,13 @@ public_key_list( STRLIST list )
       printf("\n");
     }
 
+  /* We need to do the stale check right here because it might need to
+     update the keyring while we already have the keyring open.  This
+     is very bad for W32 because of a sharing violation. For real OSes
+     it might lead to false results if we are later listing a keyring
+     which is associated with the inode of a deleted file.  */
+  check_trustdb_stale ();
+
   if( !list )
     list_all(0);
   else
@@ -104,6 +111,8 @@ public_key_list( STRLIST list )
 void
 secret_key_list( STRLIST list )
 {
+    check_trustdb_stale ();
+
     if( !list )
        list_all(1);
     else  /* List by user id */