aboutsummaryrefslogtreecommitdiffstats
path: root/src/keylist.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2019-12-13 14:10:51 +0000
committerWerner Koch <[email protected]>2019-12-13 14:11:00 +0000
commit5eeae535ee0df981d8ae8b758b5bb0d190c7fd89 (patch)
tree4e81680772097106b02c7bf7d4584b7a8334f351 /src/keylist.c
parentRevert "doc: Remove UI Server documentation" (diff)
downloadgpgme-5eeae535ee0df981d8ae8b758b5bb0d190c7fd89.tar.gz
gpgme-5eeae535ee0df981d8ae8b758b5bb0d190c7fd89.zip
core: Extend gpgme_user_id_t with uidhash member.
* src/gpgme.h.in (struct _gpgme_user_id): Add field 'uidhash'. * src/key.c (gpgme_key_unref): Free it. * src/keylist.c (keylist_colon_handler): Set it. * tests/run-keylist.c (main): Print it. -- The uidhash value is part of gpg's output since the year 2005. This now adds support to gpgme. The application for uidhash is to select a user id in an edit interactor: Instead of giving the number of the user id, the uidhash value can be be used to avoid tracking the user id numbers. Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'src/keylist.c')
-rw-r--r--src/keylist.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/keylist.c b/src/keylist.c
index a0de7666..a4de3ad5 100644
--- a/src/keylist.c
+++ b/src/keylist.c
@@ -831,6 +831,12 @@ keylist_colon_handler (void *priv, char *line)
if (field[1])
set_userid_flags (key, field[1]);
+ if (field[7] && *field[7])
+ {
+ gpgme_user_id_t uid = key->_last_uid;
+ assert (uid);
+ uid->uidhash = strdup (field[7]);
+ }
opd->tmp_uid = key->_last_uid;
if (fields >= 20)
{