diff options
Diffstat (limited to 'main/opennhrp/0001-peer-handle-dns-lookup-failure-properly.patch')
-rw-r--r-- | main/opennhrp/0001-peer-handle-dns-lookup-failure-properly.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/main/opennhrp/0001-peer-handle-dns-lookup-failure-properly.patch b/main/opennhrp/0001-peer-handle-dns-lookup-failure-properly.patch new file mode 100644 index 0000000000..c816d2d91e --- /dev/null +++ b/main/opennhrp/0001-peer-handle-dns-lookup-failure-properly.patch @@ -0,0 +1,42 @@ +From 10a70c0fabdc3a90840a3ede5ef47480b82ce425 Mon Sep 17 00:00:00 2001 +From: Timo Teras <timo.teras@iki.fi> +Date: Wed, 14 Oct 2009 13:21:39 +0300 +Subject: [PATCH] peer: handle dns lookup failure properly + +--- + nhrp/nhrp_peer.c | 16 ++++++++-------- + 1 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/nhrp/nhrp_peer.c b/nhrp/nhrp_peer.c +index fdeef17..aee2906 100644 +--- a/nhrp/nhrp_peer.c ++++ b/nhrp/nhrp_peer.c +@@ -679,17 +679,17 @@ static void nhrp_peer_address_query_cb(struct nhrp_address_query *query, + address_query); + char host[64]; + +- if (num_addr <= 0) { ++ if (num_addr > 0) { ++ nhrp_info("Resolved '%s' as %s", ++ peer->nbma_hostname, ++ nhrp_address_format(&addrs[0], sizeof(host), host)); ++ peer->next_hop_address = addrs[0]; ++ peer->afnum = nhrp_afnum_from_pf(peer->next_hop_address.type); ++ nhrp_peer_run_up_script(peer); ++ } else { + nhrp_error("Failed to resolve '%s'", peer->nbma_hostname); + nhrp_peer_restart_error(peer); + } +- +- nhrp_info("Resolved '%s' as %s", +- peer->nbma_hostname, +- nhrp_address_format(&addrs[0], sizeof(host), host)); +- peer->next_hop_address = addrs[0]; +- peer->afnum = nhrp_afnum_from_pf(peer->next_hop_address.type); +- nhrp_peer_run_up_script(peer); + } + + static void nhrp_peer_restart_cb(struct ev_timer *w, int revents) +-- +1.6.5 + |