diff options
author | Eric Paris <eparis@redhat.com> | 2010-12-07 15:27:57 -0500 |
---|---|---|
committer | Eric Paris <eparis@redhat.com> | 2010-12-15 13:58:18 -0500 |
commit | 7d13162332f2b67a941d18cee20f1c0413e020de (patch) | |
tree | a9e40f802579e750fbf75e025e9cee7c760ca558 | |
parent | 62731fa0c893515dc6cbc3e0a2879a92793c735f (diff) |
fanotify: fill in the metadata_len field on struct fanotify_event_metadata
The fanotify_event_metadata now has a field which is supposed to
indicate the length of the metadata portion of the event. Fill in that
field as well.
Based-in-part-on-patch-by: Alexey Zaytsev <alexey.zaytsev@gmail.com>
Signed-off-by: Eric Paris <eparis@redhat.com>
-rw-r--r-- | fs/notify/fanotify/fanotify_user.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c index dccd7985e65..8b61220cffc 100644 --- a/fs/notify/fanotify/fanotify_user.c +++ b/fs/notify/fanotify/fanotify_user.c | |||
@@ -116,6 +116,7 @@ static int fill_event_metadata(struct fsnotify_group *group, | |||
116 | group, metadata, event); | 116 | group, metadata, event); |
117 | 117 | ||
118 | metadata->event_len = FAN_EVENT_METADATA_LEN; | 118 | metadata->event_len = FAN_EVENT_METADATA_LEN; |
119 | metadata->metadata_len = FAN_EVENT_METADATA_LEN; | ||
119 | metadata->vers = FANOTIFY_METADATA_VERSION; | 120 | metadata->vers = FANOTIFY_METADATA_VERSION; |
120 | metadata->mask = event->mask & FAN_ALL_OUTGOING_EVENTS; | 121 | metadata->mask = event->mask & FAN_ALL_OUTGOING_EVENTS; |
121 | metadata->pid = pid_vnr(event->tgid); | 122 | metadata->pid = pid_vnr(event->tgid); |
@@ -275,10 +276,11 @@ static ssize_t copy_event_to_user(struct fsnotify_group *group, | |||
275 | goto out_close_fd; | 276 | goto out_close_fd; |
276 | 277 | ||
277 | ret = -EFAULT; | 278 | ret = -EFAULT; |
278 | if (copy_to_user(buf, &fanotify_event_metadata, FAN_EVENT_METADATA_LEN)) | 279 | if (copy_to_user(buf, &fanotify_event_metadata, |
280 | fanotify_event_metadata.event_len)) | ||
279 | goto out_kill_access_response; | 281 | goto out_kill_access_response; |
280 | 282 | ||
281 | return FAN_EVENT_METADATA_LEN; | 283 | return fanotify_event_metadata.event_len; |
282 | 284 | ||
283 | out_kill_access_response: | 285 | out_kill_access_response: |
284 | remove_access_response(group, event, fd); | 286 | remove_access_response(group, event, fd); |