6ef7de3023
Drop upstream patch. Add upstream patch for fixing build with musl libc. Add upstream patch fixing build with glibc older that 2.19, and another upstream patch fixing musl build cause by the previous patch. Add yet another upstream patch fixing build with kernel headers before 4.2 Switch download site to https for better security. Add license file hash. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
78 lines
2.6 KiB
Diff
78 lines
2.6 KiB
Diff
From 7c8791edac3e74f6ce0bf21f98bc820db8e55e62 Mon Sep 17 00:00:00 2001
|
|
From: Baruch Siach <baruch@tkos.co.il>
|
|
Date: Fri, 16 Nov 2018 07:23:32 +0200
|
|
Subject: [PATCH] xtables-monitor: fix build with older glibc
|
|
|
|
glibc older than 2.19 only expose BSD style fields of struct tcphdr when
|
|
_BSD_SOURCE is define. Current glibc however, warn that _BSD_SOURCE is
|
|
deprecated. Migrate to the GNU style of tcphdr fields to make the code
|
|
compatible with any glibc version.
|
|
|
|
Fix the following build failure:
|
|
|
|
xtables-monitor.c: In function 'trace_print_packet':
|
|
xtables-monitor.c:406:43: error: 'const struct tcphdr' has no member named 'th_sport'
|
|
printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport));
|
|
^
|
|
xtables-monitor.c:406:66: error: 'const struct tcphdr' has no member named 'th_dport'
|
|
printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport));
|
|
^
|
|
...
|
|
|
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
|
Signed-off-by: Florian Westphal <fw@strlen.de>
|
|
---
|
|
Upstream status: commit 7c8791edac3e74
|
|
|
|
iptables/xtables-monitor.c | 30 ++++++++++++++----------------
|
|
1 file changed, 14 insertions(+), 16 deletions(-)
|
|
|
|
diff --git a/iptables/xtables-monitor.c b/iptables/xtables-monitor.c
|
|
index 3b1ca777a28a..5d1611122df5 100644
|
|
--- a/iptables/xtables-monitor.c
|
|
+++ b/iptables/xtables-monitor.c
|
|
@@ -403,26 +403,24 @@ static void trace_print_packet(const struct nftnl_trace *nlt, struct cb_arg *arg
|
|
case IPPROTO_UDP:
|
|
if (len < 4)
|
|
break;
|
|
- printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport));
|
|
+ printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest));
|
|
break;
|
|
case IPPROTO_TCP:
|
|
if (len < sizeof(*tcph))
|
|
break;
|
|
- printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport));
|
|
- if (tcph->th_flags & (TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG)) {
|
|
- if (tcph->th_flags & TH_SYN)
|
|
- printf("SYN ");
|
|
- if (tcph->th_flags & TH_ACK)
|
|
- printf("ACK ");
|
|
- if (tcph->th_flags & TH_FIN)
|
|
- printf("FIN ");
|
|
- if (tcph->th_flags & TH_RST)
|
|
- printf("RST ");
|
|
- if (tcph->th_flags & TH_PUSH)
|
|
- printf("PSH ");
|
|
- if (tcph->th_flags & TH_URG)
|
|
- printf("URG ");
|
|
- }
|
|
+ printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest));
|
|
+ if (tcph->syn)
|
|
+ printf("SYN ");
|
|
+ if (tcph->ack)
|
|
+ printf("ACK ");
|
|
+ if (tcph->fin)
|
|
+ printf("FIN ");
|
|
+ if (tcph->rst)
|
|
+ printf("RST ");
|
|
+ if (tcph->psh)
|
|
+ printf("PSH ");
|
|
+ if (tcph->urg)
|
|
+ printf("URG ");
|
|
break;
|
|
default:
|
|
break;
|
|
--
|
|
2.19.1
|
|
|