From: Qingfang Deng Date: Wed, 13 Mar 2024 03:48:44 +0000 (+0800) Subject: kernel: xt_FLOWOFFLOAD: fix use of uninitialized dir variable X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=503d26fb24cf980ed6d28cb080b0f81e8ba4e72d;p=openwrt%2Fstaging%2Fjow.git kernel: xt_FLOWOFFLOAD: fix use of uninitialized dir variable The dir variable has been used uninitialized since the port to 5.10, and somehow this remains undetected by GCC. Fixes: b10d6044599d ("kernel: add linux 5.10 support") Signed-off-by: Qingfang Deng --- diff --git a/target/linux/generic/hack-5.15/650-netfilter-add-xt_FLOWOFFLOAD-target.patch b/target/linux/generic/hack-5.15/650-netfilter-add-xt_FLOWOFFLOAD-target.patch index da60334498..ec887539d5 100644 --- a/target/linux/generic/hack-5.15/650-netfilter-add-xt_FLOWOFFLOAD-target.patch +++ b/target/linux/generic/hack-5.15/650-netfilter-add-xt_FLOWOFFLOAD-target.patch @@ -609,6 +609,8 @@ Signed-off-by: Felix Fietkau + if (!nf_ct_is_confirmed(ct)) + return XT_CONTINUE; + ++ dir = CTINFO2DIR(ctinfo); ++ + devs[dir] = xt_out(par); + devs[!dir] = xt_in(par); + @@ -618,8 +620,6 @@ Signed-off-by: Felix Fietkau + if (test_and_set_bit(IPS_OFFLOAD_BIT, &ct->status)) + return XT_CONTINUE; + -+ dir = CTINFO2DIR(ctinfo); -+ + if (xt_flowoffload_route(skb, ct, par, &route, dir, devs) < 0) + goto err_flow_route; + diff --git a/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch b/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch index 59a5fb4d91..1dfd556ce8 100644 --- a/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch +++ b/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch @@ -547,6 +547,8 @@ Signed-off-by: Felix Fietkau + if (!nf_ct_is_confirmed(ct)) + return XT_CONTINUE; + ++ dir = CTINFO2DIR(ctinfo); ++ + devs[dir] = xt_out(par); + devs[!dir] = xt_in(par); + @@ -556,8 +558,6 @@ Signed-off-by: Felix Fietkau + if (test_and_set_bit(IPS_OFFLOAD_BIT, &ct->status)) + return XT_CONTINUE; + -+ dir = CTINFO2DIR(ctinfo); -+ + if (xt_flowoffload_route(skb, ct, par, &route, dir, devs) < 0) + goto err_flow_route; + diff --git a/target/linux/generic/hack-6.6/650-netfilter-add-xt_FLOWOFFLOAD-target.patch b/target/linux/generic/hack-6.6/650-netfilter-add-xt_FLOWOFFLOAD-target.patch index cb7ac007b1..1c75a2cf3d 100644 --- a/target/linux/generic/hack-6.6/650-netfilter-add-xt_FLOWOFFLOAD-target.patch +++ b/target/linux/generic/hack-6.6/650-netfilter-add-xt_FLOWOFFLOAD-target.patch @@ -547,6 +547,8 @@ Signed-off-by: Felix Fietkau + if (!nf_ct_is_confirmed(ct)) + return XT_CONTINUE; + ++ dir = CTINFO2DIR(ctinfo); ++ + devs[dir] = xt_out(par); + devs[!dir] = xt_in(par); + @@ -556,8 +558,6 @@ Signed-off-by: Felix Fietkau + if (test_and_set_bit(IPS_OFFLOAD_BIT, &ct->status)) + return XT_CONTINUE; + -+ dir = CTINFO2DIR(ctinfo); -+ + if (xt_flowoffload_route(skb, ct, par, &route, dir, devs) < 0) + goto err_flow_route; +