diff options
author | Werner Koch <[email protected]> | 2017-09-18 10:52:20 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2017-09-18 10:52:20 +0000 |
commit | 7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0 (patch) | |
tree | 24341aa29bd58424d584c46e8b9a8eda1bf135b4 /tools/gpg-wks-server.c | |
parent | wks: Print the UID creation time with gpg-wks-client --check. (diff) | |
download | gnupg-7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0.tar.gz gnupg-7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0.zip |
wks: Send only the newest UID to the server.
* tools/wks-util.c (list_key_status_cb): Rename to key_status_cb.
(wks_filter_uid): New.
(wks_list_key): Allow FPR to be NULL. Return an error if no
fingerprint was found.
* tools/gpg-wks-server.c (process_new_key)
(check_and_publish): Remove now useless extra check for FPR.
* tools/gpg-wks-client.c (command_check): Ditto.
(command_send): Filter out the newest uid.
--
This fixes the case of having several userids with all the the same
mailbox. Now we use the latest user id created. This patch is also a
prerequisite to automatically create a new user id for providers with
the mailbox-only policy.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'tools/gpg-wks-server.c')
-rw-r--r-- | tools/gpg-wks-server.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/tools/gpg-wks-server.c b/tools/gpg-wks-server.c index f7aadba3d..7e3f05017 100644 --- a/tools/gpg-wks-server.c +++ b/tools/gpg-wks-server.c @@ -1105,12 +1105,7 @@ process_new_key (server_ctx_t ctx, estream_t key) err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; - if (!ctx->fpr) - { - log_error ("error parsing key (no fingerprint)\n"); - err = gpg_error (GPG_ERR_NO_PUBKEY); - goto leave; - } + log_assert (ctx->fpr); log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) { @@ -1358,12 +1353,7 @@ check_and_publish (server_ctx_t ctx, const char *address, const char *nonce) err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; - if (!ctx->fpr) - { - log_error ("error parsing key (no fingerprint)\n"); - err = gpg_error (GPG_ERR_NO_PUBKEY); - goto leave; - } + log_assert (ctx->fpr); log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) if (sl->mbox) |