[openwrt/openwrt] umbim: inherit firewall zone membership from parent interface

LEDE Commits lede-commits at lists.infradead.org
Sat Apr 29 12:39:09 PDT 2023


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/c1e0d077444b7570d64772338d81db336c94ea94

commit c1e0d077444b7570d64772338d81db336c94ea94
Author: Lech Perczak <lech.perczak at gmail.com>
AuthorDate: Mon Jul 19 19:26:02 2021 +0200

    umbim: inherit firewall zone membership from parent interface
    
    Fix an issue where subinterfaces were not added to the same
    firewall zone as their parent.
    Inspired by 64bb88841fb.
    
    Signed-off-by: Lech Perczak <lech.perczak at gmail.com>
---
 package/network/utils/umbim/files/lib/netifd/proto/mbim.sh | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh
index 133c6ef5e6..e7866340ae 100755
--- a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh
+++ b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh
@@ -169,6 +169,8 @@ _proto_mbim_setup() {
 
 	echo "mbim[$$]" "Connected"
 
+	local zone="$(fw3 -q network "$interface" 2>/dev/null)"
+
 	if [ -z "$dhcp" -o "$dhcp" = 0 ]; then
 		echo "mbim[$$]" "Setting up $ifname"
 		eval $(umbim $DBG -n -t $tid -d $device config | sed 's/: /=/g')
@@ -190,6 +192,7 @@ _proto_mbim_setup() {
 			[ "$peerdns" = 0 ] || json_add_string "" "$ipv4dnsserver"
 			json_close_array
 			proto_add_dynamic_defaults
+			[ -n "$zone" ] && json_add_string zone "$zone"
 			json_close_object
 			ubus call network add_dynamic "$(json_dump)"
 		}
@@ -207,6 +210,7 @@ _proto_mbim_setup() {
 			[ "$peerdns" = 0 ] || json_add_string "" "$ipv6dnsserver"
 			json_close_array
 			proto_add_dynamic_defaults
+			[ -n "$zone" ] && json_add_string zone "$zone"
 			json_close_object
 			ubus call network add_dynamic "$(json_dump)"
 		}
@@ -221,6 +225,7 @@ _proto_mbim_setup() {
 			json_add_string ifname "@$interface"
 			json_add_string proto "dhcp"
 			proto_add_dynamic_defaults
+			[ -n "$zone" ] && json_add_string zone "$zone"
 			json_close_object
 			ubus call network add_dynamic "$(json_dump)"
 		}
@@ -232,6 +237,7 @@ _proto_mbim_setup() {
 			json_add_string proto "dhcpv6"
 			json_add_string extendprefix 1
 			proto_add_dynamic_defaults
+			[ -n "$zone" ] && json_add_string zone "$zone"
 			json_close_object
 			ubus call network add_dynamic "$(json_dump)"
 		}




More information about the lede-commits mailing list