[libvirt] [PATCH] 3/3 524280 pass max lease option to dnsmasq
Daniel P. Berrange
berrange at redhat.com
Wed Oct 14 09:58:24 UTC 2009
On Tue, Oct 13, 2009 at 04:14:59PM +0200, Daniel Veillard wrote:
> * src/network/bridge_driver.c: when exec'ing dnsmaq, if there are
> DHCP ranges defined, then compute and pass the --dhcp-lease-max
> deriving the maximum number of leases
>
> diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
> index 95bc810..bffb6f7 100644
> --- a/src/network/bridge_driver.c
> +++ b/src/network/bridge_driver.c
> @@ -365,6 +365,7 @@ networkBuildDnsmasqArgv(virConnectPtr conn,
> const char *pidfile,
> const char ***argv) {
> int i, len, r;
> + int nbleases = 0;
> char *pidfileArg;
> char buf[1024];
>
> @@ -398,6 +399,8 @@ networkBuildDnsmasqArgv(virConnectPtr conn,
> 2 + /* --except-interface lo */
> 2 + /* --listen-address 10.0.0.1 */
> (2 * network->def->nranges) + /* --dhcp-range 10.0.0.2,10.0.0.254 */
> + /* --dhcp-lease-max=xxx if needed */
> + (network->def->nranges ? 0 : 1) +
> /* --dhcp-host 01:23:45:67:89:0a,hostname,10.0.0.3 */
> (2 * network->def->nhosts) +
> /* --enable-tftp --tftp-root /srv/tftp */
> @@ -462,6 +465,12 @@ networkBuildDnsmasqArgv(virConnectPtr conn,
>
> APPEND_ARG(*argv, i++, "--dhcp-range");
> APPEND_ARG(*argv, i++, buf);
> + nbleases += network->def->ranges[r].size;
> + }
> +
> + if (network->def->nranges > 0) {
> + snprintf(buf, sizeof(buf), "--dhcp-lease-max=%d", nbleases);
> + APPEND_ARG(*argv, i++, buf);
> }
>
> for (r = 0 ; r < network->def->nhosts ; r++) {
ACK,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list