aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMimi Zohar <zohar@linux.vnet.ibm.com>2015-06-11 11:54:42 -0400
committerMimi Zohar <zohar@linux.vnet.ibm.com>2015-06-16 08:18:21 -0400
commit45b26133b97871896b8c5241d59f4ff7839db7b2 (patch)
tree7a9da6f15ae727eb9f2e9d1a9b74b129a18dd49d
parentd6f7aa27f41db6f556dba0185228a0b90a2a0980 (diff)
ima: fix ima_show_template_data_ascii()
This patch fixes a bug introduced in "4d7aeee ima: define new template ima-ng and template fields d-ng and n-ng". Changelog: - change int to uint32 (Roberto Sassu's suggestion) Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com> Signed-off-by: Roberto Sassu <rsassu@suse.de> Cc: stable@vger.kernel.org # 3.13
-rw-r--r--security/integrity/ima/ima.h2
-rw-r--r--security/integrity/ima/ima_fs.c4
-rw-r--r--security/integrity/ima/ima_template_lib.c3
3 files changed, 5 insertions, 4 deletions
diff --git a/security/integrity/ima/ima.h b/security/integrity/ima/ima.h
index c996f7edff3a..e2a60c30df44 100644
--- a/security/integrity/ima/ima.h
+++ b/security/integrity/ima/ima.h
@@ -115,7 +115,7 @@ void ima_add_violation(struct file *file, const unsigned char *filename,
115 const char *op, const char *cause); 115 const char *op, const char *cause);
116int ima_init_crypto(void); 116int ima_init_crypto(void);
117void ima_putc(struct seq_file *m, void *data, int datalen); 117void ima_putc(struct seq_file *m, void *data, int datalen);
118void ima_print_digest(struct seq_file *m, u8 *digest, int size); 118void ima_print_digest(struct seq_file *m, u8 *digest, u32 size);
119struct ima_template_desc *ima_template_desc_current(void); 119struct ima_template_desc *ima_template_desc_current(void);
120int ima_init_template(void); 120int ima_init_template(void);
121 121
diff --git a/security/integrity/ima/ima_fs.c b/security/integrity/ima/ima_fs.c
index 461215e5fd31..816d175da79a 100644
--- a/security/integrity/ima/ima_fs.c
+++ b/security/integrity/ima/ima_fs.c
@@ -190,9 +190,9 @@ static const struct file_operations ima_measurements_ops = {
190 .release = seq_release, 190 .release = seq_release,
191}; 191};
192 192
193void ima_print_digest(struct seq_file *m, u8 *digest, int size) 193void ima_print_digest(struct seq_file *m, u8 *digest, u32 size)
194{ 194{
195 int i; 195 u32 i;
196 196
197 for (i = 0; i < size; i++) 197 for (i = 0; i < size; i++)
198 seq_printf(m, "%02x", *(digest + i)); 198 seq_printf(m, "%02x", *(digest + i));
diff --git a/security/integrity/ima/ima_template_lib.c b/security/integrity/ima/ima_template_lib.c
index de0ce4fbdf69..2934e3d377f1 100644
--- a/security/integrity/ima/ima_template_lib.c
+++ b/security/integrity/ima/ima_template_lib.c
@@ -70,7 +70,8 @@ static void ima_show_template_data_ascii(struct seq_file *m,
70 enum data_formats datafmt, 70 enum data_formats datafmt,
71 struct ima_field_data *field_data) 71 struct ima_field_data *field_data)
72{ 72{
73 u8 *buf_ptr = field_data->data, buflen = field_data->len; 73 u8 *buf_ptr = field_data->data;
74 u32 buflen = field_data->len;
74 75
75 switch (datafmt) { 76 switch (datafmt) {
76 case DATA_FMT_DIGEST_WITH_ALGO: 77 case DATA_FMT_DIGEST_WITH_ALGO: