Commit c9c482ef authored by Vasily Averin's avatar Vasily Averin Committed by Luis Henriques

cifs_dbg() outputs an uninitialized buffer in cifs_readdir()

commit 01b9b0b2 upstream.

In some cases tmp_bug can be not filled in cifs_filldir and stay uninitialized,
therefore its printk with "%s" modifier can leak content of kernelspace memory.
If old content of this buffer does not contain '\0' access bejond end of
allocated object can crash the host.
Signed-off-by: default avatarVasily Averin <vvs@virtuozzo.com>
Signed-off-by: default avatarSteve French <sfrench@localhost.localdomain>
Signed-off-by: default avatarLuis Henriques <luis.henriques@canonical.com>
parent eb2c033d
...@@ -849,6 +849,7 @@ int cifs_readdir(struct file *file, struct dir_context *ctx) ...@@ -849,6 +849,7 @@ int cifs_readdir(struct file *file, struct dir_context *ctx)
* if buggy server returns . and .. late do we want to * if buggy server returns . and .. late do we want to
* check for that here? * check for that here?
*/ */
*tmp_buf = 0;
rc = cifs_filldir(current_entry, file, ctx, rc = cifs_filldir(current_entry, file, ctx,
tmp_buf, max_len); tmp_buf, max_len);
if (rc) { if (rc) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment