umbim: pass ipXtable to child interfaces
Inspired by commti e51aa699f7
, allow setting specific routing tables
via ip4table and ip6table options, by passing them on child interfaces
created by MBIM protocol handler.
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
This commit is contained in:
parent
e2655e0a6b
commit
9ddbcd73d8
1 changed files with 8 additions and 2 deletions
|
@ -31,8 +31,10 @@ _proto_mbim_setup() {
|
|||
local tid=2
|
||||
local ret
|
||||
|
||||
local device apn pincode delay allow_roaming allow_partner dhcp dhcpv6 pdptype $PROTO_DEFAULT_OPTIONS
|
||||
json_get_vars device apn pincode delay auth username password allow_roaming allow_partner dhcp dhcpv6 pdptype $PROTO_DEFAULT_OPTIONS
|
||||
local device apn pincode delay auth username password allow_roaming allow_partner
|
||||
local dhcp dhcpv6 pdptype ip4table ip6table $PROTO_DEFAULT_OPTIONS
|
||||
json_get_vars device apn pincode delay auth username password allow_roaming allow_partner
|
||||
json_get_vars dhcp dhcpv6 pdptype ip4table ip6table $PROTO_DEFAULT_OPTIONS
|
||||
|
||||
[ ! -e /proc/sys/net/ipv6 ] && ipv6=0 || json_get_var ipv6 ipv6
|
||||
|
||||
|
@ -201,6 +203,7 @@ _proto_mbim_setup() {
|
|||
json_close_array
|
||||
proto_add_dynamic_defaults
|
||||
[ -n "$zone" ] && json_add_string zone "$zone"
|
||||
[ -n "$ip4table" ] && json_add_string ip4table "$ip4table"
|
||||
json_close_object
|
||||
ubus call network add_dynamic "$(json_dump)"
|
||||
elif [ "$dhcp" != 0 ]; then
|
||||
|
@ -211,6 +214,7 @@ _proto_mbim_setup() {
|
|||
json_add_string proto "dhcp"
|
||||
proto_add_dynamic_defaults
|
||||
[ -n "$zone" ] && json_add_string zone "$zone"
|
||||
[ -n "$ip4table" ] && json_add_string ip4table "$ip4table"
|
||||
json_close_object
|
||||
ubus call network add_dynamic "$(json_dump)"
|
||||
fi
|
||||
|
@ -231,6 +235,7 @@ _proto_mbim_setup() {
|
|||
json_close_array
|
||||
proto_add_dynamic_defaults
|
||||
[ -n "$zone" ] && json_add_string zone "$zone"
|
||||
[ -n "$ip6table" ] && json_add_string ip6table "$ip6table"
|
||||
json_close_object
|
||||
ubus call network add_dynamic "$(json_dump)"
|
||||
elif [ "$dhcpv6" != 0 ]; then
|
||||
|
@ -242,6 +247,7 @@ _proto_mbim_setup() {
|
|||
json_add_string extendprefix 1
|
||||
proto_add_dynamic_defaults
|
||||
[ -n "$zone" ] && json_add_string zone "$zone"
|
||||
[ -n "$ip6table" ] && json_add_string ip6table "$ip6table"
|
||||
json_close_object
|
||||
ubus call network add_dynamic "$(json_dump)"
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue