wks: Print the UID creation time with gpg-wks-client --check.
authorWerner Koch <wk@gnupg.org>
Mon, 18 Sep 2017 09:31:36 +0000 (11:31 +0200)
committerWerner Koch <wk@gnupg.org>
Mon, 18 Sep 2017 09:31:36 +0000 (11:31 +0200)
* tools/gpg-wks.h (uidinfo_list_s): Add field 'created'.
* tools/wks-util.c (append_to_uidinfo_list): Add arf 'created'.
(wks_list_key): Pass timestamp to append_to_uidinfo_list.
* tools/gpg-wks-client.c (command_check): Print UID creation time.

Signed-off-by: Werner Koch <wk@gnupg.org>
tools/gpg-wks-client.c
tools/gpg-wks.h
tools/wks-util.c

index 6b83de8..18a0edd 100644 (file)
@@ -662,6 +662,7 @@ command_check (char *userid)
       if (opt.verbose)
         {
           log_info ("    user-id: %s\n", sl->uid);
+          log_info ("    created: %s\n", asctimestamp (sl->created));
           if (sl->mbox)
             log_info ("  addr-spec: %s\n", sl->mbox);
         }
index 7fc8d9a..cb89fd5 100644 (file)
@@ -73,6 +73,7 @@ typedef struct policy_flags_s *policy_flags_t;
 struct uidinfo_list_s
 {
   struct uidinfo_list_s *next;
+  time_t created; /* Time the userid was created.  */
   char *mbox;  /* NULL or the malloced mailbox from UID.  */
   char uid[1];
 };
index bc076a7..8fc0a2e 100644 (file)
@@ -94,7 +94,7 @@ wks_write_status (int no, const char *format, ...)
 /* Append UID to LIST and return the new item.  On success LIST is
  * updated.  On error ERRNO is set and NULL returned. */
 static uidinfo_list_t
-append_to_uidinfo_list (uidinfo_list_t *list, const char *uid)
+append_to_uidinfo_list (uidinfo_list_t *list, const char *uid, time_t created)
 {
   uidinfo_list_t r, sl;
 
@@ -103,6 +103,7 @@ append_to_uidinfo_list (uidinfo_list_t *list, const char *uid)
     return NULL;
 
   strcpy (sl->uid, uid);
+  sl->created = created;
   sl->mbox = mailbox_from_userid (uid);
   sl->next = NULL;
   if (!*list)
@@ -273,7 +274,8 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes)
       else if (!strcmp (fields[0], "uid") && nfields > 9)
         {
           /* Fixme: Unescape fields[9] */
-          if (!append_to_uidinfo_list (&mboxes, fields[9]))
+          if (!append_to_uidinfo_list (&mboxes, fields[9],
+                                       parse_timestamp (fields[5], NULL)))
             {
               err = gpg_error_from_syserror ();
               goto leave;