diff options
author | Werner Koch <[email protected]> | 2017-01-08 17:04:59 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2017-01-08 17:04:59 +0000 |
commit | 16078f3deea5b82ea26e2f01dbd3ef3a5ce25410 (patch) | |
tree | a8da190a48cb319aaab1d25a35e0ba060fd51194 /dirmngr/http.c | |
parent | dirmngr: Strip root zone suffix from libdns SRV results. (diff) | |
download | gnupg-16078f3deea5b82ea26e2f01dbd3ef3a5ce25410.tar.gz gnupg-16078f3deea5b82ea26e2f01dbd3ef3a5ce25410.zip |
dirmngr: Change internal SRV lookup API.
* dirmngr/dns-stuff.c (get_dns_srv): Add args SERVICE and PROTO.
* dirmngr/http.c (connect_server): Simplify SRV lookup.
* dirmngr/ks-engine-hkp.c (map_host): Ditto.
* dirmngr/t-dns-stuff.c (main): Adjust for changed get_dns_srv.
--
This new API is more convenient because it includes commonly used
code. Note that right now http.c's SRV record code is not used.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'dirmngr/http.c')
-rw-r--r-- | dirmngr/http.c | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/dirmngr/http.c b/dirmngr/http.c index 14d60df4b..7a028047d 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -2362,29 +2362,11 @@ connect_server (const char *server, unsigned short port, /* Do the SRV thing */ if (srvtag) { - /* We're using SRV, so append the tags. */ - if (1 + strlen (srvtag) + 6 + strlen (server) + 1 - <= DIMof (struct srventry, target)) - { - char *srvname = xtrymalloc (DIMof (struct srventry, target)); - - if (!srvname) /* Out of core */ - { - serverlist = NULL; - srvcount = 0; - } - else - { - stpcpy (stpcpy (stpcpy (stpcpy (srvname,"_"), srvtag), - "._tcp."), server); - err = get_dns_srv (srvname, &serverlist, &srvcount); - if (err) - log_info ("getting SRV '%s' failed: %s\n", - srvname, gpg_strerror (err)); - xfree (srvname); - /* Note that on error SRVCOUNT is zero. */ - } - } + err = get_dns_srv (server, srvtag, NULL, &serverlist, &srvcount); + if (err) + log_info ("getting '%s' SRV for '%s' failed: %s\n", + srvtag, server, gpg_strerror (err)); + /* Note that on error SRVCOUNT is zero. */ } if (!serverlist) |