Dnsmasq dhcp_option config new warning

On router

# /etc/init.d/dnsmasq restart
Warning: the 'option dhcp_option' syntax is deprecated, use 'list dhcp_option'
Warning: the 'option dhcp_option' syntax is deprecated, use 'list dhcp_option'
# uci show | grep dhcp_option
# uci show | grep option
# cat /etc/os-release | grep BUILD_ID

On lede source tree

 ~/witi/lede/source $ git log --oneline | head -n 5
21c2e93 uboot-omap: rename patch to 101-disable-thumb-omap3.patch
ca89886 uboot-omap: enable thumb for overo
3ddc191 mediatek: fix mt7530 mcm reset
c45ef70 odhcpd: update to git HEAD version (FS#656,FS#595)
9412fc2 dnsmasq: support dhcp_option config as a list

Your config uses deprecated syntax. Follow the advice in the warning and change to using list type.

I suspect, that this change happened in master. I am very new to LEDE, but it looks like when the time comes to upgrade to a new release, we would have to reconfigure from scratch. Is that correct? I was hoping that that backwards compatibility would take care of these kind of changes...

No. Generally the config is rather stable and does not change much between versions. I am hopping between LEDE master, 17.01 and even Openwrt trunk due to my community builds using the same config. But it is a good practice to do the config from scratch every now and then, just to pick up the possibly changed defaults.

the old config still works, but is a warning that you are using the old syntax.


Configuring dhcp_option as an option does not allow the usage of white
spaces in the option value; fix this by supporting dhcp_option as a list
config while still supporting the option config to maintain backwards

You should modify the dhcp config file and change dhcp_option items from

option dhcp_option "option1 option2 option3"


list dhcp_option "option1" 
list dhcp_option "option2" 
list dhcp_option "option3"

Hmm, I missed the fact that it is a warning. My bad.

It so clear that I am not using any dhcp_option syntax

# uci show | grep dhcp_option
# uci show | grep option

Sorry, I missed the purpose of that show command.

Then it seems to misdetect the option usage for some reason.