]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commit
Run radvd for virtual networks with IPv6 addresses
authorLaine Stump <laine@laine.org>
Mon, 20 Dec 2010 06:14:11 +0000 (01:14 -0500)
committerLaine Stump <laine@laine.org>
Thu, 23 Dec 2010 20:55:05 +0000 (15:55 -0500)
commit8090a56890457b192ff453a65f220c4b6617dc27
treea597ef97f4026bc47630b040924c8ce52c515b15
parent6ccce75240f2c8991be97b78f8a43ee7b6552733
Run radvd for virtual networks with IPv6 addresses

Running an instance of the router advertisement daemon (radvd) allows
guests using the virtual network to automatically acquire an IPv6
address and default route. Note that acquiring an address only works
for networks with a prefix length of exactly 64 - radvd is still run
in other circumstances, and still advertises routes, but autoconf will
not work because it requires exactly 64 bits of address info from the
network prefix.

This patch avoids a race condition with the pidfile by manually
daemonizing radvd rather than allowing it to daemonize itself, then
creating our own pidfile (in addition to radvd's own file, which is
unnecessary, but there is no way to tell radvd to not create it). This
is accomplished by exec'ing it with "--debug 1" in the commandline,
and using virCommand's features to fork, create a pidfile, and detach
from the newly forked process.
configure.ac
src/conf/network_conf.h
src/network/bridge_driver.c