Remove dhcp_extra_opt name after first newline character
Passing newline as extra dhcp option name to the DHCP agent causes issues with configuration of the dnsmasq process for the network. This patch removes everything what is after first newline character in the dhcp_extra_opt's name before building dnsmasq's config. Closes-bug: #1943930 Change-Id: Iab2832e750ff5ef09c5dcacae4dbff4f9e62bc2d
This commit is contained in:
parent
781edc8f64
commit
5abd1fb610
|
@ -1307,6 +1307,7 @@ class Dnsmasq(DhcpLocalProcess):
|
|||
def _format_option(self, ip_version, tag, option, *args):
|
||||
"""Format DHCP option by option name or code."""
|
||||
option = str(option)
|
||||
option = option.split("\n", 1)[0]
|
||||
pattern = "(tag:(.*),)?(.*)$"
|
||||
matches = re.match(pattern, option)
|
||||
extra_tag = matches.groups()[0]
|
||||
|
|
|
@ -231,7 +231,7 @@ class FakeV6PortExtraOpt(object):
|
|||
DhcpOpt(opt_name='dns-server',
|
||||
opt_value='ffea:3ba5:a17a:4ba3::100',
|
||||
ip_version=constants.IP_VERSION_6),
|
||||
DhcpOpt(opt_name='malicious-option',
|
||||
DhcpOpt(opt_name='malicious-option\nwith-new-line',
|
||||
opt_value='aaa\nbbb.ccc\n',
|
||||
ip_version=constants.IP_VERSION_6)]
|
||||
|
||||
|
|
Loading…
Reference in New Issue