summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2012-03-26 12:46:11 +0200
committerVolker Lendecke <vl@samba.org>2012-03-26 17:45:43 +0200
commitfa6f61e83565f49fb4e75248cffaa1ef31567d20 (patch)
tree0caed7c2a103a24db7e6d2e0578071beefbb69f2 /source3/include
parentc3a506b64e248152212ab647048a47bd63039452 (diff)
downloadsamba-fa6f61e83565f49fb4e75248cffaa1ef31567d20.tar.gz
samba-fa6f61e83565f49fb4e75248cffaa1ef31567d20.tar.bz2
samba-fa6f61e83565f49fb4e75248cffaa1ef31567d20.zip
s3: Pass filters explicitly through vfs notify watch
This removes a dependency on "struct notify_entry" and makes the nature of the API more explicit. We depend upon the VFS module to mask out elements from e->filter and e->subdir_filter that it took over to handle. Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Mon Mar 26 17:45:44 CEST 2012 on sn-devel-104
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/vfs.h6
-rw-r--r--source3/include/vfs_macros.h8
2 files changed, 8 insertions, 6 deletions
diff --git a/source3/include/vfs.h b/source3/include/vfs.h
index c038c56f46..212da7e514 100644
--- a/source3/include/vfs.h
+++ b/source3/include/vfs.h
@@ -284,8 +284,9 @@ struct vfs_fn_pointers {
char *(*realpath_fn)(struct vfs_handle_struct *handle, const char *path);
NTSTATUS (*notify_watch_fn)(struct vfs_handle_struct *handle,
struct sys_notify_context *ctx,
- struct notify_entry *e,
const char *path,
+ uint32_t *filter,
+ uint32_t *subdir_filter,
void (*callback)(struct sys_notify_context *ctx,
void *private_data,
struct notify_event *ev),
@@ -676,8 +677,9 @@ int smb_vfs_call_mknod(struct vfs_handle_struct *handle, const char *path,
char *smb_vfs_call_realpath(struct vfs_handle_struct *handle, const char *path);
NTSTATUS smb_vfs_call_notify_watch(struct vfs_handle_struct *handle,
struct sys_notify_context *ctx,
- struct notify_entry *e,
const char *name,
+ uint32_t *filter,
+ uint32_t *subdir_filter,
void (*callback)(struct sys_notify_context *ctx,
void *private_data,
struct notify_event *ev),
diff --git a/source3/include/vfs_macros.h b/source3/include/vfs_macros.h
index 5e184e3009..68165fe092 100644
--- a/source3/include/vfs_macros.h
+++ b/source3/include/vfs_macros.h
@@ -313,10 +313,10 @@
#define SMB_VFS_NEXT_REALPATH(handle, path) \
smb_vfs_call_realpath((handle)->next, (path))
-#define SMB_VFS_NOTIFY_WATCH(conn, ctx, e, path, callback, private_data, handle_p) \
- smb_vfs_call_notify_watch((conn)->vfs_handles, (ctx), (e), (path), (callback), (private_data), (handle_p))
-#define SMB_VFS_NEXT_NOTIFY_WATCH(conn, ctx, e, path, callback, private_data, handle_p) \
- smb_vfs_call_notify_watch((conn)->next, (ctx), (e), (path), (callback), (private_data), (handle_p))
+#define SMB_VFS_NOTIFY_WATCH(conn, ctx, path, filter, subdir_filter, callback, private_data, handle_p) \
+ smb_vfs_call_notify_watch((conn)->vfs_handles, (ctx), (path), (filter), (subdir_filter), (callback), (private_data), (handle_p))
+#define SMB_VFS_NEXT_NOTIFY_WATCH(conn, ctx, path, filter, subdir_filter, callback, private_data, handle_p) \
+ smb_vfs_call_notify_watch((conn)->next, (ctx), (path), (filter), (subdir_filter), (callback), (private_data), (handle_p))
#define SMB_VFS_CHFLAGS(conn, path, flags) \
smb_vfs_call_chflags((conn)->vfs_handles, (path), (flags))