On Wed, Mar 16, 2016 at 10:41:41AM +0300, Dan Carpenter wrote:
> Hello Herbert Xu,
> 
> The patch 3095e8e366b4: "eCryptfs: Use skcipher and shash" from Jan
> 25, 2016, leads to the following static checker warning:
> 
>       fs/ecryptfs/keystore.c:1117 ecryptfs_parse_tag_70_packet()
>       error: potential null dereference 's'.  (kzalloc returns null)

Thanks for catching this Dan.  It's probably easiest if I add
this to the crypto tree.

---8<---
eCryptfs: Fix null pointer dereference on kzalloc error path

The conversion to skcipher and shash added a couple of null pointer
dereference bugs on the kzalloc failure path.  This patch fixes them.

Fixes: 3095e8e366b4 ("eCryptfs: Use skcipher and shash")
Reported-by: Dan Carpenter <dan.carpen...@oracle.com>
Signed-off-by: Herbert Xu <herb...@gondor.apana.org.au>

diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c
index c5c84df..9893d15 100644
--- a/fs/ecryptfs/keystore.c
+++ b/fs/ecryptfs/keystore.c
@@ -635,8 +635,7 @@ ecryptfs_write_tag_70_packet(char *dest, size_t 
*remaining_bytes,
        if (!s) {
                printk(KERN_ERR "%s: Out of memory whilst trying to kmalloc "
                       "[%zd] bytes of kernel memory\n", __func__, sizeof(*s));
-               rc = -ENOMEM;
-               goto out;
+               return -ENOMEM;
        }
        (*packet_size) = 0;
        rc = ecryptfs_find_auth_tok_for_sig(
@@ -922,8 +921,7 @@ ecryptfs_parse_tag_70_packet(char **filename, size_t 
*filename_size,
        if (!s) {
                printk(KERN_ERR "%s: Out of memory whilst trying to kmalloc "
                       "[%zd] bytes of kernel memory\n", __func__, sizeof(*s));
-               rc = -ENOMEM;
-               goto out;
+               return -ENOMEM;
        }
        if (max_packet_size < ECRYPTFS_TAG_70_MIN_METADATA_SIZE) {
                printk(KERN_WARNING "%s: max_packet_size is [%zd]; it must be "

-- 
Email: Herbert Xu <herb...@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to