When setting dhcpcd_* to an option that would take a quoted string, the scripts do not pass the string as quoted to dhcpcd, e.g. when dhcpcd_eth0="-i \"MSFT 5.0\"" then when we run /etc/init.d/net.eth0, dhcpcd exits on an error -- it uses "MSFT" as the vendor identifier (see man dhcpcd) and "5.0" as the interface, which it can't find, of course. Reproducible: Always Steps to Reproduce: see above Actual Results: see above Expected Results: see above Fix: in the module dhcpcd under /lib/rcscripts/net.modules.d/ change dhcpcd ${opts} ${iface} to eval "dhcpcd ${opts} ${iface}" see diff below for zero ambiguity. Note that this is probably present in other modules / configurations as well. --- ../dhcpcd~ 2004-12-05 17:13:33.000000000 -0800 +++ dhcpcd 2004-12-10 17:38:42.397021408 -0800 @@ -131,7 +131,7 @@ return 0 fi - dhcpcd ${opts} ${iface} + eval "dhcpcd ${opts} ${iface}" eend $? || return 1 # DHCP succeeded, show address retrieved
what if you try: dhcpcd_eth0="-i 'MSFT 5.0'" ?
Fixed in CVS - will be in baselayout-1.12.0
Bumped to baselayout-1.11.9 as 1.12.0 may take some time ...
Fixed by baselayout-1.11.9