summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarren Jenkins <darrenrjenkins@gmailcom>2008-07-08 15:51:44 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-07-08 15:51:44 +0800
commitb65d3921bbd5d7aa11739055297a127389dbed23 (patch)
treeea9c7f4a722c853537a5bc9d97c4a50153778d7e
parente91fca6420deb9bd222ee354cdfb3653b740069c (diff)
downloadlinux-crypto-b65d3921bbd5d7aa11739055297a127389dbed23.tar.gz
linux-crypto-b65d3921bbd5d7aa11739055297a127389dbed23.zip
crypto: tcrypt - Fix memory leak in test_cipher
Coverity CID: 2306 & 2307 RESOURCE_LEAK In the second for loop in test_cipher(), data is allocated space with kzalloc() and is only ever freed in an error case. Looking at this loop, data is written to this memory but nothing seems to read from it. So here is a patch removing the allocation, I think this is the right fix. Only compile tested. Signed-off-by: Darren Jenkins <darrenrjenkins@gmailcom> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/tcrypt.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c
index 6beabc5a..e47f6e02 100644
--- a/crypto/tcrypt.c
+++ b/crypto/tcrypt.c
@@ -586,12 +586,6 @@ static void test_cipher(char *algo, int enc,
j = 0;
for (i = 0; i < tcount; i++) {
- data = kzalloc(template[i].ilen, GFP_KERNEL);
- if (!data)
- continue;
-
- memcpy(data, template[i].input, template[i].ilen);
-
if (template[i].iv)
memcpy(iv, template[i].iv, MAX_IVLEN);
else
@@ -613,10 +607,8 @@ static void test_cipher(char *algo, int enc,
printk("setkey() failed flags=%x\n",
crypto_ablkcipher_get_flags(tfm));
- if (!template[i].fail) {
- kfree(data);
+ if (!template[i].fail)
goto out;
- }
}
temp = 0;