From c2cbe2f87c480c62239dc4c2cbb352acd98cd267 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 9 Jan 2017 10:11:20 +0100 Subject: dirmngr: Do not use a SRV record for HKP if a port was specified. * dirmngr/http.h (parsed_uri_s): Add field EXPLICIT_PORT. * dirmngr/http.c (do_parse_uri): That it. * dirmngr/ks-engine-hkp.c (map_host): Add arg NO_SRV. (make_host_part): Ditto. (ks_hkp_resolve): Set NO_SRV from EXPLICIT_PORT. (ks_hkp_search): Ditto. (ks_hkp_get): Ditto. (ks_hkp_put): Ditto. -- This implements the behaviour of the keyserver helpers from 1.4 and 2.0. Signed-off-by: Werner Koch --- dirmngr/http.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'dirmngr/http.c') diff --git a/dirmngr/http.c b/dirmngr/http.c index 7a028047d..0a47d9f59 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -1169,6 +1169,7 @@ do_parse_uri (parsed_uri_t uri, int only_local_part, uri->opaque = 0; uri->v6lit = 0; uri->onion = 0; + uri->explicit_port = 0; /* A quick validity check. */ if (strspn (p, VALID_URI_CHARS) != n) @@ -1241,6 +1242,7 @@ do_parse_uri (parsed_uri_t uri, int only_local_part, { *p3++ = '\0'; uri->port = atoi (p3); + uri->explicit_port = 1; } if ((n = remove_escapes (uri->host)) < 0) -- cgit v1.2.3