[PATCH] fix infoleak in fcntl

From: Kangjie Lu
Date: Tue May 03 2016 - 16:31:16 EST


The stack object âsiâ has a total size of 128 bytes; however, only
16 bytes are initialized. The remaining uninitialized bytes are
sent to userland via send_signal.

Signed-off-by: Kangjie Lu <kjlu@xxxxxxxxxx>
---
fs/fcntl.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/fs/fcntl.c b/fs/fcntl.c
index 350a2c8..d06f943 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -468,6 +468,7 @@ static void send_sigio_to_task(struct task_struct *p,
delivered even if we can't queue. Failure to
queue in this case _should_ be reported; we fall
back to SIGIO in that case. --sct */
+ memset(&si, 0, sizeof(si));
si.si_signo = signum;
si.si_errno = 0;
si.si_code = reason;
--
1.9.1