Fernando Fernandez Mancera
be102eb6a0
netfilter: nf_conncount: rework API to use sk_buff directly
...
When using nf_conncount infrastructure for non-confirmed connections a
duplicated track is possible due to an optimization introduced since
commit d265929930 ("netfilter: nf_conncount: reduce unnecessary GC").
In order to fix this introduce a new conncount API that receives
directly an sk_buff struct. It fetches the tuple and zone and the
corresponding ct from it. It comes with both existing conncount variants
nf_conncount_count_skb() and nf_conncount_add_skb(). In addition remove
the old API and adjust all the users to use the new one.
This way, for each sk_buff struct it is possible to check if there is a
ct present and already confirmed. If so, skip the add operation.
Fixes: d265929930 ("netfilter: nf_conncount: reduce unnecessary GC")
Signed-off-by: Fernando Fernandez Mancera <fmancera@suse.de >
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org >
2025-11-28 00:05:49 +00:00
..
2025-09-11 15:40:55 +02:00
2025-11-04 19:10:32 -08:00
2025-05-23 13:57:12 +02:00
2025-07-25 18:38:50 +02:00
2025-11-27 23:59:43 +00:00
2025-08-01 09:22:44 -07:00
2025-11-28 00:05:49 +00:00
2022-02-04 06:30:28 +01:00
2025-01-19 16:41:55 +01:00
2024-05-22 15:00:56 -07:00
2025-01-19 16:41:55 +01:00
2025-10-30 12:52:45 +01:00
2025-09-22 17:40:30 -07:00
2025-06-08 09:07:37 +02:00
2023-09-13 21:57:50 +02:00
2022-09-20 23:50:03 +02:00
2024-03-07 03:10:35 +01:00
2025-01-19 16:41:55 +01:00
2025-08-27 11:53:38 +02:00
2022-09-07 15:55:23 +02:00
2023-10-24 13:16:30 +02:00
2022-01-11 10:41:44 +01:00
2025-08-20 13:52:36 +02:00
2023-03-08 14:25:41 +01:00
2022-07-11 16:25:15 +02:00
2023-07-05 14:42:15 +02:00
2021-06-18 14:47:43 +02:00
2024-05-06 11:13:56 +02:00
2025-01-12 20:21:01 -08:00
2024-10-02 17:23:23 -04:00
2023-02-01 12:18:51 +01:00
2025-07-03 13:51:39 +02:00
2022-08-11 16:50:25 +02:00
2022-02-04 06:30:28 +01:00
2025-01-19 16:41:55 +01:00
2025-10-30 12:52:45 +01:00
2022-07-11 16:25:15 +02:00
2022-02-04 06:30:28 +01:00
2025-05-23 13:57:12 +02:00
2024-07-01 17:03:01 +02:00
2025-11-28 00:00:38 +00:00
2024-09-12 15:41:03 +02:00
2025-11-28 00:00:45 +00:00
2025-11-28 00:00:22 +00:00
2025-11-28 00:00:45 +00:00
2022-07-11 16:25:14 +02:00
2024-07-01 17:01:53 +02:00
2024-07-24 20:59:29 +02:00
2024-06-19 18:41:59 +02:00
2025-03-17 13:49:46 +00:00
2025-07-25 18:35:41 +02:00
2022-09-07 16:46:04 +02:00
2024-01-31 20:40:56 -08:00
2025-07-03 13:51:39 +02:00
2022-09-07 16:46:04 +02:00
2022-11-18 02:15:15 +01:00
2022-09-07 16:46:04 +02:00
2022-05-13 18:56:27 +02:00
2024-01-03 11:17:17 +01:00
2025-07-03 13:51:39 +02:00
2023-11-08 16:40:30 +01:00
2022-09-07 16:46:04 +02:00
2024-02-21 12:03:22 +01:00
2024-10-02 17:23:23 -04:00
2025-10-30 12:52:45 +01:00
2025-03-23 10:53:47 +01:00
2025-05-23 13:57:13 +02:00
2025-07-14 15:22:35 +02:00
2021-05-29 01:04:53 +02:00
2022-07-11 16:25:15 +02:00
2025-07-03 13:51:39 +02:00
2025-07-25 18:40:01 +02:00
2025-06-08 09:07:37 +02:00
2023-11-08 13:52:32 +01:00
2025-03-23 10:20:33 +01:00
2025-09-24 11:50:28 +02:00
2024-11-15 12:07:04 +01:00
2024-10-02 17:23:23 -04:00
2025-07-14 15:22:47 +02:00
2023-11-08 13:52:32 +01:00
2021-05-29 01:04:54 +02:00
2024-08-20 12:37:24 +02:00
2025-03-06 13:35:54 +01:00
2025-11-28 00:05:49 +00:00
2024-09-03 10:47:16 +02:00
2023-05-03 13:49:08 +02:00
2025-10-29 14:47:59 +01:00
2024-08-20 12:37:24 +02:00
2025-07-25 18:40:23 +02:00
2025-07-03 13:51:39 +02:00
2022-03-20 00:29:47 +01:00
2022-03-20 00:29:47 +01:00
2024-09-03 10:47:17 +02:00
2025-11-27 23:59:43 +00:00
2024-09-03 10:47:17 +02:00
2024-08-20 12:37:24 +02:00
2024-09-03 10:47:17 +02:00
2025-05-23 13:57:12 +02:00
2024-05-10 11:13:45 +02:00
2024-05-10 11:13:45 +02:00
2024-09-26 13:03:02 +02:00
2025-10-30 12:52:45 +01:00
2024-09-03 10:47:17 +02:00
2024-09-26 13:03:02 +02:00
2024-09-03 10:47:17 +02:00
2024-09-26 13:03:02 +02:00
2025-10-08 13:17:25 +02:00
2024-09-03 10:47:17 +02:00
2025-09-02 15:28:18 +02:00
2024-09-03 10:47:17 +02:00
2025-05-05 13:15:09 +02:00
2024-08-20 12:37:24 +02:00
2024-09-03 10:47:17 +02:00
2024-09-03 10:47:17 +02:00
2024-09-03 10:47:17 +02:00
2024-09-03 10:47:17 +02:00
2024-09-03 10:47:17 +02:00
2025-09-10 20:28:24 +02:00
2025-09-02 15:28:17 +02:00
2025-09-24 11:50:28 +02:00
2025-08-20 13:52:37 +02:00
2025-09-24 11:50:28 +02:00
2025-08-20 13:52:37 +02:00
2025-09-11 17:40:13 -07:00
2025-08-07 13:19:26 +02:00
2024-09-03 10:47:17 +02:00
2024-09-03 10:47:17 +02:00
2025-05-23 13:57:12 +02:00
2024-12-05 10:01:28 +01:00
2024-02-21 12:03:22 +01:00
2025-07-25 18:38:50 +02:00
2024-10-09 23:20:46 +02:00
2021-06-01 23:53:51 +02:00
2021-08-17 00:45:07 +02:00
2025-04-24 16:04:02 +02:00
2024-10-09 23:20:46 +02:00
2024-10-09 23:20:46 +02:00
2024-10-09 23:20:46 +02:00
2024-10-09 23:20:46 +02:00
2025-11-28 00:05:49 +00:00
2024-10-09 23:20:46 +02:00
2024-10-09 23:20:46 +02:00
2024-10-09 23:20:46 +02:00
2022-07-11 16:40:45 +02:00
2025-03-12 16:37:48 +01:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2023-02-22 21:25:23 -08:00
2021-05-29 01:04:52 +02:00
2021-09-21 03:46:56 +02:00
2025-05-22 17:16:02 +02:00
2025-07-25 18:40:43 +02:00
2024-10-21 11:31:26 +02:00
2023-06-20 22:43:42 +02:00
2023-12-06 17:52:15 +01:00
2024-01-17 12:02:48 +01:00
2024-10-09 23:20:46 +02:00
2024-06-28 17:57:50 +02:00
2023-03-22 21:48:59 +01:00
2025-03-23 10:53:47 +01:00
2023-08-30 17:34:01 +02:00
2024-10-09 23:20:46 +02:00
2023-07-29 18:13:41 +01:00
2022-10-11 17:42:58 -06:00
2022-07-11 16:40:45 +02:00
2025-05-22 17:16:02 +02:00
2023-03-22 21:48:59 +01:00
2022-07-21 00:56:00 +02:00
2024-10-21 11:31:26 +02:00
2023-08-30 17:34:01 +02:00