diff mbox

[RFC,3/4] integrity: mark default IMA rules as __ro_after_init

Message ID alpine.LRH.2.20.1702131634000.8914@namei.org (mailing list archive)
State New, archived
Headers show

Commit Message

James Morris Feb. 13, 2017, 5:34 a.m. UTC
The default IMA rules are loaded during init and then do not
change, so mark them as __ro_after_init.

Signed-off-by: James Morris <james.l.morris@oracle.com>
---
 security/integrity/ima/ima_policy.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

Comments

Mimi Zohar Feb. 14, 2017, 1:45 a.m. UTC | #1
On Mon, 2017-02-13 at 16:34 +1100, James Morris wrote:
> The default IMA rules are loaded during init and then do not
> change, so mark them as __ro_after_init.
> 
> Signed-off-by: James Morris <james.l.morris@oracle.com>

Thanks!

Mimi

> ---
>  security/integrity/ima/ima_policy.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c
> index aed47b7..e8498a3 100644
> --- a/security/integrity/ima/ima_policy.c
> +++ b/security/integrity/ima/ima_policy.c
> @@ -83,7 +83,7 @@ struct ima_rule_entry {
>   * normal users can easily run the machine out of memory simply building
>   * and running executables.
>   */
> -static struct ima_rule_entry dont_measure_rules[] = {
> +static struct ima_rule_entry dont_measure_rules[] __ro_after_init = {
>  	{.action = DONT_MEASURE, .fsmagic = PROC_SUPER_MAGIC, .flags = IMA_FSMAGIC},
>  	{.action = DONT_MEASURE, .fsmagic = SYSFS_MAGIC, .flags = IMA_FSMAGIC},
>  	{.action = DONT_MEASURE, .fsmagic = DEBUGFS_MAGIC, .flags = IMA_FSMAGIC},
> @@ -97,7 +97,7 @@ struct ima_rule_entry {
>  	{.action = DONT_MEASURE, .fsmagic = NSFS_MAGIC, .flags = IMA_FSMAGIC}
>  };
> 
> -static struct ima_rule_entry original_measurement_rules[] = {
> +static struct ima_rule_entry original_measurement_rules[] __ro_after_init = {
>  	{.action = MEASURE, .func = MMAP_CHECK, .mask = MAY_EXEC,
>  	 .flags = IMA_FUNC | IMA_MASK},
>  	{.action = MEASURE, .func = BPRM_CHECK, .mask = MAY_EXEC,
> @@ -108,7 +108,7 @@ struct ima_rule_entry {
>  	{.action = MEASURE, .func = FIRMWARE_CHECK, .flags = IMA_FUNC},
>  };
> 
> -static struct ima_rule_entry default_measurement_rules[] = {
> +static struct ima_rule_entry default_measurement_rules[] __ro_after_init = {
>  	{.action = MEASURE, .func = MMAP_CHECK, .mask = MAY_EXEC,
>  	 .flags = IMA_FUNC | IMA_MASK},
>  	{.action = MEASURE, .func = BPRM_CHECK, .mask = MAY_EXEC,
> @@ -122,7 +122,7 @@ struct ima_rule_entry {
>  	{.action = MEASURE, .func = POLICY_CHECK, .flags = IMA_FUNC},
>  };
> 
> -static struct ima_rule_entry default_appraise_rules[] = {
> +static struct ima_rule_entry default_appraise_rules[] __ro_after_init = {
>  	{.action = DONT_APPRAISE, .fsmagic = PROC_SUPER_MAGIC, .flags = IMA_FSMAGIC},
>  	{.action = DONT_APPRAISE, .fsmagic = SYSFS_MAGIC, .flags = IMA_FSMAGIC},
>  	{.action = DONT_APPRAISE, .fsmagic = DEBUGFS_MAGIC, .flags = IMA_FSMAGIC},
James Morris Feb. 14, 2017, 10:38 a.m. UTC | #2
On Mon, 13 Feb 2017, Mimi Zohar wrote:

> On Mon, 2017-02-13 at 16:34 +1100, James Morris wrote:
> > The default IMA rules are loaded during init and then do not
> > change, so mark them as __ro_after_init.
> > 
> > Signed-off-by: James Morris <james.l.morris@oracle.com>
> 
> Thanks!

Is that an acked-by?
Mimi Zohar Feb. 15, 2017, 5:58 a.m. UTC | #3
On Tue, 2017-02-14 at 21:38 +1100, James Morris wrote:
> On Mon, 13 Feb 2017, Mimi Zohar wrote:
> 
> > On Mon, 2017-02-13 at 16:34 +1100, James Morris wrote:
> > > The default IMA rules are loaded during init and then do not
> > > change, so mark them as __ro_after_init.
> > > 
> > > Signed-off-by: James Morris <james.l.morris@oracle.com>
> > 
> > Thanks!
> 
> Is that an acked-by?

Yes, thanks.

Mimi
diff mbox

Patch

diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c
index aed47b7..e8498a3 100644
--- a/security/integrity/ima/ima_policy.c
+++ b/security/integrity/ima/ima_policy.c
@@ -83,7 +83,7 @@  struct ima_rule_entry {
  * normal users can easily run the machine out of memory simply building
  * and running executables.
  */
-static struct ima_rule_entry dont_measure_rules[] = {
+static struct ima_rule_entry dont_measure_rules[] __ro_after_init = {
 	{.action = DONT_MEASURE, .fsmagic = PROC_SUPER_MAGIC, .flags = IMA_FSMAGIC},
 	{.action = DONT_MEASURE, .fsmagic = SYSFS_MAGIC, .flags = IMA_FSMAGIC},
 	{.action = DONT_MEASURE, .fsmagic = DEBUGFS_MAGIC, .flags = IMA_FSMAGIC},
@@ -97,7 +97,7 @@  struct ima_rule_entry {
 	{.action = DONT_MEASURE, .fsmagic = NSFS_MAGIC, .flags = IMA_FSMAGIC}
 };
 
-static struct ima_rule_entry original_measurement_rules[] = {
+static struct ima_rule_entry original_measurement_rules[] __ro_after_init = {
 	{.action = MEASURE, .func = MMAP_CHECK, .mask = MAY_EXEC,
 	 .flags = IMA_FUNC | IMA_MASK},
 	{.action = MEASURE, .func = BPRM_CHECK, .mask = MAY_EXEC,
@@ -108,7 +108,7 @@  struct ima_rule_entry {
 	{.action = MEASURE, .func = FIRMWARE_CHECK, .flags = IMA_FUNC},
 };
 
-static struct ima_rule_entry default_measurement_rules[] = {
+static struct ima_rule_entry default_measurement_rules[] __ro_after_init = {
 	{.action = MEASURE, .func = MMAP_CHECK, .mask = MAY_EXEC,
 	 .flags = IMA_FUNC | IMA_MASK},
 	{.action = MEASURE, .func = BPRM_CHECK, .mask = MAY_EXEC,
@@ -122,7 +122,7 @@  struct ima_rule_entry {
 	{.action = MEASURE, .func = POLICY_CHECK, .flags = IMA_FUNC},
 };
 
-static struct ima_rule_entry default_appraise_rules[] = {
+static struct ima_rule_entry default_appraise_rules[] __ro_after_init = {
 	{.action = DONT_APPRAISE, .fsmagic = PROC_SUPER_MAGIC, .flags = IMA_FSMAGIC},
 	{.action = DONT_APPRAISE, .fsmagic = SYSFS_MAGIC, .flags = IMA_FSMAGIC},
 	{.action = DONT_APPRAISE, .fsmagic = DEBUGFS_MAGIC, .flags = IMA_FSMAGIC},