[][kernel][misc][IPv4/IPv6 multicast]

[Description]
Fix omcproxy segmentation fault, backport solution form github pull-request.
Default enable bridge igmp_snooping feature (Multicast-to-Unicast)

[Release-log]
N/A

Change-Id: If714087acffb0e2dc1e7ba66124f2bb0400e2d90
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/7939719
diff --git a/autobuild_mac80211_release/0006-network-enable-bridge-igmp_snooping-by-default.patch b/autobuild_mac80211_release/0006-network-enable-bridge-igmp_snooping-by-default.patch
new file mode 100644
index 0000000..390ac56
--- /dev/null
+++ b/autobuild_mac80211_release/0006-network-enable-bridge-igmp_snooping-by-default.patch
@@ -0,0 +1,24 @@
+From c2d313b529fc01072a89cdc475a6506357c840c9 Mon Sep 17 00:00:00 2001
+From: Evelyn Tsai <evelyn.tsai@mediatek.com>
+Date: Tue, 29 Aug 2023 06:31:35 +0800
+Subject: [PATCH] network: enable bridge igmp_snooping by default
+
+---
+ package/base-files/files/bin/config_generate | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate
+index 3836281..68c0535 100755
+--- a/package/base-files/files/bin/config_generate
++++ b/package/base-files/files/bin/config_generate
+@@ -114,6 +114,7 @@ generate_network() {
+ 			add network device
+ 			set network.@device[-1].name='br-$1'
+ 			set network.@device[-1].type='bridge'
++			set network.@device[-1].igmp_snooping='1'
+ 		EOF
+ 		for port in $ports; do uci add_list network.@device[-1].ports="$port"; done
+ 		[ -n "$macaddr" ] && {
+-- 
+2.18.0
+
diff --git a/autobuild_mac80211_release/lede-build-sanity.sh b/autobuild_mac80211_release/lede-build-sanity.sh
index e94fd2f..b6b219e 100755
--- a/autobuild_mac80211_release/lede-build-sanity.sh
+++ b/autobuild_mac80211_release/lede-build-sanity.sh
@@ -303,6 +303,9 @@
 	patch -f -p1 -i ${MTK_FEED_DIR}/autobuild_mac80211_release/0003-master-mt76-makefile-for-new-chip.patch || exit 1
 	cp -rfa ${MTK_FEED_DIR}/autobuild_mac80211_release/package/ ${BUILD_DIR}
 	cp -rfa ${MTK_FEED_DIR}/autobuild_mac80211_release/target/ ${BUILD_DIR}
+
+	# Bridge Default Setting
+	patch -f -p1 -i ${MTK_FEED_DIR}/autobuild_mac80211_release/0006-network-enable-bridge-igmp_snooping-by-default.patch || exit 1
 }
 
 copy_main_Config() {
diff --git a/package-21.02/network/services/omcproxy/patches/0001-app-omcproxy-sync-known-issue-solution-patches.patch b/package-21.02/network/services/omcproxy/patches/0001-app-omcproxy-sync-known-issue-solution-patches.patch
new file mode 100644
index 0000000..12c5073
--- /dev/null
+++ b/package-21.02/network/services/omcproxy/patches/0001-app-omcproxy-sync-known-issue-solution-patches.patch
@@ -0,0 +1,44 @@
+From d7a13278cf212b4b64cd9b7b6939e12e69eda66e Mon Sep 17 00:00:00 2001
+From: Evelyn Tsai <evelyn.tsai@mediatek.com>
+Date: Tue, 29 Aug 2023 05:53:23 +0800
+Subject: [PATCH] app: omcproxy: sync known issue solution patches
+
+Fix typo: https://github.com/openwrt/omcproxy/pull/9/commits/383b7df322d6b3270aa1dbbc0e64218f1ab085a6
+2 proxies SIGSEGV error: https://github.com/openwrt/omcproxy/issues/2
+---
+ src/groups.c | 4 ++--
+ src/proxy.c  | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/groups.c b/src/groups.c
+index 38fa914..d1e7a5a 100644
+--- a/src/groups.c
++++ b/src/groups.c
+@@ -183,9 +183,9 @@ void groups_init(struct groups *groups)
+ 	avl_init(&groups->groups, compare_groups, false, NULL);
+ 	groups->timer.cb = expire_groups;
+ 
+-	groups_update_config(groups, false, OMGP_TIME_PER_SECOND / 10,
++	groups_update_config(groups, false, OMGP_TIME_PER_SECOND * 10,
+ 			125 * OMGP_TIME_PER_SECOND, 2);
+-	groups_update_config(groups, true, OMGP_TIME_PER_SECOND / 10,
++	groups_update_config(groups, true, OMGP_TIME_PER_SECOND * 10,
+ 				125 * OMGP_TIME_PER_SECOND, 2);
+ }
+ 
+diff --git a/src/proxy.c b/src/proxy.c
+index 67c91a7..8114763 100644
+--- a/src/proxy.c
++++ b/src/proxy.c
+@@ -126,7 +126,7 @@ int proxy_set(int uplink, const int downlinks[], size_t downlinks_cnt, enum prox
+ {
+ 	struct proxy *proxy = NULL, *p;
+ 	list_for_each_entry(p, &proxies, head)
+-		if (proxy->ifindex == uplink)
++		if (p->ifindex == uplink)
+ 			proxy = p;
+ 
+ 	if (proxy && (downlinks_cnt == 0 ||
+-- 
+2.18.0
+
diff --git a/target/linux/mediatek/base-files/sbin/setup_ax3000.sh b/target/linux/mediatek/base-files/sbin/setup_ax3000.sh
deleted file mode 100755
index 9bd8c17..0000000
--- a/target/linux/mediatek/base-files/sbin/setup_ax3000.sh
+++ /dev/null
@@ -1,58 +0,0 @@
-#================================================================
-# HEADER
-#================================================================
-
-channel_2g=1
-channel_5g=36
-country="US"
-ssid_2g="Openwrt-7916-2g"
-ssid_5g="Openwrt-7916-5g"
-
-#================================================================
-# END_OF_HEADER
-#================================================================
-
-wifi down
-rm -rf /etc/config/wireless
-
-cat > /etc/config/wireless <<EOF
-config wifi-device 'radio0'
-        option type 'mac80211'
-        option path '11280000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
-        option channel '${channel_2g}'
-        option band '2g'
-        option htmode 'HE40'
-	option noscan '1'
-	option disabled '0'
-	option country '${country}'
-
-config wifi-iface 'default_radio0'
-        option device 'radio0'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_2g}'
-        option encryption 'none'
-
-config wifi-device 'radio1'
-        option type 'mac80211'
-        option path '11280000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0+1'
-        option channel '${channel_5g}'
-        option band '5g'
-        option htmode 'HE160'
-        option disabled '0'
-	option country '${country}'
-
-config wifi-iface 'default_radio1'
-        option device 'radio1'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_5g}'
-        option encryption 'none'
-EOF
-
-wifi up
-wifi reload
-
-sleep 5
-
-iwinfo
diff --git a/target/linux/mediatek/base-files/sbin/setup_ax6000.sh b/target/linux/mediatek/base-files/sbin/setup_ax6000.sh
deleted file mode 100755
index c4e05c4..0000000
--- a/target/linux/mediatek/base-files/sbin/setup_ax6000.sh
+++ /dev/null
@@ -1,58 +0,0 @@
-#================================================================
-# HEADER
-#================================================================
-
-channel_2g=1
-channel_5g=36
-country="US"
-ssid_2g="Openwrt-7986-2g"
-ssid_5g="Openwrt-7986-5g"
-
-#================================================================
-# END_OF_HEADER
-#================================================================
-
-wifi down
-rm -rf /etc/config/wireless
-
-cat > /etc/config/wireless <<EOF
-config wifi-device 'radio0'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys'
-        option channel '${channel_2g}'
-        option band '2g'
-	option htmode 'HE40'
-	option noscan '1'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio0'
-        option device 'radio0'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_2g}'
-        option encryption 'none'
-
-config wifi-device 'radio1'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys+1'
-        option channel '${channel_5g}'
-        option band '5g'
-        option htmode 'HE160'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio1'
-        option device 'radio1'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_5g}'
-        option encryption 'none'
-EOF
-
-wifi up
-wifi reload
-
-sleep 5
-
-iwinfo
diff --git a/target/linux/mediatek/base-files/sbin/setup_ax7800.sh b/target/linux/mediatek/base-files/sbin/setup_ax7800.sh
deleted file mode 100755
index c708e32..0000000
--- a/target/linux/mediatek/base-files/sbin/setup_ax7800.sh
+++ /dev/null
@@ -1,91 +0,0 @@
-#================================================================
-# HEADER
-#================================================================
-
-channel_2g=1
-channel_5g=36
-channel_6g=37
-country="US"
-ssid_2g="Openwrt-7916-2g"
-ssid_5g="Openwrt-7986-5g"
-ssid_6g="Openwrt-7916-6g"
-
-#================================================================
-# END_OF_HEADER
-#================================================================
-
-wifi down
-rm -rf /etc/config/wireless
-
-cat > /etc/config/wireless <<EOF
-config wifi-device 'radio0'
-        option type 'mac80211'
-        option path '11280000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
-        option channel '${channel_2g}'
-        option band '2g'
-        option htmode 'HE20'
-        option disabled '0'
-	option country '${country}'
-
-config wifi-iface 'default_radio0'
-        option device 'radio0'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_2g}'
-        option encryption 'none'
-
-config wifi-device 'radio1'
-        option type 'mac80211'
-        option path '11280000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0+1'
-        option channel '${channel_6g}'
-        option band '6g'
-        option htmode 'HE160'
-        option disabled '0'
-	option country '${country}'
-
-config wifi-iface 'default_radio1'
-        option device 'radio1'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_6g}'
-        option encryption 'sae'
-        option key '12345678'
-
-config wifi-device 'radio2'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys'
-        option channel '1'
-        option band '2g'
-        option htmode 'HE20'
-        option disabled '1'
-
-config wifi-iface 'default_radio2'
-        option device 'radio2'
-        option network 'lan'
-        option mode 'ap'
-        option ssid 'OpenWrt'
-        option encryption 'none'
-
-config wifi-device 'radio3'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys+1'
-        option channel '${channel_5g}'
-        option band '5g'
-        option htmode 'HE160'
-        option disabled '0'
-	option country '${country}'
-
-config wifi-iface 'default_radio3'
-        option device 'radio3'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_5g}'
-        option encryption 'none'
-EOF
-
-wifi up
-wifi reload
-
-sleep 5
-
-iwinfo
diff --git a/target/linux/mediatek/base-files/sbin/setup_ax8400.sh b/target/linux/mediatek/base-files/sbin/setup_ax8400.sh
deleted file mode 100755
index 8b912d5..0000000
--- a/target/linux/mediatek/base-files/sbin/setup_ax8400.sh
+++ /dev/null
@@ -1,77 +0,0 @@
-#================================================================
-# HEADER
-#================================================================
-
-channel_2g=1
-channel_5g=36
-channel_6g=37
-country="US"
-ssid_2g="Openwrt-7986-2g"
-ssid_5g="Openwrt-7915-5g"
-ssid_6g="Openwrt-7986-6g"
-
-#================================================================
-# END_OF_HEADER
-#================================================================
-
-wifi down
-rm -rf /etc/config/wireless
-
-cat > /etc/config/wireless <<EOF
-config wifi-device 'radio0'
-        option type 'mac80211'
-        option path '11280000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
-        option channel '${channel_5g}'
-        option band '5g'
-        option htmode 'HE80'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio0'
-        option device 'radio0'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_5g}'
-        option encryption 'none'
-
-config wifi-device 'radio1'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys'
-        option channel '${channel_2g}'
-        option band '2g'
-	option htmode 'HE40'
-	option noscan '1'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio1'
-        option device 'radio1'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_2g}'
-        option encryption 'none'
-
-config wifi-device 'radio2'
-        option type 'mac80211'
-        option path 'platform/18000000.wbsys+1'
-        option channel '${channel_6g}'
-        option band '6g'
-        option htmode 'HE160'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio2'
-        option device 'radio2'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_6g}'
-        option encryption 'sae'
-        option key '12345678'
-EOF
-
-wifi up
-wifi reload
-
-sleep 5
-
-iwinfo
diff --git a/target/linux/mediatek/base-files/sbin/setup_be19000.sh b/target/linux/mediatek/base-files/sbin/setup_be19000.sh
deleted file mode 100755
index 35e7934..0000000
--- a/target/linux/mediatek/base-files/sbin/setup_be19000.sh
+++ /dev/null
@@ -1,93 +0,0 @@
-#================================================================
-# HEADER
-#================================================================
-
-channel_2g=1
-channel_5g=36
-channel_6g=37
-country="US"
-ssid_2g="Openwrt-7996-2g"
-ssid_5g="Openwrt-7996-5g"
-ssid_6g="Openwrt-7996-6g"
-
-# generate random bytes for macaddr
-rand=$(hexdump -C /dev/urandom | head -n 1 &)
-killall hexdump
-
-macaddr=""
-for i in $(seq 2 3); do
-	macaddr=${macaddr}:$(echo $rand | cut -d ' ' -f $i)
-done
-
-macaddr_2g="00:00:55:66"${macaddr}
-macaddr_5g="00:01:55:66"${macaddr}
-macaddr_6g="00:02:55:66"${macaddr}
-
-#================================================================
-# END_OF_HEADER
-#================================================================
-
-wifi down
-rm -rf /etc/config/wireless
-
-cat > /etc/config/wireless <<EOF
-config wifi-device 'radio0'
-        option type 'mac80211'
-        option path '11300000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
-        option channel '${channel_2g}'
-        option band '2g'
-        option htmode 'EHT40'
-        option noscan '1'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio0'
-        option device 'radio0'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_2g}'
-        option encryption 'none'
-        option macaddr '${macaddr_2g}'
-
-config wifi-device 'radio1'
-        option type 'mac80211'
-        option path '11300000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0+1'
-        option channel '${channel_5g}'
-        option band '5g'
-        option htmode 'EHT160'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio1'
-        option device 'radio1'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_5g}'
-        option encryption 'none'
-        option macaddr '${macaddr_5g}'
-
-config wifi-device 'radio2'
-        option type 'mac80211'
-        option path '11300000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0+2'
-        option channel '${channel_6g}'
-        option band '6g'
-        option htmode 'EHT320-1'
-        option disabled '0'
-        option country '${country}'
-
-config wifi-iface 'default_radio2'
-        option device 'radio2'
-        option network 'lan'
-        option mode 'ap'
-        option ssid '${ssid_6g}'
-        option encryption 'sae'
-        option key '12345678'
-        option macaddr '${macaddr_6g}'
-EOF
-
-wifi up
-wifi reload
-
-sleep 5
-
-iwinfo