diff mbox series

[v2] lsm: Add a __counted_by() annotation to lsm_ctx.ctx

Message ID 20231222-lsm-fix-counted-by-v2-1-f1237a095bdc@kernel.org (mailing list archive)
State Accepted
Delegated to: Paul Moore
Headers show
Series [v2] lsm: Add a __counted_by() annotation to lsm_ctx.ctx | expand

Commit Message

Mark Brown Dec. 22, 2023, 2:54 p.m. UTC
The ctx in struct lsm_ctx is an array of size ctx_len, tell the compiler
about this using __counted_by() where supported to improve the ability to
detect overflow issues.

Reported-by: Aishwarya TCV <aishwarya.tcv@arm.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
---
Changes in v2:
- Add explicit stddef.h inclusion in case __counted_by() definition
  isn't otherwise pulled in.
- Link to v1: https://lore.kernel.org/r/20231221-lsm-fix-counted-by-v1-1-12cc27597cdf@kernel.org
---
 include/uapi/linux/lsm.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)


---
base-commit: ec4e9d630a64df500641892f4e259e8149594a99
change-id: 20231221-lsm-fix-counted-by-f9fd827e26aa

Best regards,

Comments

Paul Moore Dec. 22, 2023, 11 p.m. UTC | #1
On Dec 22, 2023 Mark Brown <broonie@kernel.org> wrote:
> 
> The ctx in struct lsm_ctx is an array of size ctx_len, tell the compiler
> about this using __counted_by() where supported to improve the ability to
> detect overflow issues.
> 
> Reported-by: Aishwarya TCV <aishwarya.tcv@arm.com>
> Signed-off-by: Mark Brown <broonie@kernel.org>
> ---
> Changes in v2:
> - Add explicit stddef.h inclusion in case __counted_by() definition
>   isn't otherwise pulled in.
> - Link to v1: https://lore.kernel.org/r/20231221-lsm-fix-counted-by-v1-1-12cc27597cdf@kernel.org
> ---
>  include/uapi/linux/lsm.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Applied to lsm/dev, thanks!

--
paul-moore.com
diff mbox series

Patch

diff --git a/include/uapi/linux/lsm.h b/include/uapi/linux/lsm.h
index f0386880a78e..f8aef9ade549 100644
--- a/include/uapi/linux/lsm.h
+++ b/include/uapi/linux/lsm.h
@@ -9,6 +9,7 @@ 
 #ifndef _UAPI_LINUX_LSM_H
 #define _UAPI_LINUX_LSM_H
 
+#include <linux/stddef.h>
 #include <linux/types.h>
 #include <linux/unistd.h>
 
@@ -36,7 +37,7 @@  struct lsm_ctx {
 	__u64 flags;
 	__u64 len;
 	__u64 ctx_len;
-	__u8 ctx[];
+	__u8 ctx[] __counted_by(ctx_len);
 };
 
 /*