aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xpackage/network/config/netifd/files/lib/netifd/proto/dhcp.sh9
1 files changed, 7 insertions, 2 deletions
diff --git a/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh b/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh
index a270c681d7..1e0aa68881 100755
--- a/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh
+++ b/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh
@@ -13,20 +13,25 @@ proto_dhcp_init_config() {
proto_config_add_boolean "broadcast"
proto_config_add_string "reqopts"
proto_config_add_string "iface6rd"
+ proto_config_add_string "customopts"
}
proto_dhcp_setup() {
local config="$1"
local iface="$2"
- local ipaddr hostname clientid vendorid broadcast reqopts iface6rd
- json_get_vars 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 customopts
local opt dhcpopts
for opt in $reqopts; do
append dhcpopts "-O $opt"
done
+ for opt in $customopts; do
+ append dhcpopts "-x $opt"
+ done
+
[ "$broadcast" = 1 ] && broadcast="-B" || broadcast=
[ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C"
[ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd"