commit:     090fe72bce34edaa7dad4de61ebda49c50f82cc7
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Fri Dec  5 06:11:38 2025 +0000
Commit:     Nicolas PARLANT <ppn <AT> parhuet <DOT> fr>
CommitDate: Fri Dec  5 06:11:38 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=090fe72b

net-misc/jool-modules: fix kernel 6.18

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>

 .../jool-modules/files/jool-modules-fix_618.patch  | 29 ++++++++++++++++++++++
 net-misc/jool-modules/jool-modules-4.1.14.ebuild   |  4 +++
 2 files changed, 33 insertions(+)

diff --git a/net-misc/jool-modules/files/jool-modules-fix_618.patch 
b/net-misc/jool-modules/files/jool-modules-fix_618.patch
new file mode 100644
index 0000000000..81b21742a9
--- /dev/null
+++ b/net-misc/jool-modules/files/jool-modules-fix_618.patch
@@ -0,0 +1,29 @@
+PR merged https://github.com/NICMx/Jool/pull/441.patch
+fix compilation in kernel v6.18
+struct flowi4.tos renamed to 'dscp' and type dscp_t in commit
+--- a/src/mod/common/rfc7915/6to4.c
++++ b/src/mod/common/rfc7915/6to4.c
+@@ -203,7 +203,11 @@ static verdict compute_flowix64(struct xlation *state)
+       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(struct xlation *state)
+ 
+       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);

diff --git a/net-misc/jool-modules/jool-modules-4.1.14.ebuild 
b/net-misc/jool-modules/jool-modules-4.1.14.ebuild
index 5affa1e0fe..3d6da8b8b5 100644
--- a/net-misc/jool-modules/jool-modules-4.1.14.ebuild
+++ b/net-misc/jool-modules/jool-modules-4.1.14.ebuild
@@ -15,6 +15,10 @@ SLOT="0"
 KEYWORDS="~amd64"
 IUSE="iptables"
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-fix_618.patch
+)
+
 src_configure() {
        true
 }

Reply via email to