summaryrefslogtreecommitdiff
path: root/slirp/ip_icmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'slirp/ip_icmp.c')
-rw-r--r--slirp/ip_icmp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/slirp/ip_icmp.c b/slirp/ip_icmp.c
index 95a4b39a4e..751a8e249a 100644
--- a/slirp/ip_icmp.c
+++ b/slirp/ip_icmp.c
@@ -127,7 +127,8 @@ icmp_input(struct mbuf *m, int hlen)
slirp->vnetwork_addr.s_addr) {
/* It's an alias */
if (so->so_faddr.s_addr == slirp->vnameserver_addr.s_addr) {
- addr.sin_addr = dns_addr;
+ if (get_dns_addr(&addr.sin_addr) < 0)
+ addr.sin_addr = loopback_addr;
} else {
addr.sin_addr = loopback_addr;
}