diff options
author | NIIBE Yutaka <[email protected]> | 2020-07-13 01:00:58 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2020-07-13 01:04:12 +0000 |
commit | ce793fc2f838a97cb1e92b3060337b8052f3dc3a (patch) | |
tree | 0033db1bc8104a8ec0fc0aeccacdb6288b12382a | |
parent | Post release updates (diff) | |
download | gnupg-ce793fc2f838a97cb1e92b3060337b8052f3dc3a.tar.gz gnupg-ce793fc2f838a97cb1e92b3060337b8052f3dc3a.zip |
dirmngr: Handle EAFNOSUPPORT at connect_server.
* dirmngr/http.c (connect_server): Skip server with EAFNOSUPPORT.
--
Cherry-pick from master commit of:
109d16e8f644da97ed9c00e6f9010a53097f587a
GnuPG-bug-id: 4977
Signed-off-by: NIIBE Yutaka <[email protected]>
-rw-r--r-- | dirmngr/http.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/dirmngr/http.c b/dirmngr/http.c index 4a47c9852..6f994896c 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -3005,6 +3005,15 @@ connect_server (const char *server, unsigned short port, sock = my_sock_new_for_addr (ai->addr, ai->socktype, ai->protocol); if (sock == ASSUAN_INVALID_FD) { + if (errno == EAFNOSUPPORT) + { + if (ai->family == AF_INET) + v4_valid = 0; + if (ai->family == AF_INET6) + v6_valid = 0; + continue; + } + err = gpg_err_make (default_errsource, gpg_err_code_from_syserror ()); log_error ("error creating socket: %s\n", gpg_strerror (err)); |