aboutsummaryrefslogtreecommitdiffstats
path: root/fs/notify
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-07-08 18:59:40 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2013-07-09 13:33:19 -0400
commitde1e0c40aceb9d5bff09c3a3b97b2f1b178af53f (patch)
tree128cd291a84aa596486f057259308dc6ae529585 /fs/notify
parentb9ce54c9f59894e787e3067d2f758c297fcd6fd0 (diff)
fanotify: info leak in copy_event_to_user()
The ->reserved field isn't cleared so we leak one byte of stack information to userspace. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: Eric Paris <eparis@redhat.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/notify')
-rw-r--r--fs/notify/fanotify/fanotify_user.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
index 1ea52f7c031f..e16076d386c4 100644
--- a/fs/notify/fanotify/fanotify_user.c
+++ b/fs/notify/fanotify/fanotify_user.c
@@ -122,6 +122,7 @@ static int fill_event_metadata(struct fsnotify_group *group,
122 metadata->event_len = FAN_EVENT_METADATA_LEN; 122 metadata->event_len = FAN_EVENT_METADATA_LEN;
123 metadata->metadata_len = FAN_EVENT_METADATA_LEN; 123 metadata->metadata_len = FAN_EVENT_METADATA_LEN;
124 metadata->vers = FANOTIFY_METADATA_VERSION; 124 metadata->vers = FANOTIFY_METADATA_VERSION;
125 metadata->reserved = 0;
125 metadata->mask = event->mask & FAN_ALL_OUTGOING_EVENTS; 126 metadata->mask = event->mask & FAN_ALL_OUTGOING_EVENTS;
126 metadata->pid = pid_vnr(event->tgid); 127 metadata->pid = pid_vnr(event->tgid);
127 if (unlikely(event->mask & FAN_Q_OVERFLOW)) 128 if (unlikely(event->mask & FAN_Q_OVERFLOW))