diff --git a/dirmngr/server.c b/dirmngr/server.c index c65e0633e..2702d32f9 100644 --- a/dirmngr/server.c +++ b/dirmngr/server.c @@ -924,7 +924,14 @@ proc_wkd_get (ctrl_t ctrl, assuan_context_t ctx, char *line) err = get_dns_srv (ctrl, domain, "openpgpkey", NULL, &srvs, &srvscount); if (err) - goto leave; + { + /* Ignore server failed becuase there are too many resolvers + * which do not work as expected. */ + if (gpg_err_code (err) == GPG_ERR_SERVER_FAILED) + err = 0; /*(srvcount is guaranteed to be 0)*/ + else + goto leave; + } /* Check for rogue DNS names. */ for (i = 0; i < srvscount; i++)