From 7bd437cc9f4943e7769b9494b73e86a14373c916 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sun, 26 Jul 2020 22:34:49 +0800 Subject: [PATCH] firewall: backport patch for mss clamping in both directions Signed-off-by: Yousong Zhou --- package/network/config/firewall/Makefile | 2 +- ...cp-mss-clamping-also-on-ingress-path.patch | 33 +++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 package/network/config/firewall/patches/0001-zones-apply-tcp-mss-clamping-also-on-ingress-path.patch diff --git a/package/network/config/firewall/Makefile b/package/network/config/firewall/Makefile index 830a1b268f..7a91924d01 100644 --- a/package/network/config/firewall/Makefile +++ b/package/network/config/firewall/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=firewall -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall3.git diff --git a/package/network/config/firewall/patches/0001-zones-apply-tcp-mss-clamping-also-on-ingress-path.patch b/package/network/config/firewall/patches/0001-zones-apply-tcp-mss-clamping-also-on-ingress-path.patch new file mode 100644 index 0000000000..816bca35d0 --- /dev/null +++ b/package/network/config/firewall/patches/0001-zones-apply-tcp-mss-clamping-also-on-ingress-path.patch @@ -0,0 +1,33 @@ +From c9f48cb3bd0e14fec8ad71c3baef7c280a390b4f Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Fri, 24 Jul 2020 12:52:59 +0800 +Subject: [PATCH] zones: apply tcp mss clamping also on ingress path + +Fixes FS#3231 + +Signed-off-by: Yousong Zhou +Acked-by: Jo-Philipp Wich +(cherry picked from commit e9b90dfac2225927c035f6a76277b850c282dc9a) +--- + zones.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/zones.c b/zones.c +index 505ab20..4656f88 100644 +--- a/zones.c ++++ b/zones.c +@@ -553,6 +553,14 @@ print_interface_rule(struct fw3_ipt_handle *handle, struct fw3_state *state, + fw3_ipt_rule_target(r, "TCPMSS"); + fw3_ipt_rule_addarg(r, false, "--clamp-mss-to-pmtu", NULL); + fw3_ipt_rule_replace(r, "FORWARD"); ++ ++ r = fw3_ipt_rule_create(handle, &tcp, dev, NULL, sub, NULL); ++ fw3_ipt_rule_addarg(r, false, "--tcp-flags", "SYN,RST"); ++ fw3_ipt_rule_addarg(r, false, "SYN", NULL); ++ fw3_ipt_rule_comment(r, "Zone %s MTU fixing", zone->name); ++ fw3_ipt_rule_target(r, "TCPMSS"); ++ fw3_ipt_rule_addarg(r, false, "--clamp-mss-to-pmtu", NULL); ++ fw3_ipt_rule_replace(r, "FORWARD"); + } + } + else if (handle->table == FW3_TABLE_RAW)