libvirt/docs
Paolo Bonzini 738ee810b4 network: add 'bootp' and 'tftp' config
Currently, libvirtd will start a dnsmasq process for the virtual
network, but (aside from killing the dnsmasq process and replacing it),
there's no way to define tftp boot options.

This change introduces the appropriate tags to the dhcp configuration:

 <network>
   <name>default</name>
   <bridge name="virbr%d" />
   <forward/>
   <ip address="192.168.122.1" netmask="255.255.255.0">
     <tftp root="/var/lib/tftproot" />
     <dhcp>
       <range start="192.168.122.2" end="192.168.122.254" />
       <bootp file="pxeboot.img"/>
     </dhcp>
   </ip>
 </network>

When the attributes are present, these are passed to the
arguments to dnsmasq:

 dnsmasq [...] --enable-tftp --tftp-root /srv/tftp --dhcp-boot pxeboot.img
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^
                      from <tftp />                     from <bootp />

At present, only local tftp servers are supported (ie, dnsmasq runs as
the tftp server), but we could improve this in future by adding a
server= attribute.

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

2009-09-21  Paolo Bonzini  <pbonzini@redhat.com>
            Jeremy Kerr  <jk@ozlabs.org>

	* docs/formatnetwork.html.in: Document new tags.
	* docs/formatnetwork.html: Regenerate.
	* docs/schemas/network.rng: Update.
	* src/network_conf.c (virNetworkDefFree): Free new fields.
	(virNetworkDHCPRangeDefParseXML): Parse <bootp>.
	(virNetworkIPParseXML): New, parsing <dhcp> and <tftp>.
	(virNetworkDefParseXML): Use virNetworkIPParseXML instead of
	virNetworkDHCPRangeDefParseXML.
	(virNetworkDefFormat): Pretty print new fields.
	* src/network_conf.h (struct _virNetworkDef): Add netboot fields.
	* src/network_driver.c (networkBuildDnsmasqArgv): Add
	TFTP and BOOTP arguments.

	* tests/Makefile.am (EXTRA_DIST): Add networkschemadata.
	* tests/networkschematest: Look in networkschemadata.
	* tests/networkschemadata/netboot-network.xml: New.
2009-09-23 09:47:10 +02:00
..
api_extension remove all trailing blank lines 2009-07-16 15:06:42 +02:00
devhelp Remove all generated docs from source control 2009-09-21 14:41:47 +01:00
html Remove all generated docs from source control 2009-09-21 14:41:47 +01:00
schemas network: add 'bootp' and 'tftp' config 2009-09-23 09:47:10 +02:00
.gitignore Remove all generated docs from source control 2009-09-21 14:41:47 +01:00
32favicon.png * docs/site.xsl docs/*.png docs/*.html: update the images from Diana, 2006-01-23 22:55:41 +00:00
ChangeLog.awk Remove all trailing blanks; turn on the rule to detect them. 2008-02-05 19:27:37 +00:00
ChangeLog.xsl Adapt layout to workaround IE6 bugs 2008-04-25 16:23:51 +00:00
FAQ.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
Makefile.am Move example XML files into examples/xml 2009-09-21 14:41:48 +01:00
api.html.in Api documentation 2009-04-15 20:42:50 +00:00
api_extension.html.in Added docs on extending public API (Dave Allen) 2009-06-09 11:42:41 +00:00
apibuild.py Move all shared utility files to src/util/ 2009-09-21 14:41:47 +01:00
apps.html.in Remove 'the the' typo in docs 2009-08-14 12:01:27 +01:00
archdomain.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
architecture.fig * docs/architecture.* docs/*: added a section on the architecture 2005-12-21 16:59:34 +00:00
architecture.gif * docs/architecture.* docs/*: added a section on the architecture 2005-12-21 16:59:34 +00:00
architecture.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
archnetwork.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
archnode.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
archstorage.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
auth.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
bindings.html.in Documentation cleanups. 2008-09-18 09:00:10 +00:00
bugs.html.in Update the links for RHEL libvirt bugzillas 2009-07-15 11:46:52 +02:00
contact.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
deployment.html.in Change libvirtd description from qemu only to various VM(i.e. Xen, LXC) 2008-05-15 06:12:32 +00:00
docs.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
downloads.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
drivers.html.in OpenNebula driver documentation 2009-07-01 14:27:24 +00:00
drvlxc.html.in Small doc fixes 2009-04-17 15:34:53 +00:00
drvone.html.in small OpenNebula driver doc update 2009-07-01 21:24:47 +00:00
drvopenvz.html.in Added link to libvirt-qpid on front page, and docs on URI formats for each driver 2009-01-27 14:49:09 +00:00
drvqemu.html.in Fix some typos & remove unhelpful acronyms in QEMU docs 2009-08-19 17:02:45 +01:00
drvremote.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
drvtest.html.in Added link to libvirt-qpid on front page, and docs on URI formats for each driver 2009-01-27 14:49:09 +00:00
drvuml.html.in Added link to libvirt-qpid on front page, and docs on URI formats for each driver 2009-01-27 14:49:09 +00:00
drvvbox.html.in * docs/drvvbox.html[.in]: tiny fixes to VirtualBox docs 2009-04-21 13:39:40 +00:00
drvxen.html.in Add docs on domain XML conversion usage for QEMU/Xen drivers 2009-05-21 14:20:21 +00:00
errors.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
et.png * docs/Makefile.am docs/et.png docs/libvirt.css docs/page.xsl 2008-04-28 08:29:35 +00:00
footer_corner.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
footer_pattern.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
format.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
formatcaps.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
formatdomain.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
formatnetwork.html.in network: add 'bootp' and 'tftp' config 2009-09-23 09:47:10 +02:00
formatnode.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
formatsecret.html.in Add <usage> to <secret> docs 2009-09-10 15:30:47 +01:00
formatstorage.html.in Attach encryption information to virStorageVolDef. 2009-09-01 18:27:38 +01:00
formatstorageencryption.html.in Add volume encryption information handling. 2009-09-01 18:27:28 +01:00
generic.css Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
goals.html.in * docs/*: start cleanup/revamp of architecture docs 2009-04-02 12:01:11 +00:00
hacking.html.in Add HACKING doc to the website 2009-06-29 11:09:17 +00:00
hvsupport.html.in OpenNebula driver documentation 2009-07-01 14:27:24 +00:00
index.html.in release of 0.6.3 2009-04-24 14:04:54 +00:00
index.py Change libvirtd description from qemu only to various VM(i.e. Xen, LXC) 2008-05-15 06:12:32 +00:00
internals.html.in Added docs on extending public API (Dave Allen) 2009-06-09 11:42:41 +00:00
intro.html.in * docs/*: start cleanup/revamp of architecture docs 2009-04-02 12:01:11 +00:00
java.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
library.xen remove all trailing blank lines 2009-07-16 15:06:42 +02:00
libvirt-api.xml Release of libvirt 0.7.1 2009-09-15 14:24:51 +02:00
libvirt-daemon-arch.fig Api documentation 2009-04-15 20:42:50 +00:00
libvirt-daemon-arch.png Api documentation 2009-04-15 20:42:50 +00:00
libvirt-driver-arch.fig Api documentation 2009-04-15 20:42:50 +00:00
libvirt-driver-arch.png Api documentation 2009-04-15 20:42:50 +00:00
libvirt-header-bg.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-header-logo.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-net-logical.fig Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-net-logical.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-net-physical.fig Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-net-physical.png Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
libvirt-object-model.fig Api documentation 2009-04-15 20:42:50 +00:00
libvirt-object-model.png Api documentation 2009-04-15 20:42:50 +00:00
libvirt-refs.xml Release of libvirt 0.7.1 2009-09-15 14:24:51 +02:00
libvirt.css Added autogenerated TOC for network and storage XML reference docs 2008-05-06 23:23:55 +00:00
libvirtLogo.png * //* : renamed the project libvirt , this affects all makefiles, 2006-02-09 17:45:11 +00:00
logging.html.in Update logging documentation 2009-08-06 15:58:38 +02:00
madeWith.png * //* : renamed the project libvirt , this affects all makefiles, 2006-02-09 17:45:11 +00:00
main.css Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
newapi.xsl Adapt layout to workaround IE6 bugs 2008-04-25 16:23:51 +00:00
news.html.in Fix a number of small typos 2009-09-22 12:55:39 +02:00
news.xsl Convert NEWS to UTF-8 2009-07-29 09:04:21 +01:00
node.fig * doc/*: augment and try to complete the doc in its current state 2006-01-23 13:24:07 +00:00
node.gif * doc/*: augment and try to complete the doc in its current state 2006-01-23 13:24:07 +00:00
page.xsl Api documentation 2009-04-15 20:42:50 +00:00
python.html.in Split website out into one file per page. APply new layout and styling 2008-04-23 17:08:31 +00:00
relatedlinks.html.in fix the QEmu links 2009-01-12 21:09:09 +00:00
remote.html.in Make pki_check.sh into an installed & supported tool 2009-09-21 14:41:46 +01:00
search.php fix the search 2008-04-24 09:44:00 +00:00
site.xsl Adapt layout to workaround IE6 bugs 2008-04-25 16:23:51 +00:00
sitemap.html.in Add volume encryption information handling. 2009-09-01 18:27:28 +01:00
storage.html.in Fix documentation cut and paste errors, and a virsh typo. 2008-12-04 14:51:57 +00:00
structures.fig * Makefile.am README TODO autogen.sh configure.in libvir.pc.in 2005-12-05 11:16:07 +00:00
uri.html.in Allow remote://hostname/ style URIs for automatic driver probe. Fix virGetVersion impl 2008-11-28 12:03:20 +00:00
windows.html.in Documentation cleanups. 2008-09-18 09:00:10 +00:00