Added 'customopts' dhcp protocol option, which is an array passed along to udhcpc as series of -x options.
Signed-off-by: Markus Stenberg <markus.stenberg@iki.fi> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38436 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
dda74d14d1
commit
b8574ae0b5
|
@ -13,20 +13,25 @@ proto_dhcp_init_config() {
|
||||||
proto_config_add_boolean "broadcast"
|
proto_config_add_boolean "broadcast"
|
||||||
proto_config_add_string "reqopts"
|
proto_config_add_string "reqopts"
|
||||||
proto_config_add_string "iface6rd"
|
proto_config_add_string "iface6rd"
|
||||||
|
proto_config_add_string "customopts"
|
||||||
}
|
}
|
||||||
|
|
||||||
proto_dhcp_setup() {
|
proto_dhcp_setup() {
|
||||||
local config="$1"
|
local config="$1"
|
||||||
local iface="$2"
|
local iface="$2"
|
||||||
|
|
||||||
local ipaddr hostname clientid vendorid broadcast reqopts iface6rd
|
local ipaddr hostname clientid vendorid broadcast reqopts iface6rd customopts
|
||||||
json_get_vars ipaddr hostname clientid vendorid broadcast reqopts iface6rd
|
json_get_vars ipaddr hostname clientid vendorid broadcast reqopts iface6rd customopts
|
||||||
|
|
||||||
local opt dhcpopts
|
local opt dhcpopts
|
||||||
for opt in $reqopts; do
|
for opt in $reqopts; do
|
||||||
append dhcpopts "-O $opt"
|
append dhcpopts "-O $opt"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
for opt in $customopts; do
|
||||||
|
append dhcpopts "-x $opt"
|
||||||
|
done
|
||||||
|
|
||||||
[ "$broadcast" = 1 ] && broadcast="-B" || broadcast=
|
[ "$broadcast" = 1 ] && broadcast="-B" || broadcast=
|
||||||
[ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C"
|
[ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C"
|
||||||
[ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd"
|
[ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd"
|
||||||
|
|
Loading…
Reference in New Issue