diff options
Diffstat (limited to 'source3/modules')
-rw-r--r-- | source3/modules/vfs_default.c | 4 | ||||
-rw-r--r-- | source3/modules/vfs_full_audit.c | 4 | ||||
-rw-r--r-- | source3/modules/vfs_notify_fam.c | 4 | ||||
-rw-r--r-- | source3/modules/vfs_time_audit.c | 3 |
4 files changed, 11 insertions, 4 deletions
diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c index 1dbd308368..37ec7e884d 100644 --- a/source3/modules/vfs_default.c +++ b/source3/modules/vfs_default.c @@ -1633,6 +1633,7 @@ static char *vfswrap_realpath(vfs_handle_struct *handle, const char *path) static NTSTATUS vfswrap_notify_watch(vfs_handle_struct *vfs_handle, struct sys_notify_context *ctx, struct notify_entry *e, + const char *path, void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev), @@ -1648,7 +1649,8 @@ static NTSTATUS vfswrap_notify_watch(vfs_handle_struct *vfs_handle, */ #ifdef HAVE_INOTIFY if (lp_kernel_change_notify(ctx->conn->params)) { - return inotify_watch(ctx, e, callback, private_data, handle); + return inotify_watch(ctx, e, path, callback, private_data, + handle); } #endif /* diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c index 3efa848d22..24c2f8e323 100644 --- a/source3/modules/vfs_full_audit.c +++ b/source3/modules/vfs_full_audit.c @@ -1380,6 +1380,7 @@ static char *smb_full_audit_realpath(vfs_handle_struct *handle, static NTSTATUS smb_full_audit_notify_watch(struct vfs_handle_struct *handle, struct sys_notify_context *ctx, struct notify_entry *e, + const char *path, void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev), @@ -1387,7 +1388,8 @@ static NTSTATUS smb_full_audit_notify_watch(struct vfs_handle_struct *handle, { NTSTATUS result; - result = SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, callback, private_data, handle_p); + result = SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, path, callback, + private_data, handle_p); do_log(SMB_VFS_OP_NOTIFY_WATCH, NT_STATUS_IS_OK(result), handle, ""); diff --git a/source3/modules/vfs_notify_fam.c b/source3/modules/vfs_notify_fam.c index 343149423e..8a3487b9d3 100644 --- a/source3/modules/vfs_notify_fam.c +++ b/source3/modules/vfs_notify_fam.c @@ -222,6 +222,7 @@ static int fam_watch_context_destructor(struct fam_watch_context *ctx) static NTSTATUS fam_watch(vfs_handle_struct *vfs_handle, struct sys_notify_context *ctx, struct notify_entry *e, + const char *path, void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev), @@ -259,7 +260,8 @@ static NTSTATUS fam_watch(vfs_handle_struct *vfs_handle, watch->private_data = private_data; watch->sys_ctx = ctx; - if (!(watch->path = talloc_strdup(watch, e->path))) { + watch->path = talloc_strdup(watch, path); + if (watch->path == NULL) { DEBUG(0, ("talloc_asprintf failed\n")); TALLOC_FREE(watch); return NT_STATUS_NO_MEMORY; diff --git a/source3/modules/vfs_time_audit.c b/source3/modules/vfs_time_audit.c index 734625e4e9..8ec434b541 100644 --- a/source3/modules/vfs_time_audit.c +++ b/source3/modules/vfs_time_audit.c @@ -1131,6 +1131,7 @@ static char *smb_time_audit_realpath(vfs_handle_struct *handle, static NTSTATUS smb_time_audit_notify_watch(struct vfs_handle_struct *handle, struct sys_notify_context *ctx, struct notify_entry *e, + const char *path, void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev), @@ -1141,7 +1142,7 @@ static NTSTATUS smb_time_audit_notify_watch(struct vfs_handle_struct *handle, double timediff; clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, callback, + result = SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, path, callback, private_data, handle_p); clock_gettime_mono(&ts2); timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; |