aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKees Cook <[email protected]>2023-10-03 16:18:18 -0700
committerJakub Kicinski <[email protected]>2023-10-05 18:31:34 -0700
commit3e584e32b19d4c8d4591dc720277e2001d135ee1 (patch)
tree957eda81f6204bb57d8872dd7c3369ef1a217a30
parent2253bb3ff242af3b1a53cb98e2e4eb1eec82dd2a (diff)
nexthop: Annotate struct nh_notifier_res_table_info with __counted_by
Prepare for the coming implementation by GCC and Clang of the __counted_by attribute. Flexible array members annotated with __counted_by can have their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family functions). As found with Coccinelle[1], add __counted_by for struct nh_notifier_res_table_info. Cc: Nathan Chancellor <[email protected]> Cc: Nick Desaulniers <[email protected]> Cc: Tom Rix <[email protected]> Cc: [email protected] Link: https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci [1] Signed-off-by: Kees Cook <[email protected]> Reviewed-by: David Ahern <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
-rw-r--r--include/net/nexthop.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/nexthop.h b/include/net/nexthop.h
index 0b1172dbb334..dbd90e8fe9d6 100644
--- a/include/net/nexthop.h
+++ b/include/net/nexthop.h
@@ -200,7 +200,7 @@ struct nh_notifier_res_bucket_info {
struct nh_notifier_res_table_info {
u16 num_nh_buckets;
- struct nh_notifier_single_info nhs[];
+ struct nh_notifier_single_info nhs[] __counted_by(num_nh_buckets);
};
struct nh_notifier_info {