On 4/22/20 10:05 PM, Julio Faracco wrote:
This series is based on latest series from Nehal. It includes a new
entry called <lease/> under <range/> and <host/> from <dhcp/>
scope.
This was implemented to include independent lease time for each line and
dnsmasq option. So, users are able to define one lease time for ranges
and other different for each host entry. The new syntax is simlar with:
<dhcp>
<range ...>
<lease expiry='14' unit='mins'/>
</range>
<host ...>
<lease expiry='1' unit='hours'/>
</host>
</dhcp>
It will produce a option in dnsmasq configuration file:
dhcp-range=192.168.122.2,192.168.122.254,255.255.255.0,14m
And some contents into hostsfile:
00:16:3e:77:e2:ed,192.168.122.10,a.example.com,1h
This series includes some test cases to cover lease time XML syntax
also. Now, each test case requires a hostsfile to test this specific
setting.
- v1-v2: Change XML syntax according Daniel's suggestion.
- v2-v3: Fix memory leak and test dependency issue.
Julio Faracco (2):
conf: Add <lease/> option for <dhcp/> settings
tests: Add tests for <lease/> to cover dnsmasq settings
docs/schemas/basictypes.rng | 8 +
docs/schemas/network.rng | 20 +++
src/conf/network_conf.c | 159 +++++++++++++++---
src/conf/network_conf.h | 27 ++-
src/libvirt_private.syms | 3 +
src/network/bridge_driver.c | 56 +++++-
src/network/bridge_driver.h | 1 +
src/test/test_driver.c | 2 +-
src/util/virdnsmasq.c | 60 ++++---
src/util/virdnsmasq.h | 3 +
src/vbox/vbox_network.c | 16 +-
.../dhcp6-nat-network.hostsfile | 7 +
.../dhcp6-network.hostsfile | 5 +
.../dhcp6host-routed-network.hostsfile | 7 +
.../networkxml2confdata/leasetime-hours.conf | 16 ++
.../leasetime-hours.hostsfile | 2 +
tests/networkxml2confdata/leasetime-hours.xml | 19 +++
.../leasetime-infinite.conf | 16 ++
.../leasetime-infinite.hostsfile | 2 +
.../leasetime-infinite.xml | 19 +++
.../leasetime-minutes.conf | 16 ++
.../leasetime-minutes.hostsfile | 2 +
.../networkxml2confdata/leasetime-minutes.xml | 19 +++
.../leasetime-seconds.conf | 16 ++
.../leasetime-seconds.hostsfile | 2 +
.../networkxml2confdata/leasetime-seconds.xml | 19 +++
...t-network-dns-srv-record-minimal.hostsfile | 2 +
.../nat-network-dns-srv-record.hostsfile | 2 +
.../nat-network-dns-txt-record.hostsfile | 2 +
.../nat-network-mtu.hostsfile | 2 +
.../nat-network-name-with-quotes.hostsfile | 2 +
.../networkxml2confdata/nat-network.hostsfile | 2 +
.../ptr-domains-auto.hostsfile | 2 +
tests/networkxml2conftest.c | 42 ++++-
tests/networkxml2xmlin/leasetime-hours.xml | 19 +++
tests/networkxml2xmlin/leasetime-infinite.xml | 19 +++
tests/networkxml2xmlin/leasetime-minutes.xml | 19 +++
tests/networkxml2xmlin/leasetime-seconds.xml | 19 +++
tests/networkxml2xmlout/leasetime-hours.xml | 21 +++
.../networkxml2xmlout/leasetime-infinite.xml | 21 +++
tests/networkxml2xmlout/leasetime-minutes.xml | 21 +++
tests/networkxml2xmlout/leasetime-seconds.xml | 21 +++
tests/networkxml2xmltest.c | 4 +
43 files changed, 676 insertions(+), 66 deletions(-)
create mode 100644 tests/networkxml2confdata/dhcp6-nat-network.hostsfile
create mode 100644 tests/networkxml2confdata/dhcp6-network.hostsfile
create mode 100644 tests/networkxml2confdata/dhcp6host-routed-network.hostsfile
create mode 100644 tests/networkxml2confdata/leasetime-hours.conf
create mode 100644 tests/networkxml2confdata/leasetime-hours.hostsfile
create mode 100644 tests/networkxml2confdata/leasetime-hours.xml
create mode 100644 tests/networkxml2confdata/leasetime-infinite.conf
create mode 100644 tests/networkxml2confdata/leasetime-infinite.hostsfile
create mode 100644 tests/networkxml2confdata/leasetime-infinite.xml
create mode 100644 tests/networkxml2confdata/leasetime-minutes.conf
create mode 100644 tests/networkxml2confdata/leasetime-minutes.hostsfile
create mode 100644 tests/networkxml2confdata/leasetime-minutes.xml
create mode 100644 tests/networkxml2confdata/leasetime-seconds.conf
create mode 100644 tests/networkxml2confdata/leasetime-seconds.hostsfile
create mode 100644 tests/networkxml2confdata/leasetime-seconds.xml
create mode 100644
tests/networkxml2confdata/nat-network-dns-srv-record-minimal.hostsfile
create mode 100644 tests/networkxml2confdata/nat-network-dns-srv-record.hostsfile
create mode 100644 tests/networkxml2confdata/nat-network-dns-txt-record.hostsfile
create mode 100644 tests/networkxml2confdata/nat-network-mtu.hostsfile
create mode 100644 tests/networkxml2confdata/nat-network-name-with-quotes.hostsfile
create mode 100644 tests/networkxml2confdata/nat-network.hostsfile
create mode 100644 tests/networkxml2confdata/ptr-domains-auto.hostsfile
create mode 100644 tests/networkxml2xmlin/leasetime-hours.xml
create mode 100644 tests/networkxml2xmlin/leasetime-infinite.xml
create mode 100644 tests/networkxml2xmlin/leasetime-minutes.xml
create mode 100644 tests/networkxml2xmlin/leasetime-seconds.xml
create mode 100644 tests/networkxml2xmlout/leasetime-hours.xml
create mode 100644 tests/networkxml2xmlout/leasetime-infinite.xml
create mode 100644 tests/networkxml2xmlout/leasetime-minutes.xml
create mode 100644 tests/networkxml2xmlout/leasetime-seconds.xml
Reviewed-by: Michal Privoznik <mprivozn(a)redhat.com>
and pushed. I think this is something that deserves a news.xml record.
Do you mind writing it?
Michal