From 2d3d69c5c348d18112596bd3fdeed95689c613c8 Mon Sep 17 00:00:00 2001 From: Laurent Vivier Date: Tue, 13 May 2025 11:41:02 +0200 Subject: flow: Fix clang error (clang-analyzer-security.PointerSub) Fixes the following clang-analyzer warning: flow_table.h:96:25: note: Subtraction of two pointers that do not point into the same array is undefined behavior 96 | return (union flow *)f - flowtab; The `flow_idx()` function is called via `FLOW_IDX()` from `flow_foreach_slot()`, where `f` is set to `&flowtab[idx].f`. Therefore, `f` and `flowtab` do point to the same array. Signed-off-by: Laurent Vivier Signed-off-by: Stefano Brivio --- flow_table.h | 1 + 1 file changed, 1 insertion(+) diff --git a/flow_table.h b/flow_table.h index 2d5c65c..3f3f4b7 100644 --- a/flow_table.h +++ b/flow_table.h @@ -93,6 +93,7 @@ extern union flow flowtab[]; */ static inline unsigned flow_idx(const struct flow_common *f) { + /* NOLINTNEXTLINE(clang-analyzer-security.PointerSub) */ return (union flow *)f - flowtab; } -- cgit v1.2.3