aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorDarren Jenkins <darrenrjenkins@gmailcom>2008-07-08 03:51:44 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2008-07-08 03:51:44 -0400
commitdbb018cd8a0fd073eaabf9de5a93f62d98bd7723 (patch)
tree761c76f1fc6c81a51cd68adfe77108bed3c66dfd /crypto
parent7b51ba38d9baca207152d1c97ec793cfb673a6cd (diff)
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>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/tcrypt.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c
index 6beabc5abd07..e47f6e02133c 100644
--- a/crypto/tcrypt.c
+++ b/crypto/tcrypt.c
@@ -586,12 +586,6 @@ static void test_cipher(char *algo, int enc,
586 j = 0; 586 j = 0;
587 for (i = 0; i < tcount; i++) { 587 for (i = 0; i < tcount; i++) {
588 588
589 data = kzalloc(template[i].ilen, GFP_KERNEL);
590 if (!data)
591 continue;
592
593 memcpy(data, template[i].input, template[i].ilen);
594
595 if (template[i].iv) 589 if (template[i].iv)
596 memcpy(iv, template[i].iv, MAX_IVLEN); 590 memcpy(iv, template[i].iv, MAX_IVLEN);
597 else 591 else
@@ -613,10 +607,8 @@ static void test_cipher(char *algo, int enc,
613 printk("setkey() failed flags=%x\n", 607 printk("setkey() failed flags=%x\n",
614 crypto_ablkcipher_get_flags(tfm)); 608 crypto_ablkcipher_get_flags(tfm));
615 609
616 if (!template[i].fail) { 610 if (!template[i].fail)
617 kfree(data);
618 goto out; 611 goto out;
619 }
620 } 612 }
621 613
622 temp = 0; 614 temp = 0;