mirror of
git://git.gnupg.org/gnupg.git
synced 2024-11-10 21:38:50 +01:00
* gpgkeys_hkp.c (main, srv_replace): Minor tweaks to use the DNS-SD
names ("pgpkey-http" and "pgpkey-https") in SRV lookups instead of "hkp" and "hkps".
This commit is contained in:
parent
64f24da283
commit
4401184ea7
@ -1,3 +1,9 @@
|
|||||||
|
2009-07-06 David Shaw <dshaw@jabberwocky.com>
|
||||||
|
|
||||||
|
* gpgkeys_hkp.c (main, srv_replace): Minor tweaks to use the
|
||||||
|
DNS-SD names ("pgpkey-http" and "pgpkey-https") in SRV lookups
|
||||||
|
instead of "hkp" and "hkps".
|
||||||
|
|
||||||
2009-06-24 Werner Koch <wk@g10code.com>
|
2009-06-24 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
* gpgkeys_ldap.c (send_key): Do not loop over a NULL modlist in
|
* gpgkeys_ldap.c (send_key): Do not loop over a NULL modlist in
|
||||||
|
@ -494,18 +494,21 @@ fail_all(struct keylist *keylist,int err)
|
|||||||
/* If there is a SRV record, take the highest ranked possibility.
|
/* If there is a SRV record, take the highest ranked possibility.
|
||||||
This is a hack, as we don't proceed downwards. */
|
This is a hack, as we don't proceed downwards. */
|
||||||
static void
|
static void
|
||||||
srv_replace(void)
|
srv_replace(const char *srvtag)
|
||||||
{
|
{
|
||||||
#ifdef USE_DNS_SRV
|
#ifdef USE_DNS_SRV
|
||||||
struct srventry *srvlist=NULL;
|
struct srventry *srvlist=NULL;
|
||||||
int srvcount;
|
int srvcount;
|
||||||
|
|
||||||
if(1+strlen(opt->scheme)+6+strlen(opt->host)+1<=MAXDNAME)
|
if(!srvtag)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if(1+strlen(srvtag)+6+strlen(opt->host)+1<=MAXDNAME)
|
||||||
{
|
{
|
||||||
char srvname[MAXDNAME];
|
char srvname[MAXDNAME];
|
||||||
|
|
||||||
strcpy(srvname,"_");
|
strcpy(srvname,"_");
|
||||||
strcat(srvname,opt->scheme);
|
strcat(srvname,srvtag);
|
||||||
strcat(srvname,"._tcp.");
|
strcat(srvname,"._tcp.");
|
||||||
strcat(srvname,opt->host);
|
strcat(srvname,opt->host);
|
||||||
srvcount=getsrv(srvname,&srvlist);
|
srvcount=getsrv(srvname,&srvlist);
|
||||||
@ -720,17 +723,26 @@ main(int argc,char *argv[])
|
|||||||
port=opt->port;
|
port=opt->port;
|
||||||
else if(try_srv)
|
else if(try_srv)
|
||||||
{
|
{
|
||||||
|
char *srvtag;
|
||||||
|
|
||||||
|
if(ascii_strcasecmp(opt->scheme,"hkp")==0)
|
||||||
|
srvtag="pgpkey-http";
|
||||||
|
else if(ascii_strcasecmp(opt->scheme,"hkps")==0)
|
||||||
|
srvtag="pgpkey-https";
|
||||||
|
else
|
||||||
|
srvtag=NULL;
|
||||||
|
|
||||||
#ifdef HAVE_LIBCURL
|
#ifdef HAVE_LIBCURL
|
||||||
/* We're using libcurl, so fake SRV support via our wrapper.
|
/* We're using libcurl, so fake SRV support via our wrapper.
|
||||||
This isn't as good as true SRV support, as we do not try all
|
This isn't as good as true SRV support, as we do not try all
|
||||||
possible targets at one particular level and work our way
|
possible targets at one particular level and work our way
|
||||||
down the list, but it's better than nothing. */
|
down the list, but it's better than nothing. */
|
||||||
srv_replace();
|
srv_replace(srvtag);
|
||||||
#else
|
#else
|
||||||
/* We're using our internal curl shim, so we can use its (true)
|
/* We're using our internal curl shim, so we can use its (true)
|
||||||
SRV support. Obviously, CURLOPT_SRVTAG_GPG_HACK isn't a real
|
SRV support. Obviously, CURLOPT_SRVTAG_GPG_HACK isn't a real
|
||||||
libcurl option. It's specific to our shim. */
|
libcurl option. It's specific to our shim. */
|
||||||
curl_easy_setopt(curl,CURLOPT_SRVTAG_GPG_HACK,opt->scheme);
|
curl_easy_setopt(curl,CURLOPT_SRVTAG_GPG_HACK,srvtag);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user