diff options
author | Werner Koch <[email protected]> | 2016-07-13 13:11:46 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2016-07-13 13:11:46 +0000 |
commit | 4ef62278e3c9406360dc50288f422291497e218f (patch) | |
tree | fff3a49be5c2659ab87195e5b0a4f88e51a49205 /dirmngr/server.c | |
parent | Merge branch 'master' into STABLE-BRANCH-2-2 (diff) | |
parent | gpg: New option --mimemode. (diff) | |
download | gnupg-4ef62278e3c9406360dc50288f422291497e218f.tar.gz gnupg-4ef62278e3c9406360dc50288f422291497e218f.zip |
Merge branch 'master' into STABLE-BRANCH-2-2
--
Diffstat (limited to '')
-rw-r--r-- | dirmngr/server.c | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/dirmngr/server.c b/dirmngr/server.c index 6eb6f1bef..d3e57c037 100644 --- a/dirmngr/server.c +++ b/dirmngr/server.c @@ -799,9 +799,10 @@ cmd_dns_cert (assuan_context_t ctx, char *line) static const char hlp_wkd_get[] = - "WKD_GET <user_id>\n" + "WKD_GET [--submission-address] <user_id>\n" "\n" - "Return the key for <user_id> from a Web Key Directory.\n"; + "Return the key or the submission address for <user_id>\n" + "from a Web Key Directory."; static gpg_error_t cmd_wkd_get (assuan_context_t ctx, char *line) { @@ -812,7 +813,9 @@ cmd_wkd_get (assuan_context_t ctx, char *line) char sha1buf[20]; char *uri = NULL; char *encodedhash = NULL; + int opt_submission_addr; + opt_submission_addr = has_option (line, "--submission-address"); line = skip_options (line); mbox = mailbox_from_userid (line); @@ -831,11 +834,21 @@ cmd_wkd_get (assuan_context_t ctx, char *line) goto leave; } - uri = strconcat ("https://", - domain, - "/.well-known/openpgpkey/hu/", - encodedhash, - NULL); + if (opt_submission_addr) + { + uri = strconcat ("https://", + domain, + "/.well-known/openpgpkey/submission-address", + NULL); + } + else + { + uri = strconcat ("https://", + domain, + "/.well-known/openpgpkey/hu/", + encodedhash, + NULL); + } if (!uri) { err = gpg_error_from_syserror (); @@ -848,7 +861,8 @@ cmd_wkd_get (assuan_context_t ctx, char *line) outfp = es_fopencookie (ctx, "w", data_line_cookie_functions); if (!outfp) - err = set_error (GPG_ERR_ASS_GENERAL, "error setting up a data stream"); + err = set_error (GPG_ERR_ASS_GENERAL, + "error setting up a data stream"); else { err = ks_action_fetch (ctrl, uri, outfp); |