mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-10 13:04:23 +01:00
dirmngr: Prepare for updated WKD specs with ?l= param
* dirmngr/server.c (proc_wkd_get): Tack the raw local address to the request. -- We append the raw non-canonicalized local address part to the hash. Servers who serve the requests from static files will ignore the parameters and a test with posteo shows that also services using a database ignore the parameter. The general idea is that service providers may use their own canonicalization rules. The problem is that we currently filter the returned key for the full mail address and thus we will never see a key if the service did a different canonicalization than we. So consider this to be an experiment. Signed-off-by: Werner Koch <wk@gnupg.org> (cherry picked from commit 256a280c51f9ea862e4bfb0bb530c2a96f9088f9)
This commit is contained in:
parent
b0d6e26bf3
commit
a2bd4a64e5
@ -956,13 +956,21 @@ proc_wkd_get (ctrl_t ctrl, assuan_context_t ctx, char *line)
|
||||
NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
char *escapedmbox;
|
||||
|
||||
escapedmbox = http_escape_string (mbox, "%;?&=");
|
||||
if (escapedmbox)
|
||||
{
|
||||
uri = strconcat ("https://",
|
||||
domain,
|
||||
portstr,
|
||||
"/.well-known/openpgpkey/hu/",
|
||||
encodedhash,
|
||||
"?l=",
|
||||
escapedmbox,
|
||||
NULL);
|
||||
xfree (escapedmbox);
|
||||
no_log = 1;
|
||||
if (uri)
|
||||
{
|
||||
@ -972,6 +980,7 @@ proc_wkd_get (ctrl_t ctrl, assuan_context_t ctx, char *line)
|
||||
goto leave;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!uri)
|
||||
{
|
||||
err = gpg_error_from_syserror ();
|
||||
|
Loading…
x
Reference in New Issue
Block a user