mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-09-08 16:54:49 +00:00
This commit adds support for IPv6 parsing and formatting to the virtual network XML parser, including moving around data definitions to allow for multiple <ip> elements on a single network, but only changes the consumers of this API to accommodate for the changes in API/structure, not to add any actual IPv6 functionality. That will come in a later patch - this patch attempts to maintain the same final functionality in both drivers that use the network XML parser - vbox and "bridge" (the Linux bridge-based driver used by the qemu hypervisor driver). * src/libvirt_private.syms: Add new private API functions. * src/conf/network_conf.[ch]: Change C data structure and parsing/formatting. * src/network/bridge_driver.c: Update to use new parser/formatter. * src/vbox/vbox_tmpl.c: update to use new parser/formatter * docs/schemas/network.rng: changes to the schema - * there can now be more than one <ip> element. * ip address is now an ip-addr (ipv4 or ipv6) rather than ipv4-addr * new optional "prefix" attribute that can be used in place of "netmask" * new optional "family" attribute - "ipv4" or "ipv6" (will default to ipv4) * define data types for the above * tests/networkxml2xml(in|out)/nat-network.xml: add multiple <ip> elements (including IPv6) to a single network definition to verify they are being correctly parsed and formatted.
22 lines
737 B
XML
22 lines
737 B
XML
<network>
|
|
<name>default</name>
|
|
<uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
|
|
<bridge name="virbr0" />
|
|
<forward mode="nat" dev="eth1"/>
|
|
<ip address="192.168.122.1" netmask="255.255.255.0">
|
|
<dhcp>
|
|
<range start="192.168.122.2" end="192.168.122.254" />
|
|
<host mac="00:16:3e:77:e2:ed" name="a.example.com" ip="192.168.122.10" />
|
|
<host mac="00:16:3e:3e:a9:1a" name="b.example.com" ip="192.168.122.11" />
|
|
</dhcp>
|
|
</ip>
|
|
<ip family="ipv4" address="192.168.123.1" netmask="255.255.255.0">
|
|
</ip>
|
|
<ip family="ipv6" address="2001:db8:ac10:fe01::1" prefix="64">
|
|
</ip>
|
|
<ip family="ipv6" address="2001:db8:ac10:fd01::1" prefix="64">
|
|
</ip>
|
|
<ip family="ipv4" address="10.24.10.1">
|
|
</ip>
|
|
</network>
|