Explorar o código

EVM: fix memory leak of temporary buffer 'temp'

The allocation of 'temp' is not kfree'd and hence there is a memory
leak on each call of evm_read_xattrs.  Fix this by kfree'ing it
after copying data from it back to the user space buffer 'buf'.

Detected by CoverityScan, CID#1469386 ("Resource Leak")

Fixes: fa516b66a1bf ("EVM: Allow runtime modification of the set of verified xattrs")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
Colin Ian King %!s(int64=7) %!d(string=hai) anos
pai
achega
825b8650dc
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      security/integrity/evm/evm_secfs.c

+ 2 - 0
security/integrity/evm/evm_secfs.c

@@ -158,6 +158,8 @@ static ssize_t evm_read_xattrs(struct file *filp, char __user *buf,
 	mutex_unlock(&xattr_list_mutex);
 	mutex_unlock(&xattr_list_mutex);
 	rc = simple_read_from_buffer(buf, count, ppos, temp, strlen(temp));
 	rc = simple_read_from_buffer(buf, count, ppos, temp, strlen(temp));
 
 
+	kfree(temp);
+
 	return rc;
 	return rc;
 }
 }