Re: [PATCH 2/2] LoadPin: Make sysctl table const
From: Kees Cook
Date: Mon Feb 10 2025 - 19:38:43 EST
On Thu, Jan 23, 2025 at 04:33:35PM -0300, Ricardo B. Marliere wrote:
> Since commit 7abc9b53bd51 ("sysctl: allow registration of const struct
> ctl_table"), the sysctl registration API allows for struct ctl_table to be
> in read-only memory. Move loadpin_sysctl_table to be declared at build
> time, instead of having to be dynamically allocated at boot time.
>
> Cc: Thomas Weißschuh <linux@xxxxxxxxxxxxxx>
> Suggested-by: Thomas Weißschuh <linux@xxxxxxxxxxxxxx>
> Signed-off-by: Ricardo B. Marliere <rbm@xxxxxxxx>
> ---
> security/loadpin/loadpin.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/security/loadpin/loadpin.c b/security/loadpin/loadpin.c
> index 68252452b66cb913638abbca2adea26219e77d37..e2d664b7602629c08c86d6d02158a4e9dd189b1a 100644
> --- a/security/loadpin/loadpin.c
> +++ b/security/loadpin/loadpin.c
> @@ -53,7 +53,7 @@ static bool deny_reading_verity_digests;
> #endif
>
> #ifdef CONFIG_SYSCTL
> -static struct ctl_table loadpin_sysctl_table[] = {
> +static const struct ctl_table loadpin_sysctl_table[] = {
> {
> .procname = "enforce",
> .data = &enforce,
This can't be done since the table is modified during set_sysctl().
-Kees
--
Kees Cook