提交 ee0a4718 编写于 作者: M Miaoqing Pan 提交者: Kalle Valo

ath9k: fix tx99 potential info leak

When the user sets count to zero the string buffer would remain
completely uninitialized which causes the kernel to parse its
own stack data, potentially leading to an info leak. In addition
to that, the string might be not terminated properly when the
user data does not contain a 0-terminator.
Signed-off-by: NMiaoqing Pan <miaoqing@codeaurora.org>
Reviewed-by: NChristoph Böhmwalder <christoph@boehmwalder.at>
Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
上级 2ea9f12c
...@@ -179,6 +179,9 @@ static ssize_t write_file_tx99(struct file *file, const char __user *user_buf, ...@@ -179,6 +179,9 @@ static ssize_t write_file_tx99(struct file *file, const char __user *user_buf,
ssize_t len; ssize_t len;
int r; int r;
if (count < 1)
return -EINVAL;
if (sc->cur_chan->nvifs > 1) if (sc->cur_chan->nvifs > 1)
return -EOPNOTSUPP; return -EOPNOTSUPP;
...@@ -186,6 +189,8 @@ static ssize_t write_file_tx99(struct file *file, const char __user *user_buf, ...@@ -186,6 +189,8 @@ static ssize_t write_file_tx99(struct file *file, const char __user *user_buf,
if (copy_from_user(buf, user_buf, len)) if (copy_from_user(buf, user_buf, len))
return -EFAULT; return -EFAULT;
buf[len] = '\0';
if (strtobool(buf, &start)) if (strtobool(buf, &start))
return -EINVAL; return -EINVAL;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册