2018-04-11 03:57:02

by Jia Zhang

[permalink] [raw]
Subject: [PATCH 1/2] module: Do not access sig_enforce directly

Call is_module_sig_enforced() instead.

Signed-off-by: Jia Zhang <[email protected]>
---
kernel/module.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/module.c b/kernel/module.c
index a6e43a5..f695474 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2785,7 +2785,7 @@ static int module_sig_check(struct load_info *info, int flags)
}

/* Not having a signature is only an error if we're strict. */
- if (err == -ENOKEY && !sig_enforce)
+ if (err == -ENOKEY && !is_module_sig_enforced())
err = 0;

return err;
--
1.8.3.1



2018-04-11 03:59:58

by Jia Zhang

[permalink] [raw]
Subject: [PATCH 2/2] module: Allow to always show the status of modsign

The sig_enforce parameter could be always shown to reflect the
current status of modsign. For the case of CONFIG_MODULE_SIG_FORCE=y,
this modification does nothing harmless.

Signed-off-by: Jia Zhang <[email protected]>
---
kernel/module.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/kernel/module.c b/kernel/module.c
index f695474..1e3337b 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -274,9 +274,7 @@ static void module_assert_mutex_or_preempt(void)
}

static bool sig_enforce = IS_ENABLED(CONFIG_MODULE_SIG_FORCE);
-#ifndef CONFIG_MODULE_SIG_FORCE
module_param(sig_enforce, bool_enable_only, 0644);
-#endif /* !CONFIG_MODULE_SIG_FORCE */

/*
* Export sig_enforce kernel cmdline parameter to allow other subsystems rely
--
1.8.3.1


2018-04-16 15:52:38

by Jessica Yu

[permalink] [raw]
Subject: Re: [PATCH 2/2] module: Allow to always show the status of modsign

+++ Jia Zhang [11/04/18 11:53 +0800]:
>The sig_enforce parameter could be always shown to reflect the
>current status of modsign. For the case of CONFIG_MODULE_SIG_FORCE=y,
>this modification does nothing harmless.
>
>Signed-off-by: Jia Zhang <[email protected]>

Both patches look fine to me. Queued on modules-next.

Thanks,

Jessica

>---
> kernel/module.c | 2 --
> 1 file changed, 2 deletions(-)
>
>diff --git a/kernel/module.c b/kernel/module.c
>index f695474..1e3337b 100644
>--- a/kernel/module.c
>+++ b/kernel/module.c
>@@ -274,9 +274,7 @@ static void module_assert_mutex_or_preempt(void)
> }
>
> static bool sig_enforce = IS_ENABLED(CONFIG_MODULE_SIG_FORCE);
>-#ifndef CONFIG_MODULE_SIG_FORCE
> module_param(sig_enforce, bool_enable_only, 0644);
>-#endif /* !CONFIG_MODULE_SIG_FORCE */
>
> /*
> * Export sig_enforce kernel cmdline parameter to allow other subsystems rely
>--
>1.8.3.1
>