]> git.proxmox.com Git - qemu.git/commit
slirp: Read host DNS config on demand
authorEd Swierk <eswierk@aristanetworks.com>
Fri, 21 Aug 2009 02:00:31 +0000 (19:00 -0700)
committerAnthony Liguori <aliguori@us.ibm.com>
Fri, 28 Aug 2009 01:46:58 +0000 (20:46 -0500)
commitdf7a86ed735eafefbd046c8cad7134652fe3f600
tree585563918d17462f707cebdae337d5fcde45d927
parentce0bd027df9c62766a5417521d0f08f27359d43f
slirp: Read host DNS config on demand

Currently the qemu user-mode networking stack reads the host DNS
configuration (/etc/resolv.conf or the Windows equivalent) only once
when qemu starts.  This causes name lookups in the guest to fail if the
host is moved to a different network from which the original DNS servers
are unreachable, a common occurrence when the host is a laptop.

This patch changes the slirp code to read the host DNS configuration on
demand, caching the results for at most 1 second to avoid unnecessary
overhead if name lookups occur in rapid succession.  On non-Windows
hosts, /etc/resolv.conf is re-read only if the file has been replaced or
if its size or mtime has changed.

Signed-off-by: Ed Swierk <eswierk@aristanetworks.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
slirp/ip_icmp.c
slirp/libslirp.h
slirp/main.h
slirp/slirp.c
slirp/socket.c
slirp/tcp_subr.c