]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
networkxml2xmltest: Sync test cases with networkxml2conftest
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 27 Jan 2026 15:43:06 +0000 (16:43 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 29 Jan 2026 12:39:12 +0000 (13:39 +0100)
The networkxml2xmltest does basic parse -> format tests.
The networkxml2conftest does parse -> conf tests.

Now, majority of XMLs are the same. That is, output XMLs of
networkxml2xmltest and input XMls of networkxml2conftest. There
are only a few differences. This is actually great, because it
will allow either tests to do both test cases.

There are some (subtle) differences in individual test cases
though:

1) some test cases exist only in networkxml2conftest and not
   networkxml2xmltest, or
2) some test cases in networkxml2conftest have more values, i.e.
   extra elements, extra attributes. or
3) some test cases in networkxml2conftest have less values.

For cases from 1) they were just copied over. For cases from 2)
those extra elements/attributes were added, and for cases from 3)
those extra attributes were removed (to minimize changes to .conf
files in near future).

One caveat though: networkxml2xmlupdatetest uses input XMLs of
networkxml2xmltest too (hence changes under
networkxml2xmlupdateout/ dir). This means that the
"delete-srv-record-protocol" test started failing, because the
input network XML now has more <srv/> records than the test case
anticipated. But this is easy to fix - hence seemingly unrelated
change under networkxml2xmlupdatein/ dir.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
31 files changed:
tests/networkxml2confdata/nat-network-dns-srv-record-minimal.conf
tests/networkxml2confdata/nat-network-dns-srv-record-minimal.xml
tests/networkxml2confdata/nat-network-dns-srv-record.conf
tests/networkxml2confdata/nat-network-dns-srv-record.xml
tests/networkxml2xmlin/dhcp6-nat-network.xml [new file with mode: 0644]
tests/networkxml2xmlin/dhcp6-network.xml [new file with mode: 0644]
tests/networkxml2xmlin/nat-network-dns-forwarders.xml
tests/networkxml2xmlin/nat-network-dns-hosts.xml
tests/networkxml2xmlin/nat-network-dns-local-domain.xml [new file with mode: 0644]
tests/networkxml2xmlin/nat-network-dns-srv-record-minimal.xml
tests/networkxml2xmlin/nat-network-dns-srv-record.xml
tests/networkxml2xmlin/nat-network-name-with-quotes.xml [new file with mode: 0644]
tests/networkxml2xmlin/ptr-domains-auto.xml [new file with mode: 0644]
tests/networkxml2xmlout/dhcp6-nat-network.xml [new file with mode: 0644]
tests/networkxml2xmlout/dhcp6-network.xml [new file with mode: 0644]
tests/networkxml2xmlout/nat-network-dns-forwarders.xml
tests/networkxml2xmlout/nat-network-dns-hosts.xml
tests/networkxml2xmlout/nat-network-dns-local-domain.xml [new file with mode: 0644]
tests/networkxml2xmlout/nat-network-dns-srv-record-minimal.xml
tests/networkxml2xmlout/nat-network-dns-srv-record.xml
tests/networkxml2xmlout/nat-network-name-with-quotes.xml [new file with mode: 0644]
tests/networkxml2xmlout/ptr-domains-auto.xml [new file with mode: 0644]
tests/networkxml2xmltest.c
tests/networkxml2xmlupdatein/srv-record-protocol.xml
tests/networkxml2xmlupdateout/nat-network-dns-hosts-modified.xml
tests/networkxml2xmlupdateout/nat-network-dns-more-hosts.xml
tests/networkxml2xmlupdateout/nat-network-dns-srv-records.xml
tests/networkxml2xmlupdateout/nat-network-forward-ifaces.xml
tests/networkxml2xmlupdateout/nat-network-no-forward-ifaces.xml
tests/networkxml2xmlupdateout/nat-network-no-hosts.xml
tests/networkxml2xmlupdateout/nat-network.xml

index bd560ba3f4076792e1667c20162305a8b49a3659..4757f824da64ae52fb96bcc26c7dfff9bc5aee38 100644 (file)
@@ -15,5 +15,5 @@ dhcp-authoritative
 dhcp-lease-max=253
 dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile
 addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts
-dhcp-range=fc00:db8:ac10:fe01::1,ra-only
+dhcp-range=2001:db8:ac10:fe01::1,ra-only
 dhcp-range=fc00:db8:ac10:fd01::1,ra-only
index 13b1c247d55203710e61e622cbf938927aef6d09..83838d01d397611ae94450958b9765da5fe367c5 100644 (file)
@@ -17,7 +17,7 @@
   </ip>
   <ip family='ipv4' address='192.168.123.1' netmask='255.255.255.0'>
   </ip>
-  <ip family='ipv6' address='fc00:db8:ac10:fe01::1' prefix='64'>
+  <ip family='ipv6' address='2001:db8:ac10:fe01::1' prefix='64'>
   </ip>
   <ip family='ipv6' address='fc00:db8:ac10:fd01::1' prefix='64'>
   </ip>
index 22bf3b1de92c433efe91c0bc7327ae78300d2521..c83148cc0a409ca2884cfaa3771aab5f984f89fc 100644 (file)
@@ -8,7 +8,7 @@ strict-order
 except-interface=lo
 bind-dynamic
 interface=virbr0
-srv-host=_name._tcp.test-domain-name.com,test.example.com,1111,11,111
+srv-host=_name._tcp.test-domain-name
 srv-host=_name2._udp,test2.example.com,2222,22,222
 srv-host=_name3._tcp.test3.com,test3.example.com,3333,33
 srv-host=_name4._tcp.test4.com,test4.example.com,4444
index d01b331fb114b17c2536497bb073a85716a7f69a..0369f4caa968822108ecf531377f2ebdf5f1e628 100644 (file)
@@ -6,7 +6,7 @@
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
   <dns>
-    <srv service='name' protocol='tcp' domain='test-domain-name.com' target='test.example.com' port='1111' priority='11' weight='111'/>
+    <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
     <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
     <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
     <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
diff --git a/tests/networkxml2xmlin/dhcp6-nat-network.xml b/tests/networkxml2xmlin/dhcp6-nat-network.xml
new file mode 100644 (file)
index 0000000..cab0700
--- /dev/null
@@ -0,0 +1,27 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'/>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <ip address='192.168.122.1' netmask='255.255.255.0'>
+    <dhcp>
+      <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'/>
+      <range start='192.168.122.2' end='192.168.122.254'/>
+    </dhcp>
+  </ip>
+  <ip family='ipv4' address='192.168.123.1' netmask='255.255.255.0'>
+  </ip>
+  <ip family='ipv6' address='2001:db8:ac10:fd01::1' prefix='64'>
+    <dhcp>
+      <range start='2001:db8:ac10:fd01::1:10' end='2001:db8:ac10:fd01::1:ff'/>
+      <host id='0:4:7e:7d:f0:7d:a8:bc:c5:d2:13:32:11:ed:16:ea:84:63' ip='2001:db8:ac10:fd01::1:20'/>
+      <host name='paul' ip='2001:db8:ac10:fd01::1:21'/>
+      <host id='0:3:0:1:0:16:3e:11:22:33' name='peter.xyz' ip='2001:db8:ac10:fd01::1:22'/>
+      <host id='0:3:0:1:0:16:3e:44:55:33' ip='2001:db8:ac10:fd01::1:23'/>
+      <host id='0:1:0:1:18:aa:62:fe:0:16:3e:44:55:66' name='badbob' ip='2001:db8:ac10:fd01::1:24'/>
+    </dhcp>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
diff --git a/tests/networkxml2xmlin/dhcp6-network.xml b/tests/networkxml2xmlin/dhcp6-network.xml
new file mode 100644 (file)
index 0000000..ae9ff1f
--- /dev/null
@@ -0,0 +1,17 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'/>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <domain name='mynet'/>
+  <ip family='ipv6' address='2001:db8:ac10:fd01::1' prefix='64'>
+    <dhcp>
+      <range start='2001:db8:ac10:fd01::1:10' end='2001:db8:ac10:fd01::1:ff'/>
+      <host id='0:4:7e:7d:f0:7d:a8:bc:c5:d2:13:32:11:ed:16:ea:84:63' ip='2001:db8:ac10:fd01::1:20'/>
+      <host name='paul' ip='2001:db8:ac10:fd01::1:21'/>
+      <host id='0:3:0:1:0:16:3e:11:22:33' name='peter.xyz' ip='2001:db8:ac10:fd01::1:22'/>
+      <host id='0:3:0:1:0:16:3e:44:55:33' ip='2001:db8:ac10:fd01::1:23'/>
+      <host id='0:1:0:1:18:aa:62:fe:0:16:3e:44:55:66' name='badbob' ip='2001:db8:ac10:fd01::1:24'/>
+    </dhcp>
+  </ip>
+</network>
index dd22b686ab0383b8913c77093ed38f8de455387a..70123720b96b50713c8ce84e0316c0d676f3c618 100644 (file)
@@ -6,7 +6,8 @@
   <dns>
     <forwarder addr='8.8.8.8'/>
     <forwarder addr='8.8.4.4'/>
-    <forwarder domain='example.com' addr='192.168.1.1' port='1234'/>
+    <forwarder domain='example.com' addr='192.168.1.1'/>
+    <forwarder domain='example2.com' addr='192.168.2.1' port='1234'/>
     <forwarder domain='www.example.com'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
index c28ebd8c4bdb02e28f2b1649ad687e615c4e476c..6c027423f4e60c2c9bb5fe9b8fcbc07019049f21 100644 (file)
@@ -3,6 +3,7 @@
   <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9c</uuid>
   <forward dev='eth0' mode='nat'/>
   <bridge name='virbr0' stp='on' delay='0'/>
+  <domain name="example.com"/>
   <dns forwardPlainNames='no'>
     <host ip='192.168.122.122'>
       <hostname>pudding</hostname>
diff --git a/tests/networkxml2xmlin/nat-network-dns-local-domain.xml b/tests/networkxml2xmlin/nat-network-dns-local-domain.xml
new file mode 100644 (file)
index 0000000..a92d71f
--- /dev/null
@@ -0,0 +1,9 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9c</uuid>
+  <forward dev='eth0' mode='nat'/>
+  <bridge name='virbr0' stp='on' delay='0' />
+  <domain name='example.com' localOnly='yes'/>
+  <ip address='192.168.122.1' netmask='255.255.255.0'>
+  </ip>
+</network>
index a18afae2fd18ecffe465b7cc344205a797ba380b..83838d01d397611ae94450958b9765da5fe367c5 100644 (file)
@@ -19,7 +19,7 @@
   </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 family='ipv6' address='fc00:db8:ac10:fd01::1' prefix='64'>
   </ip>
   <ip family='ipv4' address='10.24.10.1'>
   </ip>
index 3dd19e6698284c76d8ae1a3be433ca08ff885a36..0369f4caa968822108ecf531377f2ebdf5f1e628 100644 (file)
@@ -7,6 +7,12 @@
   <bridge name='virbr0' stp='on' delay='0'/>
   <dns>
     <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+    <srv service='name7' protocol='tcp' domain='test7.com' target='test7.example.com' weight='777'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
     <dhcp>
diff --git a/tests/networkxml2xmlin/nat-network-name-with-quotes.xml b/tests/networkxml2xmlin/nat-network-name-with-quotes.xml
new file mode 100644 (file)
index 0000000..eba75d2
--- /dev/null
@@ -0,0 +1,26 @@
+<network>
+  <name>default"with"quotes"</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'>
+    <interface dev='eth1'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <dns>
+    <srv service='name' protocol='tcp'/>
+  </dns>
+  <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='fc00:db8:ac10:fe01::1' prefix='64'>
+  </ip>
+  <ip family='ipv6' address='fc00:db8:ac10:fd01::1' prefix='64'>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
diff --git a/tests/networkxml2xmlin/ptr-domains-auto.xml b/tests/networkxml2xmlin/ptr-domains-auto.xml
new file mode 100644 (file)
index 0000000..7fe12dc
--- /dev/null
@@ -0,0 +1,21 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'/>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <ip address='192.168.122.1' netmask='255.255.255.0' localPtr='yes'>
+    <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' localPtr='no'>
+  </ip>
+  <ip family='ipv6' address='2001:db8:ac10:fe01::1' prefix='64' localPtr='yes'>
+  </ip>
+  <ip family='ipv6' address='2001:db8:ac10:fd01::1' prefix='64'>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
diff --git a/tests/networkxml2xmlout/dhcp6-nat-network.xml b/tests/networkxml2xmlout/dhcp6-nat-network.xml
new file mode 100644 (file)
index 0000000..44bb2d1
--- /dev/null
@@ -0,0 +1,30 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'>
+    <interface dev='eth1'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <mac address='52:54:00:00:00:00'/>
+  <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:fd01::1' prefix='64'>
+    <dhcp>
+      <range start='2001:db8:ac10:fd01::1:10' end='2001:db8:ac10:fd01::1:ff'/>
+      <host id='0:4:7e:7d:f0:7d:a8:bc:c5:d2:13:32:11:ed:16:ea:84:63' ip='2001:db8:ac10:fd01::1:20'/>
+      <host name='paul' ip='2001:db8:ac10:fd01::1:21'/>
+      <host id='0:3:0:1:0:16:3e:11:22:33' name='peter.xyz' ip='2001:db8:ac10:fd01::1:22'/>
+      <host id='0:3:0:1:0:16:3e:44:55:33' ip='2001:db8:ac10:fd01::1:23'/>
+      <host id='0:1:0:1:18:aa:62:fe:0:16:3e:44:55:66' name='badbob' ip='2001:db8:ac10:fd01::1:24'/>
+    </dhcp>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
diff --git a/tests/networkxml2xmlout/dhcp6-network.xml b/tests/networkxml2xmlout/dhcp6-network.xml
new file mode 100644 (file)
index 0000000..cabe833
--- /dev/null
@@ -0,0 +1,20 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'>
+    <interface dev='eth1'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <mac address='52:54:00:00:00:00'/>
+  <domain name='mynet'/>
+  <ip family='ipv6' address='2001:db8:ac10:fd01::1' prefix='64'>
+    <dhcp>
+      <range start='2001:db8:ac10:fd01::1:10' end='2001:db8:ac10:fd01::1:ff'/>
+      <host id='0:4:7e:7d:f0:7d:a8:bc:c5:d2:13:32:11:ed:16:ea:84:63' ip='2001:db8:ac10:fd01::1:20'/>
+      <host name='paul' ip='2001:db8:ac10:fd01::1:21'/>
+      <host id='0:3:0:1:0:16:3e:11:22:33' name='peter.xyz' ip='2001:db8:ac10:fd01::1:22'/>
+      <host id='0:3:0:1:0:16:3e:44:55:33' ip='2001:db8:ac10:fd01::1:23'/>
+      <host id='0:1:0:1:18:aa:62:fe:0:16:3e:44:55:66' name='badbob' ip='2001:db8:ac10:fd01::1:24'/>
+    </dhcp>
+  </ip>
+</network>
index 170b043d098b70be4ca7f87a4db2592223153dd8..ee8ba7b1ddc3bb633efd045ba463e776e0ae2887 100644 (file)
@@ -9,7 +9,8 @@
   <dns>
     <forwarder addr='8.8.8.8'/>
     <forwarder addr='8.8.4.4'/>
-    <forwarder domain='example.com' addr='192.168.1.1' port='1234'/>
+    <forwarder domain='example.com' addr='192.168.1.1'/>
+    <forwarder domain='example2.com' addr='192.168.2.1' port='1234'/>
     <forwarder domain='www.example.com'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
index 548282e514d122d95285e689755dcd4f67657786..f8a609f9cbc402b47ee3fff8ef30feba2527e16d 100644 (file)
@@ -6,6 +6,7 @@
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
   <mac address='52:54:00:00:00:00'/>
+  <domain name='example.com'/>
   <dns forwardPlainNames='no'>
     <host ip='192.168.122.122'>
       <hostname>pudding</hostname>
diff --git a/tests/networkxml2xmlout/nat-network-dns-local-domain.xml b/tests/networkxml2xmlout/nat-network-dns-local-domain.xml
new file mode 100644 (file)
index 0000000..33f4bbf
--- /dev/null
@@ -0,0 +1,12 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9c</uuid>
+  <forward dev='eth0' mode='nat'>
+    <interface dev='eth0'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <mac address='52:54:00:00:00:00'/>
+  <domain name='example.com' localOnly='yes'/>
+  <ip address='192.168.122.1' netmask='255.255.255.0'>
+  </ip>
+</network>
index 50e968be9dbc954a149d1a435369d0d02e5d1b25..16032c9af29f75736811a27d6ba5336774d44e24 100644 (file)
@@ -20,7 +20,7 @@
   </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 family='ipv6' address='fc00:db8:ac10:fd01::1' prefix='64'>
   </ip>
   <ip family='ipv4' address='10.24.10.1'>
   </ip>
index 1486fc3224729b65d3177835dfc424ac29a38817..0f54a72f95c1b199698f81a02623670aad95c71b 100644 (file)
@@ -8,6 +8,12 @@
   <mac address='52:54:00:00:00:00'/>
   <dns>
     <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+    <srv service='name7' protocol='tcp' domain='test7.com' target='test7.example.com' weight='777'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
     <dhcp>
diff --git a/tests/networkxml2xmlout/nat-network-name-with-quotes.xml b/tests/networkxml2xmlout/nat-network-name-with-quotes.xml
new file mode 100644 (file)
index 0000000..c0a9ced
--- /dev/null
@@ -0,0 +1,27 @@
+<network>
+  <name>default&quot;with&quot;quotes&quot;</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'>
+    <interface dev='eth1'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <mac address='52:54:00:00:00:00'/>
+  <dns>
+    <srv service='name' protocol='tcp'/>
+  </dns>
+  <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='fc00:db8:ac10:fe01::1' prefix='64'>
+  </ip>
+  <ip family='ipv6' address='fc00:db8:ac10:fd01::1' prefix='64'>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
diff --git a/tests/networkxml2xmlout/ptr-domains-auto.xml b/tests/networkxml2xmlout/ptr-domains-auto.xml
new file mode 100644 (file)
index 0000000..fe2047b
--- /dev/null
@@ -0,0 +1,24 @@
+<network>
+  <name>default</name>
+  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a9b</uuid>
+  <forward dev='eth1' mode='nat'>
+    <interface dev='eth1'/>
+  </forward>
+  <bridge name='virbr0' stp='on' delay='0'/>
+  <mac address='52:54:00:00:00:00'/>
+  <ip address='192.168.122.1' netmask='255.255.255.0' localPtr='yes'>
+    <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' localPtr='no'>
+  </ip>
+  <ip family='ipv6' address='2001:db8:ac10:fe01::1' prefix='64' localPtr='yes'>
+  </ip>
+  <ip family='ipv6' address='2001:db8:ac10:fd01::1' prefix='64'>
+  </ip>
+  <ip family='ipv4' address='10.24.10.1'>
+  </ip>
+</network>
index 4a4cf329e4c41e589debf5330b02bd5f951fe3c0..a8dacfe0f36a666aeb943f7bc6afe08ae544e0b2 100644 (file)
@@ -144,6 +144,8 @@ mymain(void)
 #define DO_TEST_VALIDATE_ERROR(name) \
     DO_TEST_FULL(name, 0, TEST_COMPARE_NET_XML2XML_RESULT_FAIL_VALIDATE)
 
+    DO_TEST("dhcp6-network");
+    DO_TEST("dhcp6-nat-network");
     DO_TEST("dhcp6host-routed-network");
     DO_TEST("empty-allow-ipv6");
     DO_TEST("isolated-network");
@@ -164,9 +166,11 @@ mymain(void)
     DO_TEST("nat-network-dns-forward-plain");
     DO_TEST("nat-network-dns-forwarders");
     DO_TEST("nat-network-dns-forwarder-no-resolv");
+    DO_TEST("nat-network-dns-local-domain");
     DO_TEST("nat-network-forward-nat-ipv6");
     DO_TEST("nat-network-forward-nat-address");
     DO_TEST("nat-network-forward-nat-no-address");
+    DO_TEST("nat-network-name-with-quotes");
     DO_TEST("nat-network-mtu");
     DO_TEST("8021Qbh-net");
     DO_TEST("direct-net");
@@ -178,7 +182,7 @@ mymain(void)
     DO_TEST("hostdev");
     DO_TEST_FLAGS("hostdev-pf", VIR_NETWORK_XML_INACTIVE);
     DO_TEST_FLAGS("hostdev-pf-driver-model", VIR_NETWORK_XML_INACTIVE);
-
+    DO_TEST("ptr-domains-auto");
     DO_TEST_VALIDATE_ERROR("passthrough-address-crash");
     DO_TEST("nat-network-explicit-flood");
     DO_TEST("host-bridge-no-flood");
index 87478d033b78c0d2a1ef2179057db7a1fb2f38f4..934a36a9bed97c8c9e1290437e518b181bc0f2fe 100644 (file)
@@ -1 +1 @@
-<srv protocol='tcp'/>
+<srv protocol='tcp' target='test7.example.com'/>
index 8fcaad15d1cab496d37acdd675fdf31d8c30f44a..31836713768a98be3140ca551f15c474f447f2a0 100644 (file)
@@ -5,6 +5,7 @@
     <interface dev='eth0'/>
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
+  <domain name='example.com'/>
   <dns forwardPlainNames='no'>
     <host ip='192.168.122.122'>
       <hostname>pudding</hostname>
index 7b8a451b67511ce8908425b2f320b0d46f50e416..21e4ebde5f9c03de061ad903f56201c90f413263 100644 (file)
@@ -5,6 +5,7 @@
     <interface dev='eth0'/>
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
+  <domain name='example.com'/>
   <dns forwardPlainNames='no'>
     <host ip='f0:d::f0:d'>
       <hostname>pudding</hostname>
index eda9e203337519473a9d70dabe5d6221c75e0d57..2bdd9321ff0d07c29feb9148c12af67a2db3ff77 100644 (file)
@@ -7,6 +7,12 @@
   <bridge name='virbr0' stp='on' delay='0'/>
   <dns>
     <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+    <srv service='name7' protocol='tcp' domain='test7.com' target='test7.example.com' weight='777'/>
     <srv service='name' protocol='tcp' domain='donkey' target='.' port='404' priority='10' weight='10'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
index 6b87cd878921311546c4568911eec2878de14c10..13d1fdfa6dd6ec8d7ab9b6a93c8b29d642e760ed 100644 (file)
@@ -8,6 +8,12 @@
   <bridge name='virbr0' stp='on' delay='0'/>
   <dns>
     <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+    <srv service='name7' protocol='tcp' domain='test7.com' target='test7.example.com' weight='777'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
     <dhcp>
index ae49a3034e96cf69523bc5f32bf44f113ecb9329..79c97a508fe837a228b15c387d29fdfcc6e0aa90 100644 (file)
@@ -5,6 +5,12 @@
   <bridge name='virbr0' stp='on' delay='0'/>
   <dns>
     <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+    <srv service='name7' protocol='tcp' domain='test7.com' target='test7.example.com' weight='777'/>
   </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
     <dhcp>
index 679575973c31914be60329a7e3a958902cc189d8..e3c88ff534c73b6cc77d0aa25818c3b6b6803688 100644 (file)
@@ -5,6 +5,7 @@
     <interface dev='eth0'/>
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
+  <domain name='example.com'/>
   <dns forwardPlainNames='no'>
     <host ip='192.168.122.122'>
       <hostname>pudding</hostname>
index 93bc7db51d15e63fe28bbf877acc14ac85265298..741352ef14f560371cf4403eed994d1f574bee02 100644 (file)
@@ -5,6 +5,14 @@
     <interface dev='eth1'/>
   </forward>
   <bridge name='virbr0' stp='on' delay='0'/>
+  <dns>
+    <srv service='name' protocol='tcp' domain='test-domain-name' target='.' port='1024' priority='10' weight='10'/>
+    <srv service='name2' protocol='udp' target='test2.example.com' port='2222' priority='22' weight='222'/>
+    <srv service='name3' protocol='tcp' domain='test3.com' target='test3.example.com' port='3333' priority='33'/>
+    <srv service='name4' protocol='tcp' domain='test4.com' target='test4.example.com' port='4444'/>
+    <srv service='name5' protocol='udp' target='test5.example.com' priority='55' weight='555'/>
+    <srv service='name6' protocol='tcp' domain='test6.com' target='test6.example.com' port='6666' weight='666'/>
+  </dns>
   <ip address='192.168.122.1' netmask='255.255.255.0'>
     <dhcp>
       <range start='192.168.122.2' end='192.168.122.254'/>