Package: iptables-netflow / 2.6-7.2
Metadata
| Package | Version | Patches format |
|---|---|---|
| iptables-netflow | 2.6-7.2 | 3.0 (quilt) |
Patch series
view the series file| Patch | File delta | Description |
|---|---|---|
| 0001 Fix compile for stable kernels by not using ref_modu.patch | (download) |
compat.h |
4 0 + 4 - 0 ! |
[patch 01/17] fix compile for stable kernels by not using
'ref_module'
`ref_module' unexport in 7ef5264de7732 ("modules: mark ref_module
static") is back-ported into stable kernels making old `#if
LINUX_VERSION_CODE' checks irrelevant or too complicated to update.
Do not use `ref_module' API at all since `try_module_get' is ancient
enough to use always.
Reported-by: https://github.com/xtaran
Fixes: https://github.com/aabc/ipt-netflow/issues/177
|
| 0002 Namespace sk_error_report.patch | (download) |
ipt_NETFLOW.c |
4 2 + 2 - 0 ! |
[patch 02/17] namespace sk_error_report
sk_error_report is introduced in v5.14-rc1: e3ae2365efc14 ("net: sock:
introduce sk_error_report").
|
| 0003 Fix compilation on CentOS 8.patch | (download) |
compat.h |
4 2 + 2 - 0 ! |
[patch 03/17] fix compilation on centos 8 Tested on kernel-4.18.0-305.7.1.el8_4.x86_64 using this Dockerfile: FROM centos:8 RUN yum install -y gcc make which kernel kernel-devel iptables-devel WORKDIR /src COPY . . RUN ./configure --kver=$(cd /lib/modules; ls) RUN make Fixes: #176 and #178. |
| 0004 Better detection of CONFIG_BRIDGE_NETFILTER.patch | (download) |
ipt_NETFLOW.c |
2 1 + 1 - 0 ! |
[patch 04/17] better detection of config_bridge_netfilter `CONFIG_BRIDGE_NETFILTER' is a tristate, thus just `#ifdef' cannot be used. Reported-by: https://github.com/lyt0112 Fixes: #184 |
| 0005 Avoid using incomplete compat_def.h.patch | (download) |
Makefile.in |
3 2 + 1 - 0 ! |
[patch 05/17] avoid using incomplete compat_def.h Or else this may cause too much irrelevant errors. |
| 0006 Use explicit fallthrough macro.patch | (download) |
compat.h |
10 10 + 0 - 0 ! |
[patch 06/17] use explicit fallthrough macro Since `-Wimplicit-fallthrough=5` is emabled in Linux Makefile. |
| 0007 Fix build on v5.15 ct_event.patch | (download) |
compat.h |
4 4 + 0 - 0 ! |
[patch 07/17] fix build on v5.15 (ct_event)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
CC [M] ipt_NETFLOW.o
ipt_NETFLOW.c: In function netflow_conntrack_event:
ipt_NETFLOW.c:4622:31: error: struct nf_ct_event_notifier has no member named fcn
4622 | ret = notifier->fcn(events, item);
| ^~
ipt_NETFLOW.c: At top level:
ipt_NETFLOW.c:4687:10: error: struct nf_ct_event_notifier has no member named fcn
4687 | .fcn = netflow_conntrack_event
| ^~~
ipt_NETFLOW.c:4687:16: error: initialization of int (*)(unsigned int, const struct nf_ct_event *) from incompatible pointer type int (*)(const unsigned int, struct nf_ct_event *) [-Werror=incompatible-pointer-types]
4687 | .fcn = netflow_conntrack_event
| ^~~~~~~~~~~~~~~~~~~~~~~
ipt_NETFLOW.c:4687:16: note: (near initialization for ctnl_notifier.ct_event)
ipt_NETFLOW.c: In function unset_notifier_cb:
ipt_NETFLOW.c:5455:25: error: too many arguments to function nf_conntrack_unregister_notifier
5455 | nf_conntrack_unregister_notifier(NET_ARG &ctnl_notifier);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./include/net/netfilter/nf_conntrack_core.h:18,
from ipt_NETFLOW.c:68:
./include/net/netfilter/nf_conntrack_ecache.h:88:6: note: declared here
88 | void nf_conntrack_unregister_notifier(struct net *net);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Reported-by: https://github.com/rcmcronny
Fixes: #186
|
| 0008 gen_compat_def Catch dereferencing pointer to incomp.patch | (download) |
gen_compat_def |
1 1 + 0 - 0 ! |
[patch 08/17] gen_compat_def: catch 'dereferencing pointer to incomplete type' If `CONFIG_NF_CONNTRACK_EVENTS` is undeclared following test produce build error: Test member nf_ct_event_notifier.ct_event net/netfilter/nf_conntrack_ecache.h undeclared Error: unexpected error from compiler make -s -B M=cc-test-build modules cc-test-build/test.c:4:41: error: dereferencing pointer to incomplete type 'struct nf_ct_event_notifier' typeof(((struct nf_ct_event_notifier*)0)->ct_event) test; ^~ scripts/Makefile.build:288: recipe for target 'cc-test-build/test.o' failed Treat this error as just a negative test case. |
| 0009 Fix preemptive enabled warning.patch | (download) |
ipt_NETFLOW.c |
2 1 + 1 - 0 ! |
[patch 09/17] fix preemptive enabled warning Issue 193, we can use unstable reading because we actually don't care much of actual CPU that executed worker Link: https://github.com/aabc/ipt-netflow/issues/193 Link: https://github.com/aabc/ipt-netflow/pull/197 |
| 0010 fix building on old kernels.patch | (download) |
compat.h |
7 7 + 0 - 0 ! |
[patch 10/17] fix building on old kernels Link: https://github.com/aabc/ipt-netflow/pull/196 |
| 0011 nat_events add expect callback.patch | (download) |
ipt_NETFLOW.c |
18 17 + 1 - 0 ! |
[patch 11/17] nat_events: add expect callback Starting with 5.15 kernel uses the same notifier structure for actual nat events and additional expect events for nat helpers. Expect event callback is assumed to exist and the only thing that could disable such events is netlink configuration from user space. That's why this module have to provide such callback, otherwise kernel panic is expected to happen if any nat helper is enabled (most common is pptp gre helper). Signed-off-by: Vadim Fedorenko <vfedorenko@novek.ru> Link: https://github.com/aabc/ipt-netflow/pull/196 |
| 0012 compat Fix __has_attribute usage.patch | (download) |
compat.h |
2 1 + 1 - 0 ! |
[patch 12/17] compat: fix __has_attribute usage Fixes: #195 Link: https://github.com/aabc/ipt-netflow/issues/195 |
| 0013 tcp options fix possible shift out of bounds.patch | (download) |
ipt_NETFLOW.c |
18 8 + 10 - 0 ! |
[patch 13/17] tcp options: fix possible shift-out-of-bounds Calculation of tcp option bit is done before actual check and could lead to shift-out-of-bounds error tracked by UBSAN. Fix it by checking for zero value before the calculation. While here also fix bit calculation because it should be 31-based instead of 32-based. Signed-off-by: Vadim Fedorenko <vvfedorenko@github.com> |
| 0014 TCP Option 0 should participate in bitmask too.patch | (download) |
ipt_NETFLOW.c |
6 2 + 4 - 0 ! |
[patch 14/17] tcp option 0 should participate in bitmask too
Fixes: a1386af ("tcp options: fix possible shift-out-of-bounds")
Signed-off-by: ABC <abc@openwall.com>
|
| 0015 Fix possible out of bounds read in tcp_options fix.patch | (download) |
ipt_NETFLOW.c |
10 7 + 3 - 0 ! |
[patch 15/17] fix possible out-of-bounds read in tcp_options fix
Out-of-bounds read could occur in `p[i] < 2` before boundary of `i` is
checked.
Basically it's returning previous code except for a fix and early
zeroing of `ret`.
Fixes: a1386af ("tcp options: fix possible shift-out-of-bounds")
Signed-off-by: ABC <abc@openwall.com>
|
| 0016 Fix ipv4 options parsing and bit numbering.patch | (download) |
ipt_NETFLOW.c |
64 17 + 47 - 0 ! |
[patch 16/17] fix ipv4 options parsing and bit numbering
RFC 5102 and its Errata[1] several times messed with a bit numbering.
"Options are mapped to bits according to their option numbers.
Option number X is mapped to bit X."
But actually it's in inverted order.
"A misunderstand arose as to whether bits were assigned in host order
or network order - so clarify that the bits are assigned from the
least significant to the most significant, ie right-to-left rather
than left-to-right."
That's about bit numbering in diagram. So final correct options mask is (from
Errata 2944):
0 1 2 3 4 5 6 7
+
|
| 0017 Build compatibility with v6.4 register_sysctl_paths.patch | (download) |
gen_compat_def |
2 2 + 0 - 0 ! |
[patch 17/17] build compatibility with v6.4 (register_sysctl_paths)
'register_sysctl_paths' is missed from v6.4 due to 0199849acd07
("sysctl: remove register_sysctl_paths()").
Signed-off-by: ABC <abc@openwall.com>
|
| 1001 compat Really fix __has_attribute usage.patch | (download) |
compat.h |
9 5 + 4 - 0 ! |
[patch] compat: really fix __has_attribute usage
Fixes: 40fefb2 ("compat: Fix __has_attribute usage")
Signed-off-by: Andreas Beckmann <anbe@debian.org>
|
| 1002 fix detect modularized CONFIG_BRIDGE_NETFILTER.patch | (download) |
compat.h |
2 1 + 1 - 0 ! |
[patch] fix: detect modularized config_bridge_netfilter |
| 1003 fix backward compatible building with kernel 5.3.patch | (download) |
ipt_NETFLOW.c |
6 5 + 1 - 0 ! |
[patch] fix: backward compatible building with kernel <5.3 |
| 1004 Fix dkms status invocation.patch | (download) |
configure |
2 1 + 1 - 0 ! |
[patch] fix dkms status invocation and do not query unrelated modules Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1005 Do not check for dkms if called from dkms.patch | (download) |
configure |
2 1 + 1 - 0 ! |
[patch] do not check for dkms if called from dkms the recursive calls slowed down the configure script significantly Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1006 Set KDIR early if called from dkms and get version f.patch | (download) |
configure |
1 1 + 0 - 0 ! |
[patch] set kdir early if called from dkms and get version from sources Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1007 dkms.conf Declare BUILD_EXCLUSIVE_KERNEL_MIN 3.patch | (download) |
dkms.conf |
4 4 + 0 - 0 ! |
[patch] dkms.conf: declare build_exclusive_kernel_min="3" skb_reset_mac_len() was introduced in v3.0-rc3 and is used unconditionally Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1008 Fix module build for Linux v4.3.patch | (download) |
ipt_NETFLOW.c |
2 2 + 0 - 0 ! |
[patch] fix module build for linux v4.3 netif_is_bridge_port() was introduced in v4.4-rc2 by "vlan: Do not put vlan headers back on bridge and macvlan ports" (28f9ee22bcdd84726dbf6267d0b58f254166b900) Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1009 Unexporting find_module has been backported to Linux.patch | (download) |
compat.h |
5 3 + 2 - 0 ! |
[patch] unexporting find_module() has been backported to linux v5.10.220 Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 1010 compat Linux 6.11 support.patch | (download) |
compat.h |
10 6 + 4 - 0 ! |
[patch] compat: linux 6.11 support There are several changes in linux kernel 6.11+ which are incompatible with the module. Improve compatibility. Signed-off-by: Vadim Fedorenko <vvfedorenko@github.com> |
| 1011 Restore ctl_table backwards compatibility.patch | (download) |
compat.h |
10 8 + 2 - 0 ! |
[patch] restore ctl_table backwards compatibility |
| 1012 Fix module build for Linux v6.12.patch | (download) |
gen_compat_def |
9 7 + 2 - 0 ! |
[patch] fix module build for linux v6.12 adapt to "move asm/unaligned.h to linux/unaligned.h" (5f60d5f6bbc12e782fac78110b0ee62698f3b576) in v6.12-rc2 Fixes: #237 Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| 2001 physindev has been replaced by physinif in Linux v6..patch | (download) |
ipt_NETFLOW.c |
13 13 + 0 - 0 ! |
[patch] physindev has been replaced by physinif in linux v6.8 disable ENABLE_PHYSDEV/ENABLE_PHYSDEV_OVER after "netfilter: bridge: replace physindev with physinif in nf_bridge_info" v6.8-rc1 (9874808878d9eed407e3977fd11fee49de1e1d86) v6.7.2 (544add1f1cfb78c3dfa3e6edcf4668f6be5e730c) v6.6.14 (9325e3188a9cf3f69fc6f32af59844bbc5b90547) v6.1.75 (7ae19ee81ca56b13c50a78de6c47d5b8fdc9d97b) Signed-off-by: Andreas Beckmann <anbe@debian.org> |
| ignore unknown configure options.patch | (download) |
configure |
8 7 + 1 - 0 ! |
warn about unknown configure options instead of bailing out Avoids "Invalid option: --build=x86_64-linux-gnu" build error. . Additionally make it understand some configure options passed by debhelper by default, namely --prefix, --libdir and --includedir. |
| properly pass CPPFLAGS and LDFLAGS.patch | (download) |
Makefile.in |
4 2 + 2 - 0 ! |
properly pass $cppflags and $ldflags |
| disable kernel check.patch | (download) |
configure |
2 2 + 0 - 0 ! |
disable kernel check in configure script if no dkms is used This means it's skipped during package build but not during install time when a build of the kernel module is being triggered via dkms. |
| dont hardcode current gcc.patch | (download) |
Makefile.in |
2 1 + 1 - 0 ! |
don't hardcode default gcc version (i.e. don't override $cc if set) Avoids compilation failures with older kernels which can't be compiled with the current gcc, e.g. 5.7 needs gcc-9 instead of the current gcc-10 (where the gcc symlink points to). |
| cross.patch | (download) |
configure |
29 17 + 12 - 0 ! |
--- |
| use get_random_u32_below instead of deprecated prand.patch | (download) |
compat.h |
4 4 + 0 - 0 ! |
[patch] use get_random_u32_below() instead of deprecated prandom_u32_max() Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com> |
| replace strlcpy by strscpy.patch | (download) |
compat.h |
4 4 + 0 - 0 ! |
replace all occurrences of strlcpy with strscpy Fixes compilation against Linux kernel 6.8 which has strlcpy removed. |
| verbose.patch | (download) |
Makefile.in |
1 1 + 0 - 0 ! |
dump compat_def.h |
| rename to timer_delete_sync in Linux 6.15.patch | (download) |
ipt_NETFLOW.c |
12 10 + 2 - 0 ! |
rename del_timer_sync to timer_delete_sync in linux 6.15 The kernel upstream commit 8fa7292fee5c (treewide: Switch/rename to timer_delete[_sync]())), which landed mainline in v6.15, renames the function from del_timer_sync() to timer_delete_sync(). Adjust the code accordingly. |
