forked from openwrt/openwrt
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
libnetfilter-conntrack: backport patch fixing compilation with 5.15
Backport patch fixing compilation with 5.15 and musl provided by Robert Marko Signed-off-by: Ansuel Smith <[email protected]>
- Loading branch information
Showing
2 changed files
with
50 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
49 changes: 49 additions & 0 deletions
49
...s/libnetfilter-conntrack/patches/0001-conntrack-fix-build-with-kernel-5_15-and-musl.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
From 21ee35dde73aec5eba35290587d479218c6dd824 Mon Sep 17 00:00:00 2001 | ||
From: Robert Marko <[email protected]> | ||
Date: Thu, 24 Feb 2022 15:01:11 +0100 | ||
Subject: conntrack: fix build with kernel 5.15 and musl | ||
|
||
Currently, with kernel 5.15 headers and musl building is failing with | ||
redefinition errors due to a conflict between the kernel and musl headers. | ||
|
||
Musl is able to suppres the conflicting kernel header definitions if they | ||
are included after the standard libc ones, however since ICMP definitions | ||
were moved into a separate internal header to avoid duplication this has | ||
stopped working and is breaking the builds. | ||
|
||
It seems that the issue is that <netinet/in.h> which contains the UAPI | ||
suppression defines is included in the internal.h header and not in the | ||
proto.h which actually includes the kernel ICMP headers and thus UAPI | ||
supression defines are not present. | ||
|
||
Solve this by moving the <netinet/in.h> include before the ICMP kernel | ||
includes in the proto.h | ||
|
||
Fixes: bc1cb4b11403 ("conntrack: Move icmp request>reply type mapping to common file") | ||
Signed-off-by: Robert Marko <[email protected]> | ||
Signed-off-by: Florian Westphal <[email protected]> | ||
--- | ||
include/internal/internal.h | 1 - | ||
include/internal/proto.h | 1 + | ||
2 files changed, 1 insertion(+), 1 deletion(-) | ||
|
||
--- a/include/internal/internal.h | ||
+++ b/include/internal/internal.h | ||
@@ -14,7 +14,6 @@ | ||
#include <arpa/inet.h> | ||
#include <time.h> | ||
#include <errno.h> | ||
-#include <netinet/in.h> | ||
|
||
#include <libnfnetlink/libnfnetlink.h> | ||
#include <libnetfilter_conntrack/libnetfilter_conntrack.h> | ||
--- a/include/internal/proto.h | ||
+++ b/include/internal/proto.h | ||
@@ -2,6 +2,7 @@ | ||
#define _NFCT_PROTO_H_ | ||
|
||
#include <stdint.h> | ||
+#include <netinet/in.h> | ||
#include <linux/icmp.h> | ||
#include <linux/icmpv6.h> | ||
|