diff options
author | Kulikov Vasiliy <segooon@gmail.com> | 2010-07-16 18:15:25 +0200 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2010-08-02 14:40:39 +0200 |
commit | f55fdcca6bf1c17e86a270a8c0d81c6677c61222 (patch) | |
tree | ee005fcd546b472375c5fb6c84929f1a1ce5d0e4 /fs/cifs/readdir.c | |
parent | [CIFS] Missing ifdef (diff) | |
download | linux-f55fdcca6bf1c17e86a270a8c0d81c6677c61222.tar.xz linux-f55fdcca6bf1c17e86a270a8c0d81c6677c61222.zip |
fs: cifs: check kmalloc() result
If kmalloc() fails exit with -ENOMEM.
Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Acked-by: Dave Kleikamp <shaggy@linux.vnet.ibm.com>
Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/readdir.c')
-rw-r--r-- | fs/cifs/readdir.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c index daf1753af674..d5e591fab475 100644 --- a/fs/cifs/readdir.c +++ b/fs/cifs/readdir.c @@ -847,6 +847,11 @@ int cifs_readdir(struct file *file, void *direntry, filldir_t filldir) end_of_smb = cifsFile->srch_inf.ntwrk_buf_start + max_len; tmp_buf = kmalloc(UNICODE_NAME_MAX, GFP_KERNEL); + if (tmp_buf == NULL) { + rc = -ENOMEM; + break; + } + for (i = 0; (i < num_to_fill) && (rc == 0); i++) { if (current_entry == NULL) { /* evaluate whether this case is an error */ |