import shutil
import netaddr
+from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import importutils
import six
cidr.prefixlen, lease))
possible_leases += cidr.size
+ if cfg.CONF.advertise_mtu:
+ mtu = self.network.mtu
+ # Do not advertise unknown mtu
+ if mtu > 0:
+ cmd.append('--dhcp-option-force=option:mtu,%d' % mtu)
+
# Cap the limit because creating lots of subnets can inflate
# this possible lease cap.
cmd.append('--dhcp-lease-max=%d' %
lease_duration, seconds)])
possible_leases += netaddr.IPNetwork(s.cidr).size
+ if cfg.CONF.advertise_mtu:
+ expected.append('--dhcp-option-force=option:mtu,%s' % network.mtu)
+
expected.append('--dhcp-lease-max=%d' % min(
possible_leases, max_leases))
expected.extend(extra_options)
self._test_spawn(['--conf-file=', '--domain=openstacklocal',
'--dhcp-broadcast'])
+ def test_spawn_cfg_advertise_mtu(self):
+ cfg.CONF.set_override('advertise_mtu', True)
+ network = FakeV4Network()
+ network.mtu = 1500
+ self._test_spawn(['--conf-file=', '--domain=openstacklocal'],
+ network)
+
def _test_output_opts_file(self, expected, network, ipm_retval=None):
with mock.patch.object(dhcp.Dnsmasq, 'get_conf_file_name') as conf_fn:
conf_fn.return_value = '/foo/opts'