[PATCH v2] netfilter: xtables: fix typo causing some targets to not load on IPv6

Ilya Katsnelson posted 1 patch 1 month, 1 week ago
net/netfilter/xt_NFLOG.c | 2 +-
net/netfilter/xt_mark.c  | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
[PATCH v2] netfilter: xtables: fix typo causing some targets to not load on IPv6
Posted by Ilya Katsnelson 1 month, 1 week ago
These were added with the wrong family in 4cdc55e, which seems
to just have been a typo, but now ip6tables rules with --set-mark
don't work anymore, which is pretty bad.

Fixes: 0bfcb7b71e73 ("netfilter: xtables: avoid NFPROTO_UNSPEC where needed")
Reviewed-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Ilya Katsnelson <me@0upti.me>
---
Changes in v2:
- Fixed a typo in the commit message (that's karma).
- Replaced a reference to backport commit.
- Link to v1: https://lore.kernel.org/r/20241018-xtables-typos-v1-1-02a51789c0ec@0upti.me
---
 net/netfilter/xt_NFLOG.c | 2 +-
 net/netfilter/xt_mark.c  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/netfilter/xt_NFLOG.c b/net/netfilter/xt_NFLOG.c
index d80abd6ccaf8f71fa70605fef7edada827a19ceb..6dcf4bc7e30b2ae364a1cd9ac8df954a90905c52 100644
--- a/net/netfilter/xt_NFLOG.c
+++ b/net/netfilter/xt_NFLOG.c
@@ -79,7 +79,7 @@ static struct xt_target nflog_tg_reg[] __read_mostly = {
 	{
 		.name       = "NFLOG",
 		.revision   = 0,
-		.family     = NFPROTO_IPV4,
+		.family     = NFPROTO_IPV6,
 		.checkentry = nflog_tg_check,
 		.destroy    = nflog_tg_destroy,
 		.target     = nflog_tg,
diff --git a/net/netfilter/xt_mark.c b/net/netfilter/xt_mark.c
index f76fe04fc9a4e19f18ac323349ba6f22a00eafd7..65b965ca40ea7ea5d9feff381b433bf267a424c4 100644
--- a/net/netfilter/xt_mark.c
+++ b/net/netfilter/xt_mark.c
@@ -62,7 +62,7 @@ static struct xt_target mark_tg_reg[] __read_mostly = {
 	{
 		.name           = "MARK",
 		.revision       = 2,
-		.family         = NFPROTO_IPV4,
+		.family         = NFPROTO_IPV6,
 		.target         = mark_tg,
 		.targetsize     = sizeof(struct xt_mark_tginfo2),
 		.me             = THIS_MODULE,

---
base-commit: 75aa74d52f43e75d0beb20572f98529071b700e5
change-id: 20241018-xtables-typos-dfeadb8b122d

Best regards,
-- 
Ilya Katsnelson <me@0upti.me>
Re: [PATCH v2] netfilter: xtables: fix typo causing some targets to not load on IPv6
Posted by Pablo Neira Ayuso 1 month, 1 week ago
Hi,

Thanks for your patch.

On Sat, Oct 19, 2024 at 08:05:07AM +0300, Ilya Katsnelson wrote:
> These were added with the wrong family in 4cdc55e, which seems
> to just have been a typo, but now ip6tables rules with --set-mark
> don't work anymore, which is pretty bad.

There is at least one more issue, TRACE is missing this chunk:

diff --git a/net/netfilter/xt_TRACE.c b/net/netfilter/xt_TRACE.c
index f3fa4f11348c..a642ff09fc8e 100644
--- a/net/netfilter/xt_TRACE.c
+++ b/net/netfilter/xt_TRACE.c
@@ -49,6 +49,7 @@ static struct xt_target trace_tg_reg[] __read_mostly = {
                .target         = trace_tg,
                .checkentry     = trace_tg_check,
                .destroy        = trace_tg_destroy,
+               .me             = THIS_MODULE,
        },
 #endif
 };
Re: [netfilter-core] [PATCH v2] netfilter: xtables: fix typo causing some targets to not load on IPv6
Posted by Pablo Neira Ayuso 1 month, 1 week ago
On Sat, Oct 19, 2024 at 08:10:29PM +0200, Pablo Neira Ayuso wrote:
> Hi,
> 
> Thanks for your patch.
> 
> On Sat, Oct 19, 2024 at 08:05:07AM +0300, Ilya Katsnelson wrote:
> > These were added with the wrong family in 4cdc55e, which seems
> > to just have been a typo, but now ip6tables rules with --set-mark
> > don't work anymore, which is pretty bad.
> 
> There is at least one more issue, TRACE is missing this chunk:
> 
> diff --git a/net/netfilter/xt_TRACE.c b/net/netfilter/xt_TRACE.c
> index f3fa4f11348c..a642ff09fc8e 100644
> --- a/net/netfilter/xt_TRACE.c
> +++ b/net/netfilter/xt_TRACE.c
> @@ -49,6 +49,7 @@ static struct xt_target trace_tg_reg[] __read_mostly = {
>                 .target         = trace_tg,
>                 .checkentry     = trace_tg_check,
>                 .destroy        = trace_tg_destroy,
> +               .me             = THIS_MODULE,
>         },
>  #endif
>  };

I will post a v2 including this chunk.

Thanks.