summaryrefslogtreecommitdiff
path: root/security/selinux
diff options
context:
space:
mode:
authorRoberto Sassu <roberto.sassu@huawei.com>2021-07-23 10:53:04 +0200
committerMimi Zohar <zohar@linux.ibm.com>2021-07-23 09:27:02 -0400
commitca3c9bdb101d9b9eb3ed8a85cc0fe55915ba49de (patch)
tree46966a8fd69ed70c7223b0c044f5244fddaef4ce /security/selinux
parentce5bb5a86e5ebcd3c2e40e6dd1382027b5d43caf (diff)
ima: Add digest and digest_len params to the functions to measure a buffer
This patch performs the final modification necessary to pass the buffer measurement to callers, so that they provide a functionality similar to ima_file_hash(). It adds the 'digest' and 'digest_len' parameters to ima_measure_critical_data() and process_buffer_measurement(). These functions calculate the digest even if there is no suitable rule in the IMA policy and, in this case, they simply return 1 before generating a new measurement entry. Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com> Reviewed-by: Lakshmi Ramasubramanian <nramas@linux.microsoft.com> Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Diffstat (limited to 'security/selinux')
-rw-r--r--security/selinux/ima.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/security/selinux/ima.c b/security/selinux/ima.c
index 34d421861bfc..727c4e43219d 100644
--- a/security/selinux/ima.c
+++ b/security/selinux/ima.c
@@ -86,7 +86,8 @@ void selinux_ima_measure_state_locked(struct selinux_state *state)
}
ima_measure_critical_data("selinux", "selinux-state",
- state_str, strlen(state_str), false);
+ state_str, strlen(state_str), false,
+ NULL, 0);
kfree(state_str);
@@ -103,7 +104,8 @@ void selinux_ima_measure_state_locked(struct selinux_state *state)
}
ima_measure_critical_data("selinux", "selinux-policy-hash",
- policy, policy_len, true);
+ policy, policy_len, true,
+ NULL, 0);
vfree(policy);
}