jool: fix build for 6.18

Add backport to fix build against 6.18 kernel.

Signed-off-by: John Audia <therealgraysky@proton.me>
This commit is contained in:
John Audia
2025-12-20 10:42:18 -05:00
committed by Josef Schlehofer
parent ab903f56a7
commit 0746327c62
2 changed files with 38 additions and 1 deletions

View File

@@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=jool
PKG_VERSION:=4.1.14
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING

View File

@@ -0,0 +1,37 @@
From 89bd7a029b3ed81ac3b4e582b4049d2ea8722970 Mon Sep 17 00:00:00 2001
From: Tj <tj.iam.tj@proton.me>
Date: Mon, 1 Dec 2025 18:24:47 +0000
Subject: [PATCH] Fix compilation in v6.18
struct flowi4.tos renamed to 'dscp' and type dscp_t in commit
1bec9d0c0046fe4e2bfb6a1c5aadcb5d56cdb0fb
---
src/mod/common/rfc7915/6to4.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- a/src/mod/common/rfc7915/6to4.c
+++ b/src/mod/common/rfc7915/6to4.c
@@ -203,7 +203,11 @@ static verdict compute_flowix64(struct x
hdr6 = pkt_ip6_hdr(&state->in);
flow4->flowi4_mark = state->in.skb->mark;
+#if LINUX_VERSION_AT_LEAST(6, 18, 0, 0, 0)
+ flow4->flowi4_dscp = xlat_tos(&state->jool.globals, hdr6);
+#else
flow4->flowi4_tos = xlat_tos(&state->jool.globals, hdr6);
+#endif
flow4->flowi4_scope = RT_SCOPE_UNIVERSE;
flow4->flowi4_proto = xlat_proto(hdr6);
/*
@@ -645,7 +649,11 @@ static verdict ttp64_ipv4_external(struc
hdr4->version = 4;
hdr4->ihl = 5;
+#if LINUX_VERSION_AT_LEAST(6, 18, 0, 0, 0)
+ hdr4->tos = flow4->flowi4_dscp;
+#else
hdr4->tos = flow4->flowi4_tos;
+#endif
hdr4->tot_len = cpu_to_be16(state->out.skb->len);
generate_ipv4_id(state, hdr4, hdr_frag);
hdr4->frag_off = xlat_frag_off(hdr_frag, state);